- 博客(444)
- 资源 (10)
- 问答 (1)
- 收藏
- 关注

原创 达梦相关笔记
创建安装用户创建安装目录及授权关闭防火墙和Selinux关闭透明大页和numaLinux 6Linux7配置系统参数配置操作系统限制配置环境变量安装 DM8 数据库安装同时支持图形化安装,命令行安装,静默安装三种方式。由于我没有安装图形化界面,因此使用 方式进行安装。用户应登录或切换到安装系统用户,进行以下安装步骤的操作(注:不建议使用root系统用户进行安装)。命令行安装 DM初始化命令行注册服务配置服务开机自启启停服务也可以通过
2022-07-21 11:42:35
2695
1
原创 Linux 环境 libpq加载异常导致psql 连接 PostgreSQL 库失败失败案例
可以看到 /usr/local/lib下 与 /usr/lib64 下的 库文件中, 没有 PQmblenBounded 函数, 而 我们产品的库文件路径/program/lib 下的 libpq.so.5中是有的。web 界面升级, 使用的 shell 非普通 sh xxx.sh 中的shell 环境, 加载的环境变量没那么全, 局点环境中 psql 在运行过程中, 会加载系统自带的库文件缓存路径, 局点默认的缓存为。中的新版库,完美解决符号缺失问题。,即运行时找不到它需要的某个函数(
2025-08-04 19:44:18
608
原创 Windows 环境 psql 客户端连接数据库超慢问题
现象原因是否与管道有关psql无-h时连接非常慢默认尝试命名管道连接,但被杀毒软件拦截或检测✅ 是相关的安装杀毒软件后开始变慢杀毒软件限制命名管道、劫持本地连接,或 HOOK 网络行为✅ 是诱因加后连接恢复正常跳过命名管道,直接走 TCP/IP,不再被拦截✅ 规避成功。
2025-08-02 09:57:42
776
原创 测试环境 PostgreSQL 库连接不上—案例分享
> 重启 server.sh 服务 --> PG 起来了但是不接受连接 --> 业务服务异常 --> 产生大量 core dump 文件 --> DBA 发现 PG 配置异常,然后手动恢复 PG 配置 --> 重启 server.sh restart --> 服务恢复 --> 测试清理冗余文件。可以看到 07.29 10:23 有过 reboot 系统, 同一分钟内, $PGDATA/postgresql.conf 文件被改过, 数据库启动了,但是有点异常。发现日志文件没有生成, 查看最新可看的日志。
2025-08-02 09:51:48
365
原创 Windows 环境排除 Windows Defender 对指定路径或进程的影响
Add-MpPreference 是 Windows Defender 的 PowerShell 命令,用于 将文件、文件夹或进程添加到排除列表中,防止其被 Windows Defender 实时保护扫描,从而避免对性能敏感操作(如 PostgreSQL 的 fsync)造成影响。
2025-07-22 21:05:11
341
原创 ubuntu24.04 编译安装 PostgreSQL15.6+postgis 3.4.2 + pgrouting 3.6.0 +lz4
【代码】ubuuntu24.04 编译安装 PostgreSQL15.6+postgis 3.4.2 + pgrouting 3.6.0 +lz4。
2025-06-07 15:33:38
357
1
原创 PG技术分享
适当调小 vacuum_cost_delay (比如 2ms, 新版本默认就是 2ms,老版本值偏大,如果系统 IO 没问题, 可以设置为 0)如 buffers_backend 高于 buffers_clean,说明 bgwriter 工作不足。适当调大 vacuum_cost_limit (默认是 200, 可以调整为 2000)maintanance_work_mem: 可以适当调大, 需要考虑系统数据库连接数。shared_buffers: 一般专用数据库服务器, 建议25%;
2025-05-28 18:53:37
1064
原创 openEuler22.03 环境编译安装 PostgreSQL 15.6 + PostGIS 3.4.1+pgrouting3.6.0
环境中已经存在更新的版本 sqlite-3.37.2-5.oe2203.aarch64, 所以我们只安装 sqlite-devel-3.36.0-2.oe2203.aarch64.rpm。proj9 开始使用的是 cmake , 他会依赖于 googletest, 需要手动下载并编译安装 googletest, 比较麻烦。先安装依赖包, 安装原则如下:能用 yum 先用 yum 安装;不能 yum 安装就 rpm 包安装;安装指导参考: https://gdal.org/build_hints.html。
2025-05-06 18:44:30
1012
原创 CentOS Linux 环境二进制方式安装 MySQL 5.7.32
【代码】CentOS Linux 环境二进制方式安装 MySQL 5.7.32。
2025-04-30 21:33:53
574
原创 基于 ChatGPT 分析业务层在事务中高频建表然后删除或者回滚导致 pg_dump 概率出现备份失败问题
残留元数据可见性即使使用 RR 隔离级别,
2025-04-29 20:33:45
924
原创 Oracle Linux8 安装 MySQL 8.4.3,搭建一主一从
每次登录, 输入 socket 文件过长,比较麻烦。规划: 3306 是主库;3307 实例是从库。主要修改 server_id 与如下两个配置。密码在之前初始化的打印中。
2025-04-21 00:22:29
426
原创 PG CTE 递归 SQL 翻译为 达梦版本
将 recursive 关键字删除了临时表 result 后面必须补充上表的字段列表 (column1 , column2, xxx)
2025-04-20 15:19:29
273
原创 测试环境凌晨2点负载偏高, 2点到7点 IO 读偏高问题定位
开始时各项指标处于中等水平(pgpgin 数值在 5000 左右,pgfree ~28k),而 pgscank、pgscand、pgsteal 有时为 0,有时突然出现小幅波动(例如 01:28 至 01:40 有轻微扫描与窃取行为,效率约 196~200)。整体指标仍保持在高水平(pgpgin 持续在 220k~250k左右,pgfree/s 在 80k+,pgscank/s 和 pgsteal/s 依然维持在较高数值),说明内存回收负载依旧很重。表示每秒发生的主缺页(需要从磁盘加载页面)的次数。
2025-04-20 15:07:30
803
原创 postgresql 对 lz4 压缩算法的支持
PG 从 14 开始支持 lz4 压缩算法,但是内核默认没有直接支持, 如果要使用, 需要手动编译(configure的时候使用 –with-lz4 选项)编译过程中遇到报错, 直接 GPT 搜一下,就知道应该安装哪些开发包。可以看到使用 lz4 算法, 存储空间也有明显的优化。通过速度, 可以看到默认压缩算法生效了。可以看到速度快了 20 倍。
2025-03-20 17:29:44
466
原创 pg_stat_replication.state值的含义
在过程中,startup→backup→streaming→stopping其中,catchup状态通常不会出现在过程中,因为它主要用于备用服务器追赶主服务器的场景,而不是备份场景。catchup备用服务器刚刚启动或重新连接。备用服务器因网络问题或负载过高而落后。备用服务器从长时间的中断中恢复。手动触发备用服务器的同步操作。如果观察到catchup状态,通常意味着备用服务器正在追赶主服务器的 WAL 位置,这是流复制中的正常行为。
2025-02-14 15:11:56
496
原创 openEuler部署 sysstat工具
意味着“每小时的分钟数从 00 开始,每隔 2 分钟触发一次”。这样就可以实现每 2 分钟收集一次信息的效果。默认每间隔10分钟收集一次信息。
2025-02-08 22:38:05
305
原创 pg_wal 目录下 wal 日志文件异常累积过大
发现一个是 checkpointer 进程, 一个是 walwriter 进程, 这两个进程一个是刷脏,并归档 wal, 一个是 将 wal buffer 中的数据同步到 wal 文件中。如果有长时间运行的事务(例如长时间运行的查询或未提交的事务),PostgreSQL 将不会删除旧的 WAL 文件。时,PostgreSQL 会将不再需要的旧 WAL 文件的空间回收并重新利用。是 PostgreSQL 提供的一个工具,可以用于查看 WAL 文件的内容,帮助你了解当前哪些文件是活跃的,哪些文件可以回收。
2024-12-31 12:05:20
1260
原创 PG使用 INHERITS 创建的子表注意事项
主键、外键、唯一键约束以及创建索引不会继承新增字段,删除字段,修改字段类型会继承操作是否继承到子表备注新增字段是自动继承到子表创建索引否需手动在子表创建新增主键/唯一约束/外键约束否需手动在子表创建新增检查约束是自动继承到子表修改字段类型是自动继承到子表删除字段是自动从子表删除。
2024-11-27 21:59:53
419
原创 PG COPY 与 INSERT方式导入数据时, 表默认值表现的不同
可以看到, 通过 copy 导入数据的时候, user_status_flag 的默认值虽然是 0 , 但是当 copy 导入数据时对应字段是 null 的话, 也是不会被替换为 0 的,还是 null, 而与 insert 的表现是不一样的。
2024-11-10 14:04:42
239
原创 Win 环境与Linux 环境基于 PG 库将本地时区时间转换为 UTC 时区时间案例
【代码】Win 环境与Linux 环境基于 PG 库将本地时区时间转换为 UTC 时区时间案例。
2024-08-28 23:09:58
508
1
原创 Windows 环境 batch 脚本实现 PG 数据库恢复功能
【代码】Windows 环境 Java 调用 batch 脚本实现 PG 数据库恢复功能。
2024-07-24 21:06:06
357
原创 pg_cron 使用
如果你想在当前 test 库中去定时处理 test2 库中的对象需要使用 cron.schedule_in_database 函数。
2024-07-16 14:38:32
481
原创 pg_rman在恢复服务器上恢复源库的备份
修改 配置文件 /data/restore/2023_pg_restore/db_test/data/postgresql.conf 与 /data/restore/2023_pg_restore/db_test/data/backup_label(如果存在的话)修改2: 修改 log_directory 与 data_directory 与 hba_file 配置项中的 data 值 与 /data/restore/2023_pg_restore/db_test/data 保持一致。
2024-03-30 18:38:06
1247
原创 PG 流复制环境, 主库重启, 备库自动重连测试
但是从库每次间隔 5 秒会尝试连接主库, 看看是否可以正常连接上主库。当发现主库可以正常连接之后, 会尝试重新建立流复制状态。可以看到, 每间隔 5 秒, 会连接一次主库。可以看到, 主库停止之后, 流复制断了,
2024-03-30 18:37:17
550
原创 关于 SEQUENCE 的 USAGE | SELECT | UPDATE 权限实例
【代码】关于 SEQUENCE 的 USAGE | SELECT | UPDATE 权限实例。
2024-01-27 22:01:49
552
原创 在同一个实例(cluster)的两个不同库(database)中进行逻辑同步
说明: 根据官方文档, 使用一般的方式会导致 创建发布时hang 住。
2024-01-21 20:36:58
592
原创 track_activity_query_size 参数验证
可以看到 即使修改了 track_activity_query_size 并不会影响到 pg_stat_statements.query 的长度, 如果 pg_stat_statements 插件如果能够提供一个配置(开关), 来了控制 query的长度, 那就完美了。期望能控制 pg_stat_statements.query 的长度, 实际测试并不能影响其长度。决定 pg_stat_activity.query 的长度。提前安装了 pg_stat_statements 插件。
2023-12-30 19:18:40
644
原创 获取PG库 database与 user 创建时间以及cluster初始化时间
【代码】获取PG库 database与 user 创建时间以及cluster初始化时间。
2023-12-30 19:16:10
1142
原创 PG 常用维护性 SQL
参考:https://www.modb.pro/db/181436。
2023-12-04 23:19:43
755
1
oracle rac 2 day's guide
2018-02-05
exec()函数族疑问,输出不是预料的结果
2015-11-17
TA创建的收藏夹 TA关注的收藏夹
TA关注的人