Pgloader – migrate your data from any SQL database into PostgreSQL
github.com
github.com
Some gotchas:
- MySQL to Postgres needs some massaging for int-types. Pgloader will convert MySQL bigint to type "numeric" by default - which is a bit of overkill.
- For issues like the above, they have a handy syntax for the pgloader template files which lets you do datatype casts on the fly. [1]
1 - https://pgloader.readthedocs.io/en/latest/ref/mysql.html#mys...
Unfortunately, I never go it to work. Tried three different distros (Ubuntu / Debian / Amazon Linux). Sometimes installation would fail, other times it would crash on first run - even when following instructions to the letter.
When I finally got it to run, it could not connect to SQL Server, and no one on Github could help with my particular error message.
Ended up writing the migration code myself, which took only a few hours. The lesson: for a very simple migration, pgloader was actually overkill and a self-made solution did the job quicker.
It’s not the only reason but yes, Postgres has recently made significant advances in parallelism and indexing.
It may be undeserved now, but MySQL had/has a reputation for a lot of sloppy work for good enough features or for performance. Mysql dropped MyISAM for InnoDB in an effort to undo some of that damage so it's hard for me to say they're not committed to quality now.
But reputations take time to rebuild.
Over the past decade we've seen a lot of different data storage options presented that have exchanged critical data integrity features for speed, architecture, "document storage", or some other fad factor of the day.
I've been using Postgresql in a production environment since 2004, having converted from MySQL and never looked back. I'm not bagging on the other technologies, they're great for certain tasks, its just that Postgresql is great data storage and query engine and I think you'll grow to love it. I recommend the #postgresql community on Freenode as they are helpful and generous with their time.
Someone on HN once said "Postgres is the answer until proven otherwise" and that's a pretty good sentiment.
Common Lisp 96.7%
Makefile 1.9%
Other 1.4%(FWIW, it was called "Mastering PostgreSQL" when I bought it, but as far as I can tell, the site I linked is just an updated version).