- 数据库环境
1.1数据库运行架构
确认当前数据库的运行架构,单机/cluster/standby/HA
1.2数据库安装目录
接触新的项目时,想要管理好数据库服务首先应找到数据库的安装目录。查看环境变量$KINGBASE_HOME,该环境变量在部署时也应该设置方便其他人员维护。
1.3 数据库版本
Kingbase -V
1.4 数据库data目录位置
Test=# show data_directory
- 注意:目前有些项目data目录是软链接形式,需留意一下。
1.5 数据库启动时间
Select sys_postmaster_start_time();
- V7版本使用select sys_kingbase_start_time()
1.6 数据库license信息
cat license.dat
- V8版本查看$KINGBASE_HOME/license.dat
- V7版本查看$KINGBASE_HOME/bin/license.dat
1.7存储可用空间
df -hT
1.8 备份文件有效性
解压备份压缩文件,查看备份日志确认当前备份有效性。
2.硬件以及操作系统
2.1操作系统类型
Hostnamectl
- hostnamectl命令适用于所有Linux操作系统(需要3.0以上内核),查看/etc/issue、/etc/redhat-release文件等方法
2.2芯片类型
Lscpu
- 需要关注的上图标记的位置,cpu类型和CPU品牌厂家
2.3内存
Free -m
2.4系统日志
四.环境检查
1.数据库
-
- 检查数据库表锁信息
Select * from sys_locks where granted = ‘f’
-
- 检查数据库链接信息
select datname,usename,client_addr,query,state,now() - query_start as time from sys_stat_activity where time > '03:00:00' and state = 'idle in transaction';
- 该语句查询出超过3小时的长连SQL,根据情况适当处理。
1.3检查数据库当前连接数&最大连接数
Show max_connectctions;
Select count(1) from sys_stat_activity;
1.4检查各数据库大小
\l +
1.5查询各个库的年龄
Select datname,age(DATFROZENXID) from SYS_DATABASE;
- 如果age列中有超过 5亿,应立即进行事务回收。
1.6 数据库扩展插件
Select extname from SYS_EXTENSION;
2.操作系统
2.1 CPU使用情况
- 使用top检查信息,判断资源使用情况。
2.2 内存使用情况
- 使用free -m 检查信息,其中total为总内存量;used为使用内存量;free 为内存剩余量。
2.3 系统I/O情况
- 如上所示,蓝色、黄色部分为磁盘读写情况,红色部分为CPU I/O等待情况。
2.4 系统是否存在僵尸进程
- 系统所能使用的进程号是有限的,如果大量的产生僵死进程,将因为没有可用的进程号而导致系统不能产生新的进程。
2.5磁盘使用情况
2.6 inode节点信息
2.7 服务器负载
- 蓝色部分代表系统启动时间,红色部分代表系统的平均负载,3个地方数字正常不超10。
2.8 防火墙状态
- 集群环境检查
- V8R2/R3
1.1数据库集群状态
- 通过ksql -U SYSTEM -W 123456 -p 9999 -d TEST登录数据库中执行show nodes;
1.2数据库流复制状态
- 主库中通过sys_stat_replication视图查询复制状态,同步状态为sync正常
- V8R6
1.1数据库集群状态
- 执行repmgr cluster show 查看集群状态
1.2数据库流复制状态
- 主库中通过sys_stat_replication视图查询复制状态,同步状态为sync正常
-
- repmgr/kbha进程状态
六.性能优化
1.操作系统
1.1内核配置文件检查
1.2资源限制文件检查
1.3电源管理配置文件
- 在centos7.2中,systemd-logind 服务引入了一个新特性,该新特性是:当一个user 完全退出os之后,remove掉所有的IPC objects。