== Data Migration == We want to be able to migrate data from Prod to Dev so that Testers / Documenters have real data to play with. Also want to be able to migrate from the current sqlite backend to [wiki:InstallationGuidelinesMySQL MySQL] === CSV === Beware DB locks! * Don't keep Web2Py shell open longer than necessary {{{ python web2py.py -S prod -M db.export_to_csv_file(open('db.csv','wb')) Ctrl+D }}} Remove reference Tables from CSV file (don't want to import duplicates!) {{{ python web2py.py -S dev -M db.import_from_csv_file(open('db.csv','rb')) db.commit() Ctrl+D }}} === Web Services === Better to avoid locks & do without SSH login * S3XRC * Currently needs to be done resource by resource (JOINed tables can be done together as Components of main resource) * need to do referenced tables before the tables which refer to them * migrate the locations first (using the xml interface), you can later migrate the orgs and offices together (through Component JOIN) * Ideally we want to develop a way of having all tables loaded together into RAM, refs fixed-up & then imported to db together === Synchronisation === Best longer term as we want to be able to have this functionality exposed to UI. * BluePrintSynchronisation - which is to be migrated to standard S3XRC Web Services anyway