Ok, let me get this straight ... 'new server' means you are not only migrating but moving, that right? Moving from what OS to what OS? and what are the 'particulars' in each ... PHP version, etc..
The Moodle docs say that the DB user not having permissions to change or create tables could result in the exception thrown.
Also, maybe I didn't explain clearly the process suggested ... IF you are moving, move the current 1.9.14 site to the new server and get it functioning. Images/links might break if one has not edited the SQL for http://oldserver/path to http://newserver/path. One should be able to fix those quickly with the global search and replace tool That, for all practical purposes, is a copy. Upgrade that site from 1.9.14 to the 1.9.17. It's there one might discover issues.
If that goes well, make a complete/full backup of the 1.9.17 (that's then your fallback position).
Make a copy of the webroot and data directory of the 1.9.17 that's working and work on migration with that copy.
Check for known in-compatible blocks/mods in the copy of the upgraded 1.9.17 (those are blocks and mods that haven't made the trip to 2). While one could leave them, think the idea is to have as clean ready to migrate copy as possible.
If there are add-ons that did make the trip, after installing a 2.2 via git or other method, get those compat add-ons for 2.2 and manually add them - place the zips in the appropriate directory, unzip, then change permissions. One is just preparing the files/directories at this point and one has NOT really attempted the migration.
The biggest change will be to the data directory. Gone are the course ID folders. Making a hyperjump like this one will be stuck with "legacy". So, to lessen the affects of that, I create a repository directory in what is at present a copy of the 1.9.7 data directory and in the repository directory I copy all the course ID folders into the manually created repository directory.
Print a report that shows the course titles etc. and the course ID number (there's an add-on for coursesizes for 1.9.x that I install to be able to do that easily). Why? Cause if the migration is successful, I'll need to create a repo for those courses that point to the copied course ID number. (this is the only way I've found to lessen "legacy')
There are some things one does NOT need and just adds to the processing and setup of the new filing system. The 1.9.x backups. I manually (via command line using global commands) go into each course ID folder, backupdata, and remove the 1.9.x backup zips. In those 'prepared' repository/[courseIDnumber]/ directories as well.
Clean up users in the copy of the 1.9.17. Running the cron job via command line several times in the 1.9.17 will do some of that for you.
Once you've got the copy of the 1.9.17 cleaned up and prepared ...
then, fingers crossed, migrate the site to 2.2 - drop the 1.9.17 copy config.php file into the www root of the 2.2 site (set/check permissions), edit the config.php to point to the 'prepared' data directory etc. and hit the site with browser.
If all goes well, one might have a functioning 2.2 ... still might need some tweaks, however. :\
'spirit of sharing', Ken