V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
Hyxiao
V2EX  ›  程序员

感觉这两年 PostgreSQL 明显越来越火了

  •  
  •   Hyxiao ·
    HyxiaoGe · 1 天前 · 10428 次点击

    最近在研究各种 LLM 相关项目时发现一个有趣的现象:绝大多数项目都选择了 PostgreSQL 作为默认数据库,比如:

    • Dify (默认 PostgreSQL )
    • n8n (推荐 PostgreSQL )
    • Supabase (基于 PostgreSQL )
    • Vercel (很多模板用 PostgreSQL )

    这让我有点困惑,因为:

    1. 按理说 MySQL 的用户基础更大(个人猜测)
    2. 虽然 PostgreSQL 有 pgvector ,但如果真需要向量功能,为什么不直接用专门的向量数据库?
    3. 对于普通的 CRUD 操作和 JSON 存储,MySQL 完全够用

    而且我在使用 cursor 或者 claude code 进行编码时,他们也是默认推荐使用 postgreSQL 来搭建数据库,感觉应该是社区/生态的影响?

    真心求教哈,不是挑起数据库之争😄

    121 条回复    2025-08-01 02:15:39 +08:00
    1  2  
    kaliawngV2
        1
    kaliawngV2  
       1 天前   ❤️ 1
    公司用 mysql (背这么多八股文,不用感觉很亏),自己项目用 postgresql (爽)
    Erona
        2
    Erona  
       1 天前   ❤️ 8
    pg 全方面碾压 MySQL, 用 MySQL 才奇怪吧
    donaldturinglee
        3
    donaldturinglee  
       23 小时 47 分钟前 via Android   ❤️ 1
    主要是开源,日常 crud 其实用哪个数据库都差不多的
    wtks1
        4
    wtks1  
       23 小时 44 分钟前   ❤️ 1
    可能是规模效应,用的人越多就有越多的资料可供查阅,这反过来又促进了新的项目来用这个
    ZeroClover
        5
    ZeroClover  
       23 小时 43 分钟前   ❤️ 2
    因为专门的向量数据库也不见得能打得过 pg

    而且 MySQL 用户基础更大纯属国内用户的幻觉,pgsql 的用户量早就已经超了 MySQL 了,国内的各种自主可控信创库很多也是基于 pgsql 的
    maix27
        6
    maix27  
       22 小时 8 分钟前   ❤️ 1
    因为国外一直是这样的,你的例子举的很不恰当。换到国内呢?
    Dlad
        7
    Dlad  
       21 小时 38 分钟前   ❤️ 2
    mysql 实在用习惯了,被收购后一直用 mariadb
    用法非常古板,数据库机制一概不用(仅用主键自增,btree 索引),其他逻辑一概放在代码里。
    至高的效率,完全的控制,为弥补天生缺陷发展多年的全面解决方案 —— 感觉是坚守 mysql / mariadb 不多的理由。

    只能说够用吧。
    Dlad
        8
    Dlad  
       21 小时 4 分钟前
    gemin 详细比较了一下 pgsql 和 mariadb —— 即使在不依赖数据库特性的构建原则下,也是较优解——决定把手上项目迁移一下。

    十几年来做过很多次横评,不知在哪个时间点 pgsql 超过了 mysql……
    maix27
        9
    maix27  
       20 小时 58 分钟前   ❤️ 1
    @Dlad 哥们自欺欺人也是一种境界来,两者比较取较优解是吧?就俩学生上课,差一点的学生也是较优生。
    Dlad
        10
    Dlad  
       20 小时 54 分钟前
    @maix27
    理解不了你的文字组合,介绍一下?
    Dlad
        11
    Dlad  
       20 小时 47 分钟前
    @maix27
    理解不了“即时……也是”逻辑?
    无法把 30 个字符整体装入内存?
    没办法按捺表达欲来不及把字读完?

    中专生?
    Dlad
        12
    Dlad  
       20 小时 43 分钟前
    @maix27
    菜就多练,蠢就少说话,不然别人骂你你都还不了口。
    maix27
        13
    maix27  
       20 小时 41 分钟前
    @Dlad
    哟,您个大学生要展示自己的逻辑啦?

    想和 pgsql 比数据库特性是吧?学霸和学渣比较说,我们不比学霸厉害的英语,咱们比我学渣的强项体育,咋?体育被秒成渣拿个较优解也乐呵呢?你多个对象(大于 2 )一起比较拿个较优解才有说服力啊,就俩对象比较,去掉学霸的强项还拿个第二装什么?

    不要给固执死板洗白,不要急着给别人扣帽子。
    hash
        14
    hash  
       20 小时 34 分钟前   ❤️ 1
    最大的问题是国内这种师傅带徒弟的结构下,都只会用 MySQL,甚至觉得 MySQL 那些怪胎特点才是标准
    你让他们换数据库?你知道国内有多少低能儿认为"程序员"就是"Java+MySQL"么?
    xshell
        15
    xshell  
       19 小时 33 分钟前   ❤️ 1
    postgres 火起来也与 MySQL 挤牙膏发版方式有关(历史原因)
    satoru
        16
    satoru  
       19 小时 23 分钟前   ❤️ 1
    只是这两年吗?像 Django 之类的流行框架都默认用 PG 多少年了 ……
    areless
        17
    areless  
       19 小时 12 分钟前 via Android   ❤️ 1
    pg 只是在关系数据库领域碾压 mysql 而已。在时序数据库甚至都不如 MongoDB ,跟更专业的时序数据库完全没法比。在向量领域,qdrant 这种比他强一百倍,人家可以多层向量 gpu 运算任意检索。在图数据库领域或者全文本检索领域,pg 也只是小学生级别的。
    qxmqh
        18
    qxmqh  
       19 小时 6 分钟前   ❤️ 1
    PostgreSQL 在一些物联网平台相关的使用场景里面,占绝大多数。另外国内的 很多“自研”的数据库 都是基于 pg 的某个版本来二次开发的。比如华为的 openGauss ,GaussDB 的产品序列。还有人大金仓 Kingbase ,亚信 倍健 等等。
    neutrino
        19
    neutrino  
       19 小时 3 分钟前 via Android   ❤️ 1
    @ZeroClover 有屁股超过我的数据吗,看了几个数据都是我的占有量比较多
    Geon97
        20
    Geon97  
       19 小时 2 分钟前   ❤️ 1
    早在 22 的时候 pgsql 热度就上来了
    wu67
        21
    wu67  
       18 小时 51 分钟前   ❤️ 1
    可以直接存数组, 就很快乐
    kzfile
        22
    kzfile  
       18 小时 51 分钟前   ❤️ 1
    我工作这么多年,还没用过 mysql ,从来都是 pg
    wangtian2020
        23
    wangtian2020  
       18 小时 50 分钟前   ❤️ 1
    确实 pgsql 更现代化,应用场景更多。数据库又不是编程语言项目选型后难以的改变的
    zhengfan2016
        24
    zhengfan2016  
       18 小时 50 分钟前   ❤️ 1
    换一个视角,用 PostgreSQL 的话你存向量不用考虑同步问题,如果你使用 mysql 加向量数据库等组合方案你得考虑 mysql 和向量数据库的数据同步问题,而且你通过向量去做以图搜图还得查两次数据库, 你用 pgvector 基本一次查询就够了。

    为什么不直接用专门的向量数据库?如果数据库的官方 client 很好用的话,也不会有那么多 orm 了
    wowawesome
        25
    wowawesome  
       18 小时 47 分钟前   ❤️ 1
    我感觉是换个方向卷
    ymmud
        26
    ymmud  
       18 小时 47 分钟前   ❤️ 1
    小型项目基本就只需要 pg 一把梭
    pulutom40
        27
    pulutom40  
       18 小时 46 分钟前 via iPhone   ❤️ 6
    比性能,mysql 提鞋都不配
    比功能,mysql 提鞋都不配

    mysql 是所有你能叫出名字的数据库中,性能最差的,用得多仅限于国内互联网公司,但凡换个定语,都没人用 mysql
    onice
        28
    onice  
       18 小时 39 分钟前   ❤️ 1
    ORM 框架已经屏蔽了数据库操作,感觉 mysql 还是 pgsql 没区别。但我受国内八股文影响,对 mysql 了解要比 pgsql 了解得多得多。
    lancelock
        29
    lancelock  
       18 小时 37 分钟前   ❤️ 1
    你这第三点逻辑就挺奇怪的,mysql 完全够用所以用 mysql?难道 pg 就不够用吗。一般两个产品一个免费一个收费,免费的完全够用所以用免费的倒是符合逻辑,然而 pg 也是免费的啊
    WasteNya
        30
    WasteNya  
       18 小时 37 分钟前 via Android   ❤️ 1
    原来你是 java 后端啊,那没事了
    listen2wind
        31
    listen2wind  
       18 小时 31 分钟前   ❤️ 1
    能完成项目的都是好工具
    tabc2tgacd
        32
    tabc2tgacd  
       18 小时 31 分钟前   ❤️ 1
    公司项目依然是 mysql 。 我自己近几年做的,都用 pgsql 了。其实也都差不多,我选 pg 主要是跟风。倒是没用到什么特别好的优点。
    defunct9
        33
    defunct9  
       18 小时 30 分钟前   ❤️ 4
    postgres 的权限模式 schema ,PUBLIC 非常诡谲,没有 mysql 好用。dump 和 restore 也都坑。
    5261
        34
    5261  
       18 小时 29 分钟前   ❤️ 1
    @pulutom40 mysql 这么不堪嘛? 被你这么一说 我要好好研究下 pg 了
    gitlight
        35
    gitlight  
       18 小时 29 分钟前   ❤️ 1
    一般公司的项目摸不到 pg 和 MySQL 的单表性能上线。我选它主要是因为 PostGIS
    spritecn
        36
    spritecn  
       18 小时 27 分钟前   ❤️ 1
    运维习惯了用 mysql,出了奇奇怪怪的问题知道怎么解
    rocmax
        37
    rocmax  
       18 小时 25 分钟前 via Android   ❤️ 1
    开发日历应用,PostgreSQL range type 刚需,还做了 drizzle 的适配。
    nicaiwss
        38
    nicaiwss  
       18 小时 20 分钟前 via iPhone   ❤️ 1
    看了评测 mysql 全面落后,没有一样拿的出手
    ufan0
        39
    ufan0  
       18 小时 17 分钟前   ❤️ 2
    @pulutom40 "mysql 是所有你能叫出名字的数据库中,性能最差的"

    好奇,有来源可拷吗?说的是社区版还是商用版?
    salmon5
        40
    salmon5  
       18 小时 16 分钟前   ❤️ 1
    DBA 一招鲜( mysql ),吃遍天
    还搞个锤子的 pgsql
    salmon5
        41
    salmon5  
       18 小时 15 分钟前   ❤️ 2
    这和程序员 Java8 一样,可以用到退休
    abolast
        42
    abolast  
       18 小时 13 分钟前   ❤️ 1
    @defunct9 太诡异了,特别是某些后端不想学习然后用 mysql 思维来迁移使用,这种情况下 schema 和 PUBLIC 太诡异了。所以说还是得详细学习后,遵循最佳实践来使用,简直就是万能的数据库了,自己写的小项目用 pg 爽歪歪,可以说是下一代的数据库了,我一个运维如是说
    runzhliu
        43
    runzhliu  
       18 小时 3 分钟前   ❤️ 1
    Harbor 也是 pg ,说要加 mysql ,现在都还没弄完
    irrigate2554
        44
    irrigate2554  
       18 小时 0 分钟前   ❤️ 1
    专业的向量数据库也不一定打得过 PG (独立向量数据库同步业务数据还麻烦),专业的文档数据库也不一定打得过 PG jsonb ,专业的 kv 专业的 mq 都不一定有 PG 好用。PG 真的厉害
    dcsuibian
        45
    dcsuibian  
       17 小时 57 分钟前   ❤️ 1
    如果一个东西真的好用,他必然是解决了某些痛点的
    一开始可能只是开发人员自己在用,接着推广了下,身边的人也开始尝试,发现不错以后再向身边的人推荐。
    开源应用的话,推广的速度就更快。比如有些专业研究数据库的大牛,了解 MySQL 的缺陷,有痛点、有需求,发现新出的东西不错就用了下来。那大牛用了,自然也会有人跟着用。

    总的来说一个东西真的好用的话,就是会慢慢推广开来的
    Huelse
        46
    Huelse  
       17 小时 55 分钟前   ❤️ 1
    很简单,因为 pg 性能更优,设计更前沿,是比较优质的开源数据库项目
    而 mysql 自从被收购后更新几乎处于停滞状态,几个老 bug 数年没修,指不定啥时候就淘汰了
    apkapb
        47
    apkapb  
       17 小时 50 分钟前   ❤️ 1
    我是从什么时候觉得 pg 比 mysql 好的??

    在用 umami 自建统计的时候,使用 mysql 版本,统计不了几天,页面打开就非常慢,换成 pg 没一点问题。。。。
    yh7gdiaYW
        48
    yh7gdiaYW  
       17 小时 38 分钟前   ❤️ 1
    第 2 点,为什么不直接用专门的向量数据库

    最近刚好做了一轮选型,其实功能上都差不多,pgvector 也不是任何主流 rag&workflow&agent 框架的默认向量库。但我最后还是选了 pg ,因为数据库这个领域如果要上生产环境,真的不太敢信赖这些新兴的向量数据库
    Fisherder
        49
    Fisherder  
       17 小时 38 分钟前 via Android   ❤️ 2
    千疮百孔的世界上最流行的数据库 [让编程再次伟大#番外 1] UP 主: 原子能 - https://www.bilibili.com/video/BV1BAABeKEqp


    有些数据库是蠢,有些是坏,它是又蠢又坏 [让编程再次伟大#番外 2] UP 主: 原子能 - https://www.bilibili.com/video/BV1M1Koz6EW1

    可能这些能解答你的问题?
    yh7gdiaYW
        50
    yh7gdiaYW  
       17 小时 37 分钟前   ❤️ 1
    @apkapb 在统计这个领域 pg 也是废物,真复杂点的必须上列存
    phithon
        51
    phithon  
       17 小时 36 分钟前   ❤️ 1
    除了公司生态强制要求以外,想不到有什么场景应该用 mysql 。。。
    NightFlame
        52
    NightFlame  
       17 小时 35 分钟前   ❤️ 1
    mysql 用习惯了,下个项目用 pg 试试
    crocoBaby
        53
    crocoBaby  
       17 小时 32 分钟前   ❤️ 1
    信息蚕房吧,我觉得是 mongodb 越来越火
    ratazzi
        54
    ratazzi  
       17 小时 31 分钟前   ❤️ 1
    PostgreSQL 有两点我很喜欢,也很实用:

    1. 没有那么多糟心的 utf8 选择
    2. varchar 不用限制长度,不会某天因为 bug 或者各种原因发现数据被截断还要去修正数据
    lawrencexu
        55
    lawrencexu  
       17 小时 27 分钟前   ❤️ 1
    也有比较独特的,比如 uber 这种在 mysql 和 pg 之间反复横跳的。其实还是看工程师的技术支持程度,至少在国内熟悉 mysql 的 dba 还是更好找一些,毕竟一众互联网公司都用 mysql ,各种问题解决方案的坑都填的差不多了。
    defunct9
        56
    defunct9  
       17 小时 26 分钟前   ❤️ 2
    mongodb 也是拉跨,从 5.5 --> 迁移到 8.0 ,用了一个星期,都快吐血了。MD ,3 节点 4cpu 8G ,迁移的时候居然要开到 8cpu 32GB 才能 restore 上去。疯了吧。还有社区的 mongo ,AWS 上面,动不动擦的主节点进行变换,那个狗屁自创的 SRV 链接字符串又是哪个家伙想出来的。
    bronyakaka
        57
    bronyakaka  
       17 小时 25 分钟前   ❤️ 1
    不是近两年,国外开源软件很早首选的都是 pg ,功能丰富完全免费 没有法律风险,国内几个国产数据库也是 pg 套壳
    reallycool
        58
    reallycool  
       17 小时 23 分钟前   ❤️ 1
    BaaS 流行起来了,PostgreSQL 比 mysql 适配度高多了
    pulutom40
        59
    pulutom40  
       17 小时 22 分钟前 via iPhone   ❤️ 2
    @ufan0 mysql 仅有索引组织表,因此 id 查询场景略有优势,而这刚好满足互联网公司的查多写少场景。

    但离开这个领域,mysql 啥都不是,数据量上来后,mysql 分区表拉稀导致只能手动分表,结果就是数据库变成了只能 id 查询。除此之外,如果 mysql 执行稍微复杂点的逻辑,比如联合查询,计算,外键,存储过程,视图等,几乎等于不可用。
    ZeroDu
        60
    ZeroDu  
       17 小时 16 分钟前   ❤️ 1
    msyql 有那么说的不堪吗。根据 chatgpt 的对比,简单查询下 mysql 比 pg 性能更好,写入性能也略逊一筹,内存占用 mysql 也是少一点,在轻量级方面 mysql 更适合
    ZeroDu
        61
    ZeroDu  
       17 小时 14 分钟前
    @ZeroDu #56 pg 特点应该是功能强,现代化
    Tengdw
        62
    Tengdw  
       17 小时 11 分钟前 via iPhone   ❤️ 2
    说一个冷知识,我也是在 b 站看了 mysql 头号黑粉的视频才知道的,mysql8.0 之前的版本都是不支持 DDL 事物的
    hello333
        63
    hello333  
       17 小时 11 分钟前
    @maix27 我说怎么看不到你艾特的这人评论,原来是早被我拉黑了。🤣
    zhaoahui
        64
    zhaoahui  
       17 小时 10 分钟前   ❤️ 1
    PsstgreSQL 已经是第一啦 Mysql 再输要输 Redis 了
    moen
        65
    moen  
       17 小时 1 分钟前   ❤️ 1
    > 为什么不直接用专门的向量数据库?

    这个想法忽略了数据库可靠性的要求,专门的数据库就必须从零造这方面的轮子,不如 pg 已经有多年来的实践验证
    test00001
        66
    test00001  
       17 小时 0 分钟前   ❤️ 1
    没事,再🔥也烧不到 java 佬们
    salmon5
        67
    salmon5  
       16 小时 53 分钟前   ❤️ 1
    kong https://github.com/Kong/kong 默认也是 pgsql

    另外 mysql 有这么不堪吗?
    seakingii
        68
    seakingii  
       16 小时 26 分钟前   ❤️ 1
    我喜欢 PG 的原因

    1 一把梭,啥功能都有.比如做一个知识库,有普通的数据库功能,又有向量功能.不需要在当前没有统治级的向量数据库里找一个,学习一个新的软件,找新的客户端库,还可以让 PG 达到 JSON,GIS,REDIS,MQ 这些功能
    2 可以用扩展的语言写存储过程
    3 数据库功能完整,高效
    4 免费,没有什么乱糟糟的法律问题
    lance07
        69
    lance07  
       16 小时 1 分钟前   ❤️ 1
    @maix27 #9 这人说的不是 mysql 没有各种特性么...然后第二个评论是, 就算不用 pg 的特性, pg 也比 my 强...然后他说 my 只是够用
    iv8d
        70
    iv8d  
       15 小时 28 分钟前 via Android   ❤️ 1
    这是没办法的事,毕竟只有这个开源。
    bigtear
        71
    bigtear  
       15 小时 21 分钟前 via Android   ❤️ 1
    主要原因是开源可控,开源项目用的也多
    其次楼上都没提到的点是相比较之下占用会低一些

    个人项目都用 pg / sqlite 了
    cooltechbs
        72
    cooltechbs  
       15 小时 10 分钟前   ❤️ 2
    想知道《高性能 MySQL 》如雷贯耳,却没有类似的《高性能 Postgres 》,是因为 Postgres 不需要那么多道道就能实现高性能吗
    Hyxiao
        73
    Hyxiao  
    OP
       15 小时 9 分钟前
    append 好像没生效,在这里回复下。

    非常感谢各位大佬的耐心解答,学到了很多!🙏

    先说明一下,我发这个帖子真的不是想引战或者踩一捧一,纯粹是最近的一些观察引发的好奇,再加上最近投简历的时候,招聘 JD 里 PostgreSQL 的出现频率也在上升

    正如#1 ,#28 楼大佬说的,受八股文的影响再加上呆过的公司基本上都是使用 MySQL😂,我之前确实对 PostgreSQL 的了解不够深入。

    另外,最近在个人项目中也开始尝试 PostgreSQL ,发现:
    - 在代码层面,通过 ORM 使用起来差别确实不大
    - PostgreSQL 的一些特性如 JSONB 确实很香
    - 社区的文档和支持也很友好

    再次感谢大家的分享,希望大家理性讨论哈,毕竟技术没有绝对的好坏,适合场景才是最重要的!
    leisifung
        74
    leisifung  
       15 小时 8 分钟前   ❤️ 1
    I use Mongodb.
    jhdxr
        75
    jhdxr  
       15 小时 4 分钟前   ❤️ 2
    pg 虽然在国外一直比较火,但是没想到现在国内 pg 的教徒也这么多了。

    丢两个暴论:
    1. pg 也就在谁上谁都行的性能场景下能用(且论功能和 MySQL 比的确更丰富),就它的 MVVC 的实现方式居然有人能吹性能真是笑掉大牙
    2. pq 的信徒觉得 pg 的 json 实现吊打 nosql ,现在居然还来了向量的实现吊打向量数据库。实际上吧,pg 也就是达到了有和没有的区别。
    cwcc
        76
    cwcc  
       14 小时 58 分钟前   ❤️ 2
    我来唱个反调:pgsql 唯一让我讨厌的一个点就是开发团队似乎对静态编译有莫名的偏见,从 19 年开始就明确不支持静态编译 libpq ,这导致很多情况下用 C 写的嵌入式 pg client 都得考虑环境问题,其他主流的开源库几乎都支持这一行为。
    skiy
        77
    skiy  
       14 小时 55 分钟前 via iPhone   ❤️ 2
    前两天刚折腾了数据库恢复的功能…恢复的数据表带有权限为 postgres…折腾好久。我以为把数据库的所有权划给用户就行了…这点跟 linux 有点像…
    QlanQ
        78
    QlanQ  
       14 小时 16 分钟前
    有 orm 的话 ,后端是什么数据库 应该差别不大吧
    现在 关系数据库 越来越 只是 存储功能
    向量数据库、统计、查询,如果是小项目,确实是 一个数据库能搞定最好
    如果大一点的正式项目,应该都是区分项目和数据库的吧,统计和查询应该都不是一种库吧
    dlmy
        79
    dlmy  
       13 小时 50 分钟前
    @ZeroClover 如果向量数据是千万级别,用 pgvector 就够了,既方便自己通过 SQL 来过滤元数据,又有 Self Query 的优势,如果数据量达到亿的级别,就用专门的向量数据库 Milvus
    defunct9
        80
    defunct9  
       13 小时 35 分钟前
    @skiy 试试 wal ,更酸爽。
    yh7gdiaYW
        81
    yh7gdiaYW  
       13 小时 28 分钟前
    @defunct9 恢复前设置下 swap 就好了,恢复后再关掉,mogodb 大量数据导入时的内存占用确实离谱
    totoro52
        82
    totoro52  
       13 小时 28 分钟前
    pg 的权限设计奇奇怪怪的
    zzboat0422
        83
    zzboat0422  
       13 小时 26 分钟前
    你们还真从技术角度比较啊,实际更多是非技术原因造成的。

    因为去 o ,用 mysql 相当于没去 o ,所以只能二选一用 pg 了。
    cocong
        84
    cocong  
       13 小时 23 分钟前
    工具而已,够用就行,又不是不能换
    back0893
        85
    back0893  
       13 小时 23 分钟前
    不到啊 反正 mysql 用到死,curd 也没啥差别
    hackyo
        86
    hackyo  
       12 小时 59 分钟前
    我们公司之前产品都是 mysql ,但是新产品 maxkb 用了 pgsql ,说实话就是图 pgvector 的方便,而且很多向量数据库做的还不如 pgvector
    8355
        87
    8355  
       12 小时 41 分钟前   ❤️ 1
    mysql 需要了解最佳实践,数据库所支持的很多功能实际都不能用,8.0 前确实更加糟糕,mysql 的占有率主要是因为 php 才成为主流。

    补充一点防止杠精,很多数据库支持 mysql 协议并不代表是基于 mysql 开发,也绝对不是 mysql 。
    hafuhafu
        88
    hafuhafu  
       12 小时 41 分钟前
    前几年搞去 O 都是用 PG 来代替的
    skiy
        89
    skiy  
       12 小时 37 分钟前
    另外说一个,wordpress 官方还不支持 postgres...
    wangritian
        90
    wangritian  
       12 小时 35 分钟前
    技术选型并非只看技术,用 mysql 的碰到问题自然就转 pg 了
    adoal
        91
    adoal  
       12 小时 35 分钟前
    @cooltechbs 《 PostgreSQL 9X 之巅》
    JiafuYuan
        92
    JiafuYuan  
       12 小时 33 分钟前
    pgsql 不优化单表 2000w 条数据没压力,mysql200w 不优化的话已经卡的不能用了
    yh7gdiaYW
        93
    yh7gdiaYW  
       12 小时 13 分钟前
    @JiafuYuan 我猜你是拿老版本旧硬件上的 mysql 和现在用的 pg 对比了,往上很多 mysql 单表不能超过 xx 万条的都是这种。这两个数据库都升到比较新的版本+新硬件,单机性能上并没有很大差距。pg 主要是特性多
    Configuration
        94
    Configuration  
       12 小时 7 分钟前
    @yh7gdiaYW #93 复杂 SQL 查询,性能差别巨大
    newtype0092
        95
    newtype0092  
       12 小时 4 分钟前
    我搜到了这篇对比文章,从 23 年开始每年更新一次,这个是今年的。
    总体结论就是 postgre 稍强,但强有强的代价,还是得按需选择。

    https://www.bytebase.com/blog/postgres-vs-mysql/
    yh7gdiaYW
        96
    yh7gdiaYW  
       11 小时 58 分钟前   ❤️ 1
    刚好两个库我这边都在用,分别是 pg 16 和 mysql 8.0 ,服务器硬件比较新是 zen3 的 AMD EPYC + pcie 3.0 速度级别的 SSD 。
    单表千万条数据的场景下,这俩库的 CRUD 和简单统计查询(<10 万条级别)的性能是差不多的,有时候 mysql 甚至会更快一点。mysql 比较弱势的地方在于更大规模的统计查询,比如捞几百万条出来求平均数。但这个场景 pg 的性能也不够,ETL 到 Doris 、StarRocks 这类数据库处理更合适。
    yh7gdiaYW
        97
    yh7gdiaYW  
       11 小时 55 分钟前
    @Configuration mysql 8.0 后好了不少,主要是 in 很多值的性能提升明显,以及终于支持了 cte 。pg 的单机性能上限肯定还是要更高一点的,但数据规模一上来单机部署都不够用,pg 的甜点优势区间并不大(刚好命中的话那确实舒服)
    w568w
        98
    w568w  
       11 小时 55 分钟前
    @yh7gdiaYW #93 > 往上很多 mysql 单表不能超过 xx 万条的都是这种

    主要是上面用 MySQL 的,基本都是因为技术升级受阻(不愿学/不敢换/不能升级),这种大概率用的是远古 MySQL ,什么 MySQL 5 比比皆是。中文互联网上的 MySQL 教程基本也都是围绕这些远古版本的

    ===

    我不用 MySQL 的理由倒是和你说的一样,这玩意儿的 JSON 支持到现在还是半残废
    8355
        99
    8355  
       11 小时 52 分钟前
    @JiafuYuan 聚合类 sql 差距尤其大,我接触到的业务已经没有人用纯 mysql 了,基本都是支持 mysql 协议的其他数据库。
    w568w
        100
    w568w  
       11 小时 52 分钟前
    @w568w 没打完就发出去了。补:

    以及,对 extension 的支持(比如向量储存),pgsql 的支持会好很多。

    此外,之前 pgsql 给我印象最深的是单表百万条数据插入,用 COPY 协议只要 7 秒…… 不知道 MySQL 的插入性能能不能匹敌?
    1  2  
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1009 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 42ms · UTC 19:44 · PVG 03:44 · LAX 12:44 · JFK 15:44
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.