
HighGo DB之日常维护
本专栏主要介绍了瀚高数据库日常维护的相关内容。
瀚高PG实验室
瀚高PG实验室(Highgo PG Lab)依托于瀚高DBA运维团队及瀚高数据库PG内核研发团队,旨在深入研究PostgreSQL技术、使用技巧、内核探秘、PG教学等,并进行分享。欢迎大家关注、交流。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
数据库未正常关闭后,再次启动时只有主进程,数据库日志无输出
base/pgsql_tmp目录用来支持一些需要临时存储空间的操作,比如排序、大型查询等;目录大小跟随这些操作变化,当数据库关闭时,数据库没有任何操作,则目录为空;但当前目录不为空,导致报错,也是强制关闭数据库导致的。现象:使用pg_ctl stop停止数据库,未正常关闭;使用pg_ctl stop -m i 强制关闭数据库后,再次启动数据库,启动失败;只有数据库主进程,查询数据库日志没有任何输出;解决:数据库关闭时,先执行checkpoint;1、查询数据库进程是否正常,若只有主进程,则kill;原创 2025-04-25 15:37:41 · 172 阅读 · 0 评论 -
数据库中ALTER SYSTEM、ALTER DATABASE、ALTER USER的使用
当database或user需要单独配置参数时,可使用ALTER DATABASE单独设置database的参数,使用ALTER USER单独设置user的参数。当需要对特殊database设置特殊参数时可使用ALTER DATABASE语法,此语法不影响全局参数,只对当前database有效;当需要对特殊user设置特殊参数时可使用ALTER USER语法,此语法不影响全局参数,只对当前用户有效;系统平台:Linux x86-64 Red Hat Enterprise Linux 7。原创 2025-04-25 14:22:48 · 294 阅读 · 0 评论 -
hgdb运行日志保存周期配置详解
log_filename参数默认是postgresql-%Y-%m-%d_%H%M%S.log,默认为永久保留,以下是详解介绍。本文主要用于介绍hgdb运行日志配置项,工程师可根据客户需要进行保存策略的设置。2、日志保存周期参数log_filename的补充介绍。版本:9.0.1,6.0,4.5.10。系统平台:银河麒麟 (鲲鹏)原创 2025-04-24 14:56:05 · 332 阅读 · 0 评论 -
HGDB安全版单机修改用户密码
日常工作,有时候用户需要修改数据库密码,或者因为输入错误密码次数过多,导致了用户被锁,在安全版,用户分为三权用户和普通用户,当三权打开时,忘记普通用户密码后,可以使用syssso用户修改,如果三权未打开,所有用户可以用sysdba用户修改密码,syssso无权修改用户密码。hg_sepofpowers为on时三权打开,off为三权关闭,三权打开时,修改普通用户密码使用syssso用户,关闭时使用sysdba用户,修改普通用户密码。注意,这样修改后用户的有效期不显示,为永久有效,原创 2025-04-24 14:19:47 · 589 阅读 · 0 评论 -
HGDB安全版单机修改用户密码
本文介绍了HGDB安全版单机如何修改用户密码转载 2025-03-06 10:08:53 · 336 阅读 · 0 评论 -
瀚高HGHAC高可用集群配置逻辑复制槽方法
若用数据库命令创建逻辑复制槽,在集群主备切换新主节点不会自动创建逻辑复制槽;意外情况出现的逻辑复制断开,集群会识别该逻辑复制槽为unkown,删除逻辑复制槽。说明: 在备节点创建逻辑复制槽后,hghac集群使用pg_replication_slot_advance()向前更新槽。方法二:修改订阅指定逻辑复制槽,不会影响已有逻辑复制。关掉逻辑复制订阅段数据库,逻辑复制槽依然存在。7.1关闭逻辑复制数据库,查看逻辑复制槽信息。7.2启动逻辑复制数据库,查看逻辑复制槽信息。6.1切换后逻辑复制槽状态。原创 2024-12-09 16:50:50 · 657 阅读 · 0 评论 -
hghac和hgproxy版本升级相关操作和注意事项
瀚高数据库目录环境文档用途详细信息环境系统平台:N/A版本:4.5.6,4.5.7,4.5.8文档用途本文档用于高可用集群环境中hghac组件和hgproxy组件替换和升级操作详细信息1.关闭服务所有数据节点都执行1、关闭hgproxy服务[root@hgdb01 tools]# systemctl stop hgproxy.service[root@hgdb02 tools]# systemctl stop hgproxy.service2、关闭hghac服务[root原创 2024-12-09 16:34:12 · 948 阅读 · 0 评论 -
API方式实现COPY调用
在应用程序中实现COPY TO操作。应用程序开发语言是C++。原创 2024-10-25 17:07:41 · 415 阅读 · 0 评论 -
瀚高数据库中,对象不存在问题的处理思路及解决方案
使用瀚高数据库可能会遇到应用系统中报对象等不存在的问题,可参照本文处理。原创 2023-07-27 14:23:59 · 2583 阅读 · 1 评论 -
create database创建数据库失败
create database创建数据库失败原创 2023-07-19 17:59:45 · 2011 阅读 · 0 评论 -
一体机HDATA网络交换机用户密码修改
一体机HDATA网络交换机用户密码修改原创 2023-03-28 10:36:36 · 586 阅读 · 0 评论 -
一体机HDATA节点添加和删除
一体机可在线添加、删除数据库集群节点。原创 2023-03-06 17:03:55 · 579 阅读 · 0 评论 -
逻辑复制环境删除订阅报错 replication slot does not exist
逻辑复制环境删除订阅报错 replication slot does not exist原创 2023-01-13 10:23:34 · 759 阅读 · 0 评论 -
hgdb数据编辑
数据编辑(Data Redaction)功能是一种动态数据脱敏机制,针对数据查询时的敏感数据进行动态的安全保护,通过设置策略对表的字段进行动态查询时动态修订。原创 2022-11-30 10:34:33 · 1351 阅读 · 0 评论 -
db_ha集群日常维护命令
介绍db_ha集群日常操作维护命令原创 2022-10-17 14:01:26 · 977 阅读 · 0 评论 -
db_ha集群添加/删除节点
本文档用于指导db_ha集群添加/删除节点操作。原创 2022-10-14 16:42:30 · 528 阅读 · 0 评论 -
db_ha集群配置文件参数含义详解
本文章详细介绍了db_ha高可用集群各参数的含义。原创 2022-09-08 09:56:49 · 833 阅读 · 0 评论 -
瀚高数据库DML自动转发功能介绍(数据库层面)
本文用于介绍瀚高在数据库层面开发的数据库转发功能,通过示例演示DML自动转发功能。原创 2022-08-24 10:37:40 · 681 阅读 · 0 评论 -
db_backup与NAS/NFS备份路径结合使用的建议
本文旨在提供使用db_backup做备份并将备份文件直接存储在NAS上的挂载建议。原创 2022-08-18 09:51:57 · 441 阅读 · 0 评论 -
通用机环境下安全版单机数据库使用非root用户管理的解决方案
本文旨在提供通用机环境下瀚高数据库安全版单机场景使用非root用户管理的解决方案。原创 2022-07-22 11:01:54 · 321 阅读 · 0 评论 -
HAC集群修改为单机
本文档用于指导HAC集群修改为单机原创 2022-07-19 11:29:55 · 299 阅读 · 4 评论 -
HAC集群添加新节点
本文档用于指导HAC集群添加新节点原创 2022-07-14 16:26:24 · 291 阅读 · 0 评论 -
pg12中oid2name新增选项介绍
oid2name是一个帮助管理员检查PostgreSQL使用的文件结构的工具程序。本文主要用于介绍与pg10.5相比,pg12在oid2name命令中的新增选项。原创 2022-06-06 10:19:48 · 486 阅读 · 0 评论 -
HAC集群更改IP(单节点更改、全部节点更改)
瀚高数据库目录环境文档用途详细信息环境系统平台:Linux x86-64 Red Hat Enterprise Linux 7版本:4.5文档用途本文档用于指导HAC集群更改IP(单节点更改、全部节点更改)。详细信息一、停掉hghac服务1、按照先停备库,最后停主库原则停服务2、各个节点查询进程,有sender节点的是主库,有receiver节点的是备库ps -ef | grep senderroot 26418 3233 0 6月11 ? 00:00:22原创 2022-05-27 16:02:26 · 735 阅读 · 0 评论 -
postgresql根据执行计划优化SQL
目录环境文档用途详细信息环境系统平台:N/A版本:5.6.5文档用途postgresql根据执行计划优化SQL详细信息1、执行计划路径选择postgresql查询规划过程中,查询请求的不同执行方案是通过建立不同的路径来表达的,在生成许多符合条件的路径之后,要从中选择出代价最小的路径(基于成本运算),把它转化为一个计划,传递给执行器执...原创 2020-03-25 13:45:56 · 1259 阅读 · 2 评论 -
连接数据库失败提示hba.conf不符合的处理方法
瀚高数据库目录环境文档用途详细信息环境系统平台:N/A版本:6.0,5.6.5,5.6.4,5.6.3,5.6.1,4.5.2,4.5,4.3.4.9,4.3.4.8,4.3.4.7,4.3.4.6,4.3.4.5,4.3.4.4,4.3.4.3,4.3.4.2,4.3.4,4.7.8,4.7.7,4.7.6,4.7.5,4.3.2,4.1.1文档用途本文主要介绍如何对 hba.conf 进行合理的配置,以防止因hba.conf文件配置不合理从而连接不上数据库。详细信息1. 客户端认证原创 2022-05-10 15:31:42 · 2106 阅读 · 0 评论 -
HGDB中如何为大表增加新主键
瀚高数据库目录环境文档用途详细信息环境系统平台:N/A版本:4.5文档用途本文主要介绍在瀚高数据库中如何为大表增加新主键,便于业务改造和查询。详细信息可以根据数字类型来设计alter table 表名 add 新字段名 bigserial;alter table 表名 add constraint 约束名 unique (新字段名); 例如:alter table tt add zi bigserial;alter table tt add constraint原创 2022-04-25 10:27:09 · 1216 阅读 · 0 评论 -
HAC集群部署vip及相关操作
瀚高数据库目录文档用途详细信息文档用途本文档用于指导HAC集群vip部署及相关操作详细信息HAC集群支持用户配置在特定事件发生时触发的回调脚本,因此可以通过callback脚本实现vip的添加、漂移、删除1、vip的部署vip相关文件会在HAC集群安装包的同一目录下,其中loadvip.sh为vip脚本(见附件),vip.env为脚本的变量文件[root@host hghac]# lsetcd hghac hghac.service hghactl hghac-vip.ser原创 2022-04-13 10:24:46 · 1710 阅读 · 0 评论 -
HGHAC已保留的连接位置为执行非复制请求的超级用户预留
瀚高数据库目录环境症状问题原因解决方案环境系统平台:N/A版本:4.5症状HGHAC集群中报错:已保留的连接位置为执行非复制请求的超级用户预留应用报错:com.highgo.jdbc.util.PSQLException: 致命错误: 已保留的连接位置为执行非复制请求的超级用户预留问题原因HGHAC集群的连接数已满,且无法通过hghac-see.yaml文件或postgresql.auto.conf文件修改最大连接数生效。注意,数据库参数优先级由高到低依次排序如下:1、hg原创 2022-04-11 15:07:07 · 1542 阅读 · 0 评论 -
HAC集群中,计划重新初始化数据库使用原集群配置的操作方法
瀚高数据库目录环境文档用途详细信息环境系统平台:N/A版本:4.5文档用途HAC集群环境中,因某种特殊原因需要删除当前data目录并重建数据库,能够快速搭建集群;避免重新安装。详细信息1、所有节点停止hghac服务,删除原data目录,重新在主节点initdb(原配置的HAC集群文件不变)[root@db data]# systemctl stop hghac-vip[root@db data]# initdb -e sm4 -c "echo *******" -D /db/h原创 2022-04-08 11:33:29 · 584 阅读 · 1 评论 -
repmgr集群docker环境开启SQL转发功能报错
目录环境BUG/漏洞编码症状触发条件解决方案环境系统平台:中标麒麟(CPU龙芯)7版本:4.3.4.6BUG/漏洞编码症状连接数据库报错:FATAL: PostgresMain 4292 SQL-Fonward could not create connection with master node!!!触发条件V4.3.4.6 版本的 repmgr集群运行在docker环境下时,当集群发生切换后使用客户端连接数据库触发报错。解决方案该报错可通过修改备库recovery文件解原创 2022-02-14 14:25:05 · 583 阅读 · 0 评论 -
启动hghac服务报错:OSError: [Errno 98] Address already in use
目录环境症状问题原因解决方案环境系统平台:N/A版本:4.5症状启动hghac服务无法正常启动,检查服务状态报错:OSError: [Errno 98] Address already in use。查看patroni日志提示:ERROR: Couldn't start a service on '0.0.0.0:8008', please check your `restapi.listen` configuration问题原因端口被占用解决方案1.使用netstat -t原创 2022-02-14 14:18:07 · 756 阅读 · 0 评论 -
如何将瀚高数据库单机数据导入HGDW
目录文档用途详细信息本文档主要用于指导工程师将瀚高数据库单机数据导入到HGDW中。详细信息1、将瀚高数据库进行文本方式备份,备份格式如下:pg_dump -Fp -h IP地址 -p 端口号 -d 数据库名 -U 用户名 -f 导出文件绝对地址及名称2、将导出的备份文件上传至HGDW服务器。3、导入至HGDW中:(1)集群导入psql -U 用户名 -d 数据库名 -f 要导入的文件绝对地址(2)单节点导入PGOPTIONS="-c gp_session_role=utility"原创 2022-02-08 14:12:46 · 1370 阅读 · 0 评论 -
Excel导入null错误解决方式
目录环境文档用途详细信息环境系统平台:Microsoft Windows (64-bit) 10版本:5.6.5文档用途用hgdbdeveloper-2021-03-03进行Excel导入时报null错误的解决方式介绍详细信息1、HGDB表创建以及测试数据添加create table testtab(id int,name varchar(20));insert into testtab select generate_series(1,10),'N' || generate_se原创 2022-01-25 16:21:07 · 4739 阅读 · 0 评论 -
如何禁止数据库执行drop table的操作?
目录文档用途详细信息文档用途本文档旨在介绍如何在数据库中通过事件触发器禁止用户执行drop table的操作。详细信息创建触发器函数:CREATE OR REPLACE FUNCTION abort_DROP_TABLE()RETURNS event_triggerLANGUAGE plpgsqlAS $$BEGIN if tg_tag = 'DROP TABLE' THEN RAISE EXCEPTION 'command % is disabled', t原创 2022-01-25 15:31:19 · 703 阅读 · 0 评论 -
瀚高数据库块恢复示例
目录文档用途详细信息文档用途本文档旨在介绍瀚高数据库中的块恢复功能。详细信息1、配置归档开启归档alter system set archive_mode = 'on';配置归档目录alter system set archive_directory = '/opt/HighGo5.6.5-cluster/data/rman/rman_arch';2、配置块跟踪参数需要在配置文件postgresql.conf 中对如下配置项做出修改:# - Block change track原创 2022-01-18 11:20:53 · 874 阅读 · 0 评论 -
为什么停库可能会很慢?
目录文档用途详细信息文档用途在实际生产环境中,运维人员会遇到执行 pg_ctl stop 命令后需要等待一段时间后才能将数据库关闭。等待时间好像没有规律,有时只需一两秒,有时却需要几分钟。那么是什么原因导致该问题的出现呢?本文档旨在帮助理解为何某些情况下停库速度需要花费较长的时间。详细信息数据库有3种停库模式:“Smart”模式等待所有客户端断开连接以及任何在线备份结束。如果该服务器是热备,一旦所有的客户端已经断开连接,恢复和流复制将被终止。“Fast”模式(默认)不会等待客户端断开连接并且原创 2022-01-18 11:08:32 · 1351 阅读 · 0 评论 -
如何查看数据库当前连接数和最大连接数
目录环境文档用途详细信息环境系统平台:中标麒麟(CPU龙芯)7,中标麒麟(CPU申威)7,中标麒麟(CPU海光)7,Linux x86-64 Red Hat Enterprise Linux 7版本:6.0,5.6.5,4.5,4.5.2,4.3.4.9文档用途本文主要用于介绍查看数据库连接数方面的SQL语句。详细信息1、查看数据库当前连接数select count(*) from pg_stat_activity;[highgo@host1 ~]$ psqlType "help"原创 2022-01-07 16:44:35 · 9322 阅读 · 0 评论 -
REPMGR脑裂问题紧急处理步骤
目录环境症状问题原因解决方案环境系统平台:N/A版本:5.6.4,5.6.5症状Repmgr集群脑裂是指数据库集主节点和至少一个备节点均认为自己为主库导致集群状态混乱,此时数据库写入数据则只会写入到VIP所在节点,状态混乱节点无法正常同步数据。Repmgr集群脑裂状态通常如下所示:[highgo@hgdb ~]$ repmgr cluster showID | Name | Role | Status | Upstream | Locatio原创 2022-01-05 10:51:02 · 920 阅读 · 0 评论 -
重启数据库集群服务器( 主库服务器/备库服务器 )步骤
目录文档用途详细信息文档用途本文旨在指导工程师如何重启数据库集群服务器。详细信息集群种类:1、普通流复制集群(异步&同步)2、Repmgr集群(高可用类)3、Sharding集群(负载均衡类)4、ETCD集群(高可用类)集群重启顺序:1、关闭备库2、关闭主库3、启动主库4、启动备库注意点:①优先关闭备库的原因是防止集群误切换。②关闭数据库之前应检查是否有应用进程连接使用,是否有对应的守护进程,防止数据库无法关闭或被反复拉起。③优先启动主库的原因是主库是写入节点,原创 2022-01-05 10:45:27 · 1475 阅读 · 0 评论