看了 OSCHINA 上的文章《为何在中国 MySQL 远比 PostgreSQL 流行》,做了一点笔记。
MySQL 和 Oracle,SQL Server 一起,长期占据关系型数据库流行榜单 Top 3。当时,近 10 年来,PG 正在以非常快的速度迎头赶上。
这应该是没有争议的。
当时作者经过对比全球的数据和中国的数据,发现 PG 在中国发展远没有国际上好。
MySQL vs PG 的榜单中,中国位列第一,达到了 96:4,排第二的印度是 85:15。
我自己在 Google Trends 上查到的结果:
国家 | 比分 |
---|---|
中国 | 90:10 |
印度 | 80:20 |
英国 | 76:24 |
美国 | 71:29 |
日本 | 64:36 |
法国 | 58:42 |
俄罗斯 | 38:62 |
为什么 PG 在中国发展不行呢,作者给了几个原因:
- MySQL 1998 年就推出了 Windows 版本,PG 则是等到了 2005 年。
- MySQL 新手友好。
- 连接 PG 数据库必须指定数据库,否则就 FATAL Database xxx does not exist
而 MySQL 则是先连上再选择数据库,如果没有选择,查询时就提示 no database selected - 访问控制方面,PG 有一个额外的 pg_hba (host-based authentication) 配置文件
- 层级关系
MySQL:实例 -> 数据库 -> 表
PG:实例(也叫集群)> 数据库 > Schema > 表 - PG 权限系统更加完备,容易碰到权限问题。
- 早期 MySQL 性能要好很多。
- LAMP 技术栈(很大程度也是第一点的原因)。
- 互联网大厂的影响。
- 包含书籍资料和周边工具在内的生态建设。
我觉得其中性能,Windows 支持、LAMP 技术栈这三点很有道理。