MySQLがダメならPostgreSQLしかないのか
巷ではOracleがMySQLをオープンソースじゃなくする?*1みたいな噂が駆け巡ってますが、なにも本家MySQLじゃなくたって、MySQLからフォークしたRDBMSがいくつかあるんですよ。
ブコメの反応とかで疑問に思っていたのは、何故すぐに「PostgreSQLに移行しないと!」っていう発想に陥るのか。
例えば「INSERT INTO ... ON DUPLICATE KEY UPDATE ...」などの構文はMySQL系のRDBMSでしか使えなかったはずですし、その他の動作*2にもかなりの違いがあるので、その知識を捨ててでもPostgreSQLに移行する価値はあるか?と言われると正直微妙な気がします。。。
じゃあMySQLからフォークしたのを使えばいいじゃない!
MySQLからフォークしたRDBMSは大きなところで3つ挙げられます。
名前は前からなんとなく知ってはいたんですが、必要に迫られることも無かったので特に調べていませんでした。
これを機会にちょっと調べてみたところ、三者にはそれぞれちょっとずつ違う特徴があるらしいです。
以下、個人的に調べた簡単な特徴です(あんまり当てにしないでください)。
上の3つのうち、Perconaだけ少し使って見ましたが、本家MySQLで使っていた設定を全く弄ることなく使えましたし、動作的にもほぼ変わり無いような感じでした。
MariaDBも(情報が確かなら)ほとんど弄ることなく移行できると思われます。
この2つには「Handlersocket」プラグインが最初から入ってるのが何気に嬉しいですね。
互換性を優先するならPercona、互換性を少し犠牲にしてでもパフォーマンスを取りたい場合はMariaDBを選ぶといいんじゃないでしょうか。
Drizzleに関してはかなり特定のターゲットに的を絞って作られているようなので、色々と実験するときには楽しいかもしれません。
参考
ぶっちゃけ、この資料に目を通しておけば上のクソみたいなまとめなんて読まなくても大丈夫なんですよね。
MySQL を超える