PostgreSQL相对MySQL有啥区别?

一、数据类型

PSQL多支持了一些数据类型,比如money(货币类型)、jsonp、几何类型、数组类型、网络地址类型…

二、表

  • 约束:多了检查约束
  • 索引:支持新的倒排索引、GIN索引等
  • 支持物化视图

三、事务

PostgreSQL是ACID兼容的数据库,它提供了高级的事务隔离级别,这意味着它支持所有上述ACID特性。而MySQL则相对较弱,仅在特定的存储引擎(如InnoDB)中支持ACID。InnoDB是MySQL的默认存储引擎,并且在其上提供了不同的事务隔离级别,包括读未提交、读已提交、可重复读和串行化。然而,MySQL的其他存储引擎(如MyISAM)并不支持事务或ACID特性。
事务隔离级别:PGSQL在老版本中,只有两个隔离级别,读已提交和串行化,默认是读已提交。

四、总结

PostgreSQL相对MySQL支持的点:

  • PostgreSQL完全开源。MySQL虽然开源,但不够彻底。因为受到GPL协议,必须开源,不适合进行二次开发。
  • PostgreSQL的数据类型很丰富。MySQL的数据类型不够丰富。
  • PostgreSQL是有序列的概念的。MySQL不支持序列概念。
  • PostgreSQL默认支持ACID特性。而MySQL需要特定存储引擎来支持这些特性。
  • PostgreSQL的插件特别丰富。MySQL网上没有比较好用的插件。
  • PostgreSQL支持主从复制的同步操作,可以实现数据的0丢失。MySQL的主从复制同步问题难以解决,没有一个官方策略。
  • PostgreSQL的MVCC实现和MySQL不大一样。PostgreSQL一行数据会存储多个版本,最多可以存储40亿个事务版本。
  • 8
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员Forlan

你的鼓励将是我创作的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值