unt
V2EX  ›  数据库

过来人说说, postgresql 和 mysql 究竟怎么选

  •  1
     
  •   unt · Feb 6, 2025 · 15398 views
    This topic created in 637 days ago, the information mentioned may be changed or developed.
    从客户要求,系统架构,公司内部技术栈,领导偏好,个人使用体验等多方面聊聊
    111 replies  •  2025-02-09 10:47:45 +08:00
    1  2  
    ❮ ❯
    Seanfuck
    Seanfuck
    Feb 6, 2025❤️2
    1
    没有硬性要求就无脑 mysql ,简单省事。
    whevether
    whevether
    Feb 6, 2025❤️1
    2
    sql 玩的不好的还是 mysql 吧。简单。高手可以玩 pg
    rekulas
    rekulas
    Feb 6, 2025
    3
    看业务,如果未来业务对 json 需求高的可以上 pg ,如果不高就 mysql 又成熟又稳
    以基础框架为例,优先适配、测试用例覆盖更全的也是 mysql ,找库也好找些
    laikicka
    laikicka
    Feb 6, 2025
    4
    必须使用独立自主的 mysql
    defunct9
    defunct9
    Feb 6, 2025
    5
    mysql ,pg 的模式很麻烦的。
    hefish
    hefish
    Feb 6, 2025
    6
    哈哈哈, 我选 sql2000 。咳咳。。。
    8355
    8355
    Feb 6, 2025
    7
    mysql 已经不是以前的 mysql 了,支持 mysql 协议的数据库很多,性能也有很好的,扩展和迁移方案也很多。
    iFerrari860
    iFerrari860
    Feb 6, 2025
    8
    之前业务系统从 mysql 转 pg ,改到冒烟。。想轻松就无脑选 mysql.
    beneo
    beneo
    Feb 6, 2025
    9
    pg ,真的,从 0 到 1000 都可以,云,本地,包括信创过渡都没问题
    qqjt
    qqjt
    Feb 6, 2025
    10
    ……哥们你来收集话术的吗?这类讨论网上多的是啊
    luckyrayyy
    luckyrayyy
    Feb 6, 2025
    11
    绝大多数业务不用选,你抽签就完了。
    chendy
    chendy
    Feb 6, 2025
    12
    政策法规 > 领导喜好 > 使用成本 >> 其他
    gimp
    gimp
    Feb 6, 2025
    13
    没啥理由,我投 PG 一票
    knightdf
    knightdf
    Feb 6, 2025
    14
    pgpgpg
    FrankFang128
    FrankFang128
    Feb 6, 2025
    15
    pg
    mistsobscure
    mistsobscure
    Feb 6, 2025
    16
    @FrankFang128 方老师最近有啥好玩的项目吗
    fffq
    fffq
    Feb 6, 2025
    17
    团队对哪个熟悉选哪个
    encro
    encro
    Feb 6, 2025
    18
    那么必须是扩展有几百个的 pg 啊。

    装一个扩展,就变身了!!!
    shiny
    shiny
    PRO
    Feb 6, 2025
    19
    postgresql ,运维更容易点
    ymmud
    ymmud
    Feb 6, 2025
    20
    pg,如果哪天要转国产化,会少一些痛苦
    0x1001
    0x1001
    Feb 6, 2025
    21
    @ymmud 非常准确,信创数据库都是用的 pg 改的
    guanhui07
    guanhui07
    Feb 6, 2025
    22
    mysql
    wangtian2020
    wangtian2020
    Feb 6, 2025
    23
    mysql 的时序支持度不如 pgsql ,所以 pgsql 完爆 mysql
    FrankFang128
    FrankFang128
    Feb 6, 2025
    24
    @mistsobscure ai + 浏览器插件项目较多
    dbskcnc
    dbskcnc
    Feb 6, 2025
    25
    sql server 2000 转 pg 8 后从没用过其它数据库,pg 实在太省心了
    hingle
    hingle
    Feb 6, 2025
    26
    一般问这种问题的,大多数都是两者都不熟。

    建议选 mysql ,出问题搜搜问问都好解决,等熟悉了想换 pg 也不迟。
    defunct9
    defunct9
    Feb 6, 2025
    27
    https://bajie.dev/posts/20240205-postgres_user_manager/ pg 的权限管理,比 MySQL 简单? crazy
    murmur
    murmur
    Feb 6, 2025
    28
    秒选 postgres ,信创的东西都是 postgres 翻版
    AlexBob
    AlexBob
    Feb 6, 2025
    29
    postgresql
    AlexBob
    AlexBob
    Feb 6, 2025
    30
    PG 原生支持 全文搜索, 数据统计物化视图洗数据, AI 支持空间数据'向量数据,中文分词,免费,大量的开源扩展.
    Rickkkkkkk
    Rickkkkkkk
    Feb 6, 2025
    31
    你这个提问方式适合问 ai
    Leviathann
    Leviathann
    Feb 6, 2025
    32
    用 pg 的大部分项目可以只用 pg
    用 mysql 还得另外加一堆东西
    AmaQuinton
    AmaQuinton
    Feb 6, 2025
    33
    选 pg
    Geon97
    Geon97
    Feb 6, 2025
    34
    工作还是 MySQL 省心,虽然还是 pg 好,但我工作的话还是选 mysql ,自己用就选 pg
    AdamMing
    AdamMing
    Feb 6, 2025
    35
    以后可能因为信创转库的话,推荐用 pg 。
    zoharSoul
    zoharSoul
    Feb 6, 2025
    36
    mysql
    postgre 那个设置自动更新 update_time 非要设个触发器, 简直服了
    iminto
    iminto
    Feb 6, 2025 via Android
    37
    菜就 mysql
    水平高就 pg
    momo2789
    momo2789
    Feb 6, 2025❤️3
    38
    当然无脑 postgresql ,mysql 可以丢进历史的垃圾桶了。
    mmmhhhddd
    mmmhhhddd
    Feb 6, 2025
    39
    如果没啥人用的简单的数据库就 mysql,如果奔着要发展起来就 postgresql ,本人项目 pg 集群 16c32g * 50 台
    bjfane
    bjfane
    Feb 6, 2025
    40
    @murmur 也不全是,oceanbase 不是吧,虽然是分布式, 但是符合信创,且兼容 mysql 的程序 :)
    seansong
    seansong
    Feb 6, 2025
    41
    熟悉哪个用哪个,客户要求哪个用哪个,领导要求哪个用哪个
    wencan
    wencan
    Feb 6, 2025
    42
    之前都是 mysql ,现在 pg ,一样的,sql 稍有不同而已
    7uSK0CV63kJdhp0M
    7uSK0CV63kJdhp0M
    Feb 6, 2025
    43
    @mmmhhhddd
    你的什么大数据项目 产生多少钱了?
    huage
    huage
    Feb 6, 2025
    44
    能问这个问题的,还用选吗?
    donaldturinglee
    donaldturinglee
    Feb 6, 2025
    45
    All in PostgreSQL!
    yungo8
    yungo8
    Feb 6, 2025 via Android
    46
    投 pg 一票
    ponyfk
    ponyfk
    Feb 6, 2025
    47
    我用的 pg ,如果要让我重新选的话,我肯定会用 mysql 。因为 pg 占用内存太高了,买机器都要多花点钱。
    Soo0
    Soo0
    Feb 6, 2025 via iPhone
    48
    谁出钱谁说了算,业主不说,熟悉什么用什么
    phithon
    phithon
    Feb 7, 2025
    49
    个人使用就无脑 pg
    iwdmb
    iwdmb
    Feb 7, 2025
    50
    Postgres is eating the database world
    no13bus
    no13bus
    Feb 7, 2025
    51
    orm 的话不在乎数据库是啥吧。还有没有说具体的场景,没法判断。
    scienhub
    scienhub
    Feb 7, 2025
    52
    这里有个类似的讨论 https://www.reddit.com/r/node/comments/rv6u8u/why_do_you_choose_mysql_over_postgres/

    Top 2 评论:

    1. The big advantage MySQL had, which is rapidly fading, is that it was easily available on cPanel and Plesk hosts, which postgres was not. There was a time that that was 95% of non-expensive hosting.

    Back in the era when PHP was everything, that was a big deal. Now, not so much.

    If you have to support self-install people on cheap hosting, it can still matter, but that is a vanishing goal these days


    2. I haven't found any benefits in MySQL, and I wish I could switch to Postgres.
    7uSK0CV63kJdhp0M
    7uSK0CV63kJdhp0M
    Feb 7, 2025 via Android
    53
    没人说 pg 的 sql 语句更严格吗 需要把 groupby 后面的字段都出现在 select 子句里
    mysql 我一直以来都把 sql_mode 设为空
    mistsobscure
    mistsobscure
    Feb 7, 2025
    54
    @FrankFang128 我昨天才想开始做一个浏览器插件哈哈,就不在这个楼里 ot 了,希望方老师之后再出点好玩的文章或者视频~
    AlexHsu
    AlexHsu
    Feb 7, 2025
    55
    大多数系统都是拿 pg 当 mysql 用吧 没啥区别
    flowerains
    flowerains
    Feb 7, 2025
    56
    mysql8.0 以上的没有那么不堪,怕就怕业务系统强制要用 5.7 的,这个可太常见了(某些草台班子框架代码好几百年不更新了,mysql 就只支持 5.7 )
    acedbs
    acedbs
    Feb 7, 2025
    57
    pg
    VampireDemon
    VampireDemon
    Feb 7, 2025
    58
    无脑 pg 啊,后期也好扩展
    cooltechbs
    cooltechbs
    Feb 7, 2025
    59
    我在国内的时候如果自建几乎都是 MySQL ,来了硅谷发现他们都用 Postgres (以上均不分大厂小厂),我也不是很理解……
    ufan0
    ufan0
    Feb 7, 2025
    60
    冲 RLS 和优秀的边缘函数选的 PG
    afeiche
    afeiche
    Feb 7, 2025
    61
    听 dba 的
    debuggerx
    debuggerx
    Feb 7, 2025
    62
    除非是超大型项目,或者开发素质极差,可能还需要对比一下两者哪个更适合团队,否则无脑 PG 没毛病。对一般规模的项目,同样负载 PG 资源消耗小得多,同配置下 PG 性能强得多,开发时 PG 灵活得多,除了历史原因找不到新项目还用 MySQL 的理由。
    Huelse
    Huelse
    Feb 7, 2025
    63
    postgresql 性能和扩展各方面都更优秀,嫌麻烦怕是 mysql 舒适圈呆惯了。
    mPatrickStar
    mPatrickStar
    Feb 7, 2025
    64
    PostgreSQL !
    daimaosix
    daimaosix
    Feb 7, 2025
    65
    我宣布,本帖热门 DB 是 PostgreSQL
    Jinnyu
    Jinnyu
    Feb 7, 2025❤️1
    66
    之前在 12306
    互联网层用的是 MySQL
    客票底层用的是 PG
    qq135449773
    qq135449773
    Feb 7, 2025
    67
    这个问题大概率还是取决于与你共事的人会用什么。

    某些国内底层 Java 仔 MySQL 能用懂就已经很不错了。
    hd7771
    hd7771
    Feb 7, 2025
    68
    你业务 tps 不高,哪个熟悉用哪个。如果业务可以吃满机器,MySQL 的机器利用率一般会高一些。
    duanxianze
    duanxianze
    Feb 7, 2025
    69
    建议一步到位直接用国产数据库
    niubiman
    niubiman
    Feb 7, 2025
    70
    无脑 pg, 战未来
    nm1st
    nm1st
    Feb 7, 2025
    71
    pg
    站未来
    elltor
    elltor
    Feb 7, 2025
    72
    从客户和领导偏好来讲,谁维护系统,更倾向用谁的技术栈;从系统架构和技术栈来讲,哪个成熟用哪个,需要考虑的点:可用性(是否支持多 az 、多环境),运维(数据同步&迁移&恢复&安全)、扩展性( sharding 支持、ETL )。

    个人观点:一般公司里 mysql 基础设施比较全,比较推荐 mysql 。从项目大小来看,大项目推荐 mysql ,小项目无所谓。
    kestrelBright
    kestrelBright
    Feb 7, 2025
    73
    自己哪个熟用哪个
    aincvy
    aincvy
    Feb 7, 2025❤️1
    74
    pg 支持 int[], float[] 之类得数组类型,mysql 好像不支持。
    pg 可以用插件做向量数据库, mysql 9 好像支持了
    pg 好像不能调整字段顺序,mysql 可以
    pg 支持 json 类型,可以直接应用 sql 语句查询 json 元素, mysql 8 支持了, 程度和 pg 是否一致不清楚
    pg 修改字段类型得时候 我有点玩不懂 好像允许使用 cast 转换原有数据, mysql 感觉 比较简单一些, 比如 int -> float
    dzdh
    dzdh
    Feb 7, 2025
    75
    pg 不能调整字段顺序真的好难受。。。
    dzdh
    dzdh
    Feb 7, 2025
    76
    加一层字段映射好难吗。我不管底层咋存。我只想我通过工具看的时候是那个顺序。。。
    securityCoding
    securityCoding
    Feb 7, 2025
    77
    @0x1001 能说说为什么国产信创大多用 pg 吗?
    Huelse
    Huelse
    Feb 7, 2025
    78
    @dzdh 这个问题很早以前就讨论过,结论是 select 字段自己调整顺序,没必要多存数据
    partner666
    partner666
    Feb 7, 2025
    79
    @securityCoding #77 因为国内有 HighGo 啊
    yoyolichen
    yoyolichen
    Feb 7, 2025
    80
    gis 行业必选 pg
    GBdG6clg2Jy17ua5
    GBdG6clg2Jy17ua5
    Feb 7, 2025❤️1
    81
    作为一个懒惰的程序员,我只会 mysql ,所以我只用 mysql 。(又不是不能用,凭啥让我多学一个数据库。)
    me1onsoda
    me1onsoda
    Feb 7, 2025
    82
    无脑 pg 就完了
    rlds
    rlds
    Feb 7, 2025
    83
    没啥理由,我选 PG
    dwu8555
    dwu8555
    Feb 7, 2025
    84
    pg

    用过 pg+citus 你就懂了,处理大数据分片很方便,也不需要额外引入一个 TiDB 。
    处理 GIS 又有 PostGIS ,各种空间几何运算,很方便。
    june4
    june4
    Feb 7, 2025
    85
    我是全用 mysql ,只是因为之前学的就是这个。
    但已经明显感受到 mysql 的功能有点力不从心,如果重头开始的话,我会选 pg 。
    yinxs2003
    yinxs2003
    Feb 7, 2025
    86
    无脑 mysql ,真出问题,那帮吹 pg 的,又不会来帮你搞
    yplam
    yplam
    Feb 7, 2025 via Android
    87
    选择 pg 因为支持向量运算,做相关推荐之类的功能很方便
    dragondove
    dragondove
    Feb 7, 2025
    88
    @securityCoding pg 的源码写的好,易读易修改
    ala2008
    ala2008
    Feb 7, 2025
    89
    pg 很强大,扩展插件很方便
    ala2008
    ala2008
    Feb 7, 2025
    90
    @mmmhhhddd 集群方案是啥,pgpool ?
    dmanbu
    dmanbu
    Feb 7, 2025
    91
    pg 对运维极不友好
    Jinnrry
    Jinnrry
    Feb 7, 2025
    92
    @cooltechbs 因为国内 mysql 的 DBA 多,好招人
    adoal
    adoal
    Feb 7, 2025
    93
    用小地瓜上的说法:你这样不负责任地起号,你浮木知道吗?
    tracebundy
    tracebundy
    Feb 7, 2025
    94
    必须 MySQL , pg 和 mysql 占有率不是一个量级的
    wdhwg001
    wdhwg001
    Feb 7, 2025
    95
    pg ,说实话 my 会死锁这个设计始终非常弱智,但是 pg 的 vacuum 有时候有写入性能和占用空间的坑,上个透明压缩会好很多。
    Zakl21
    Zakl21
    Feb 7, 2025❤️2
    96
    讲一个事情,500w 级别的表数据,三表联查,pg 毫无压力,mysql cpu,内存打满,响应是六七倍的耗时。。。
    7uSK0CV63kJdhp0M
    7uSK0CV63kJdhp0M
    Feb 7, 2025
    97
    @gimp
    @knightdf
    @FrankFang128
    @shiny
    @encro
    @ymmud
    @0x1001
    @wangtian2020
    @dbskcnc
    @defunct9
    @billbob
    @murmur
    @billbob
    @Leviathann
    @AmaQuinton
    @Geon97
    @AdamMing
    @zoharSoul
    @momo2789
    @mmmhhhddd
    @wencan
    @donaldturinglee
    @ala2008
    @dmanbu

    诸位 真心用过 pg 和 mysql 的说说 mysql 有 memory 引擎 postgresql 最新版有没有?
    defunct9
    defunct9
    Feb 7, 2025
    98
    都用到啥 memory 了,用 redis 吧
    edisonwong
    edisonwong
    Feb 7, 2025
    99
    有足够技术自信 、 有用到 pg 特性而 mysql 没有的、对性能有要求的, 三者符合一个选 pg ,其余情况用 mysql
    18500592934
    18500592934
    Feb 7, 2025
    100
    我们项目中用到了 pg 做归档,好几年了,我翻代码从来没有触碰过这一块,所以稳定性上还是不错的。
    坐等大佬发言,学习下;
    1  2  
    ❮ ❯
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   5163 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 256ms · UTC 06:21 · PVG 14:21 · LAX 22:21 · JFK 01:21
    ♥ Do have faith in what you're doing.