wiki:UserGuidelines/Admin/DataMigration/Haiti

Version 3 (modified by Fran Boon, 12 years ago) ( diff )

--

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 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.

Note: See TracWiki for help on using the wiki.