Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ## Preparations:
- Generate password to be used
- ## Process
- 1. Update puppet script in e.g database_qa.pp, database_test.pp etc
- --> Ensure -> "absent" / "purged"
- --> Create a new database, postgres
- --> Use A or B of the postgres database servers? A?
- 2. Change the configuration files (Must be done in steps). No changes for the production configuration!!
- 2a. DO NOT DEPLOY BEFORE READY!
- 3. Change the datatypes in the "changelog files" - liquibase
- ## Moving the data, yo:
- 1. Delete tables in posgres?
- 2. Shut down service
- 3. run pgloader?
- -- Connecting to one database and copy the data from one to another (between types as well - e.g mysql => postgres)
- 4. Have to alter the tables to be schema public, not the actual database schematics
- 5. delete some triggers? wth
- 6. Add the two-hours difference for any datetime stuff
- 7. Add some triggers? wth
- 8. Deploy to prod
- 9. Check π
- 10. next build: `ALTER TABLE databasechangelog RENAME COLUMN comments TO "COMMENTS"`
- ## Problems/Gotchas:
- - Uppercase / Lowercase problems in Postgres
- - Be aware of the timezone of the posgres database compared to the MySql database
- - Can be detected by checking the created timestamps
- - Can be fixed by changing from new Date() => ZoneDateTime
- - AUTO_INCREMENT => CREATE SEQUENCE (or equialent of the auto_increment option)
- - "now" value => mysql :: postgres
- - Dateformats requires extra treating. date_format() => to_char('', '<dateformat>')
- - Add a flag for the dataSource communitions?
- - Stuck on darn changelog syncronizations in regards to Liquibase?
- - `b liquibase-migrate -p changelogSync `
Add Comment
Please, Sign In to add comment