其他的 postgresql、mongodb 暂时都不算了,因为不是 dropin 替代
#6 楼 @ShiningRay 噢,这么个 dropin 啊 如果不考虑兼容,比如是新项目,postgresql 是个好选择. 如果是担心 oracle 而迁移,那倒完全不必,oracle 只会把 mysql 弄得更好,就算改 license 不开源也没太大关系,反正你不去改 mysql 代码.oracle 不开源那么贵还不是那么多人买。产品好才是王道。
MariaDB 和 Percona 是官方 mysql 的 patch 版本,做了很多代码改进和提升,建议生产环境中使用 percona 有些常用的工具集很给力的 btw oracle 收购 sun 之后,MySQL 创始人去了 MariaDB
其实 percona 和 mariadb 都是对于 innodb 的改进,mariadb 里边有带了 percona 版本的 xtradb,相对来说 percona 对于 innodb 方面的改进提升的性能比较明显,high performance mysql 这本书就是 percona 团队写的,mariadb 的优势主要是原来的 mysql 之父创立的,相对来说对于 mysql 上层的优化比较多点,底层的存储引擎还是 percona 的部分。。。当然如果对于性能还有更高要求的话,可以考虑用 tokudb,tokudb 的引擎采用的是分形树结果,效率更牛逼,可惜是收费的。。。
对于 Percona 来说,如果遇到问题,你可以买他们的咨询服务,会有专门的人员帮你解决问题的。这点在 production 环境中非常有用。不知道 mariadb 在这方面的情况怎么样。
一直在用 percona,细节和生态环境 (比如 toolkit 和 xtrabackup 这些) 搞得不错
mysql 早年一直为了速度不支持事务、视图、子查询之类的,所以 mariadb 一直不敢碰,刚去扫了下,居然看到 api 层有接口支持异步了,看来有机会要试试了
MongoDB 用于生产环境不知道可靠不,我知道 ruby-china 就用这东西,好像还挺不错的。现在我把系统从 MySQL 转到 PostgreSQL 了,小项目还是 SQLite3。 MongoDB 好像要 server 的吧,小项目还是用 SQLite 来得简洁一些…… 以上是个人看法
Percona 的可测量性真是没得说,稳定性也非常不错 xtraDB 引擎改进还是非常大的,percona toolkit 这个不能算是 percona 的一部分吧,它可以单独安装,以及对应其它版本的 mysql 服务。