pg数据库会干掉mysql吗

pg数据库会干掉mysql吗,第1张

首先mysql和postgres在早期的时候完全是两个极端。mysql更像是个“基本上满足的是关系数据库的语法的大号KV”,对关系型数据库的高级功能支持的不是很友好。

在从技术而言,PG 功能丰富,SQL 支持得很完备,强大的数据类型,严谨的关系模型,很难从关系模型去找出PG

不合理之处,多年的积累,连全文索引词库都非常丰富,据说对于一些简单的搜索,都可以摆脱搜索引擎了,优化器做得很好,在代价选择上PG 实现了基因算法,这一点连Oracle 也没有做到。

也正因如此在早期mysql变成了事实上的互联网企业OLTP的事实标准。不管干啥业务,mysql都不可或缺。在行业里跳槽来跳槽去的程序员普遍对mysql也更熟悉。大量围绕mysql的商业服务都成为了行业主流。新一代分布式数据库,像TiDB为了吸引用户,首先要做的是“兼容mysql的语法”

数据库这种早期用了就基本不能换的东西是有滞后性的,你看到现在MySQL的现状,是5年前MySQL是国内几乎唯一选择的情况。5年前Postgres就已经在欧美初创项目里比较受欢迎了,PostgreSQL在全球也是二线,不独中国。PostgreSQL一直就功能比MySQL完备,唯独缺乏一个引爆点,导致生态长期不如MySQL。

两者之间区别:

Postgres是一个对象关系数据库(ORDBMS),具有表继承和函数重载等功能,可以处理复杂的查询和大型数据库。

而MySQL就是一个纯粹的关系数据库(RDBMS)相对易于建立和管理,快速,可靠且易于理解。

pg替代mysql,技术上没有任何问题。mysql能做到的,pg同样能做到,不说做得更好,至少是各有千秋。也是因为pgsql的确是好,这个查查就知道。当然现在pgsql集群方案也很多,所以我估计早期的时候,pgsql在集群方案上可能不如mysql。而且pgsql的地理信息支持是很好的……。

有一个优势是pg是BSD开源协议,允许在pg的基础上开发商业版和销售。对于商业化非常友好。而mysql是GPL协议,如果某软件使用了GPL协议,那该软件也必须开源。所以一定程度上mysql受到oracle的控制。

服务器优化的选项:MySQL提供了很多选项来调整和优化你的MySQL服务器,通过调整变量,如排序缓冲区大小,读缓冲区大小,最大允许包等。

易于使用和流行:MySQL的流

MySQL✿ SHOW COLUMNS FROM 表名称

举个栗子:

SHOW COLUMNS FROM ldcode

结果输出如图

pg✿ SELECT * FROM INFORMATION_SCHEMA.COLUMNS T WHERE T.TABLE_CATALOG='用户角色名' AND TABLE_NAME='表名称'

举个栗子:

SELECT table_schema,table_name,column_name,udt_name,character_maximum_length,data_type,ordinal_position

FROM information_schema.columns t

WHERE t.table_catalog='actuarial'

AND table_name ='ldcode'

order by ordinal_position

结果输出如图

MySQL、PostgreSQL属于关系型数据库 分布式数据库系统通常使用较小的计算机系统,每台计算机可单独放在一个地方,每台计算机中都可能有DBMS的一份完整拷贝副本,或者部分拷贝副本,并具有自己局部的数据库,位于不同地点的许多计算机通过网络互相连接,共同组成一个完整的、全局的逻辑上集中、物理上分布的大型数据库。比较火的分布式数据库有tidb和 sequoiadb


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/7348194.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-04
下一篇 2023-04-04

发表评论

登录后才能评论

评论列表(0条)

保存