gp简易维护

更新时间:2023-12-02 00:39:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

Greenplum 日常简明维护手册

1. 数据库启动:gpstart 提示选择Y…

常用参数: -a : 直接启动,不提示终端用户输入确认 -q : 不希望屏幕输出

-m:只启动master 实例,主要在故障处理时使用 -R:只启动数据库在受限模式,禁止非超级用户登陆. -y:启动数据,但不启动standby 启动完毕可使用gpstate查看数据库状态 2. 数据库停止:gpstop 提示选择Y…

常用参数: -a:直接停止,不提示终端用户输入确认

-m:只停止master 实例,与gpstart –m 对应使用

-f(-m faster):停止数据库,中断所有数据库连接,回滚正在运行的事务 -u:不停止数据库,只加载pg_hba.conf 和postgresql.conf中运行时参数, 当改动参数配置时候使用。

关闭完毕后可使用gpssh控制所有服务器查看postgres进程是否已经都不存在,下面命令显示为1则表明数据库所有进程已经关闭完毕.

gpadmin@dsszbyz-dw6-mst01:~> gpssh -f host_all => ps -ef|grep postgres |wc -l [ sdw1] 1

[sdw2] 1 [ mdw] 1 [ sdw3] 1 [ smdw] 1 [ sdw4] 1 [ ftp1] 1 =>exit

3. 登陆数据库:psql

登录数据库方式:psql –d 数据库名 –u 用户名

可以先使用psql -d template1登陆默认实例,然后使用select * from pg_database;查看已经安装的数据库名,然后登陆相应数据库。 退出psql 使用\\q.

使用应用模式访问单个数据实例():

PGOPTIONS='-c gp_session_role=utility' psql template1 -p 5432 4. 查看实例配置和状态:gpstate

常用参数: -c:显示primary instance和mirror instance的对应关系 -m:显示mirror的状态

-f:显示standby的状态(是否配置,是否同步) -e:显示错误节点的详细信息。

-S:显示故障点的具体信息。

该命令默认列出数据库运行状态汇总信息,常用于日常巡检。 5. 查看数据库、表占用空间以及其他状况. 在/home/gpadmin目录下执行./gm

1.一般目录占用差异不超过3%.超过3%需查找差异原因,是否存在分布键不合理的表. 2.必须在数据库所对应的存储系统里,至少保留30%的自由空间,日常巡检,要检查存储空

间的剩余容量。使用容量超过70%则提醒应用人员进行适当的历史数据清理。 3.查看cpu占用、磁盘读写是否异常. 4.查看是否存在system alterlog信息. 6. 实例恢复:gprecoverseg

通过gpstate 或gp_segment_configuration 发现有实例down 掉以后,使用该命令进行回复,恢复时候不需要停机,不影响应用.用gprecoverseg 修复…参数可以选择-a,打入后台操作防止断连接.如:gprecoverseg –a.

在primary segment down掉后,mirror会替代primary工作.使用gpstate –m命令查看存在mirror Acting as Primary时,需将primary和mirror的状态重置成初始配置,不要使用gprecoveryseg –r.使用重启数据库也能恢复,打入后台操作防止断连接.(此操作会关闭数据库)

7. 查看用户会话和提交的查询、锁等信息

select * from pg_stat_activity 该表能查看到当前数据库连接的IP 地址,用户名,提交的查询等。 查看锁信息:

SELECT 'select pg_cancel_backend('||l.pid||');', locktype as locktype__,--锁类型 --database,

c.relname as relname_____________,--相应对象

a.current_query as current_query_______________________________________, current_time, a.query_start, a.backend_start, l.relation, --l.transactionid, l.transaction,

l.pid,------------------若杀进程,此为进程号 l.mode as mode__________, l.granted

FROM pg_locks l, pg_class c, pg_stat_activity a WHERE l.relation = c.oid AND l.pid = a.procpid

AND l.granted='f' ORDER BY c.relname;

字段:granted可以理解为是否获得相应资源的授权。 t为获得授权,未被阻塞。f为未获得授权,被阻塞。

某些时候需要登陆相应数据库psql -d dwm执行函数select pg_cancel_backend(pid)来杀死相应进程。

select pg_terminate_backend(pid); 数据量过大时,此函数需要3-5分钟…

若仍未能杀死进程,则需要执行服务器命令kill pid杀死进程(能不用就不用,可能引起某些奇怪的异常错误)。

8. Master主机硬件故障时,如何切换至Stand by Master,切换成功后是否需要进行数据检查或恢复等

在stand by master 主机上,运行 gpactivatestandby -d /gpdata 进行切换。由于Master 只存储系统元数据信息,切换成功后,一般不需要进行数据检查和恢复。

日常巡检中要检查Stand by master 是否同步,可以通过表gp_master_mirroring 确认, psql -d template1 -c \或者 gpstate -f

如果发现不同步,可以通过命令:gpinitstandby –n 使得master和standby 重新同步。(此命令会关闭数据库,执行同步前需通知相应的应用人员)。

9. 当Master主机硬件故障排除时,如何由Stand by切换至原Master主机。 1,在standby master运行:

gpinitstandby –s original_master_hostname

2,在standby master 上运行:gpstop –m, 注意这里只停止master 实例 3,在原来的maste上运行:gpactivatestandby -d /gpdata。

4,在原来的master上运行:gpinitstandby -s original_standby_master_hostname

10. 日志: master 和 segment 上分别有日志: 主节点:cd $MASTER_DATA_DIRECTORY//pg_log/ 11. gpconfig : 4.0 新增加管理工具,参数配置工具; -c | --change 参数名 -v | --value value 参数值

-m | --mastervalue master_value 主节点参数值 -s | --show 显示参数的参数值 -----设置参数为某值

gpconfig -c max_connections -v 100 -m 10gpconfig -----显示参数的参数值 gpconfig -s max_connections

12. gpcheckperf :

最好在数据库关闭状态下执行.防止数据库访问对于测试结果的影响.

(正常情况各个segment之间网络和io性能差不多,如果有明显的异常.需进一步查明原因.) 网络:

gpcheckperf -f hostfile_gpchecknet_ic1 -r N -d /tmp 磁盘IO

gpcheckperf -f hostfile_gpcheckperf -d /data1 -d /data2 -r d

13. gpssh : 同时登陆到多个机器上,进行操作 Gpssh -h sdw1 –h sdw2 -h sdw3 gpssh -f host_file

host_file为需要控制的服务器节点的hostname

14. 查看日志信息 : gplogfilter

参数-t | --trouble

Finds only the log entries that have ERROR:, FATAL:, or PANIC: in the first line. 详细参数设置参见gplogfilter –help

在master上执行: 1.查看master日志问题. gplogfilter –t

2.查看所有segment上的日志问题. gpssh -f host_seg -e 'source

/usr/local/greenplum-db/greenplum_path.sh;gplogfilter -t

/data*/primary/*/pg_log/gpdb-2013-09-10_*.csv' >pg_log_seg_20130910.log

本文来源:https://www.bwwdw.com/article/wlvt.html

Top