更新时间:2020-06-30 19:56
本文主要介绍在专有云V3环境中,停止RDS产品SQL审计采集功能的方法。
说明:适用于专有云V3.5以上版本,RDS管控版本为3580以上版本。
说明:该方案只适用于应急预案,不能作为通用方案进行操作,操作的过程需要阿里云技术支持指导操作。
请参见以下场景,根据实际情况,停止RDS产品SQL审计采集功能。
the table '/home/mysql/xxxx/xxxx/#[$Tab_Name]' is full系统显示类似如下。
RDS for MySQL实例所在物理机的Logagent采集审计数据后,未及时清理*.alog
,从而导致tmp
目录被占满,客户复杂查询再无存储空间可用,最终导致客户业务系统复杂查询异常。
根据实际场景,参见以下操作,进行检查。
free -m
show variables like '%tmp%';系统显示类似如下。
说明:查看loose_rds_max_tmp_disk_space和tmp_table_size参数大小。
*.alog
文件占用。说明:物理机的目录为/home/mysql/data[$Port]/tmp
,[$Port]为端口号。
以下两个场景都是修改SQL审计链路的采集,但是场景一是从根本上不产生,场景二是产生,但是不进行消费。
由于SQL审计将kafka容器的资源被占满,可以临时选择对该环境中实例SQL日志不采集的策略,修改数据库的loose_opt_rds_audit_log_enabled
参数,具体操作如下:
loose_opt_rds_audit_log_enabled
参数,单击下一步,将该参数值修改为0
。off
。
show variables like '%opt_rds_audit_log_enabled%';系统显示类似如下。
/usr/local/rds/kafka/bin/kafka-console-consumer.sh --zookeeper [$KafkaZK]:2181 --topicrds_sql_log
说明:[$KafkaZK]替换为实际ZookeeperServer地址。
log_agent采集的.alog
将临时表空间占满,需要停止log_agent采集。
pssh -ih dblist "rpm -qa|grep t-cloudmon-logagent |xargs rpm -e"
chmod -x /etc/init.d/logagent
chmod -x /opt/log_agent/bin/service.sh
ps -ef|grep log_agent|grep -v grep|awk '{print $2}'|xargs kill -9
.alog
文件。
find /u01/tmp*/ -name "*.alog" | xargs rm -f
date;mv /opt/log_agent/conf/sql_collect /opt/log_agent
ll /opt/log_agent/bin/service.sh如果没有执行权限,则执行以下命令,添加执行权限。
date;chmod +x /opt/log_agent/bin/service.sh
/opt/log_agent/bin/service.sh start
说明:因为老版本的log_agent Bug,导致PPAS会出现审计日志累积。
确认RDS产品SQL审计采集功能已停止。
请根据不同场景执行回滚操作,具体操作如下:
loose_opt_rds_audit_log_enabled
参数修改为1
。date ; pssh -ih mysqldb06 "ls /opt/log_agent/conf | grep sql_collect"
date ; pssh -ih /tmp/shark/audit/mysqldb01 "mv /opt/log_agent/sql_collect /opt/log_agent/conf"
在文档使用中是否遇到以下问题
更多建议
匿名提交