常规/错误/慢/日志
# 修改参数组
slow_query_log:要创建慢速查询日志,请设置为 1。默认值为 0。
general_log(会产生大量日志):要创建常规日志,请设置为 1。默认值为 0。
long_query_time:要防止在慢速查询日志中记录快速运行的查询,请指定需要记录的最短查询执行时间值,以秒为单位。默认值为 10 秒;最小值为 0。
如果 log_output = FILE,则可以指定精确到微秒的浮点值, 即可记录 0.1s
如果 log_output = TABLE,则必须指定精确到秒的整数值。
系统只记录执行时间超过 long_query_time 值的查询。
log_queries_not_using_indexes(会产生大量日志):要将所有不使用索引的查询记录到慢速查询日志,请设置为 1。默认值为 0。将记录不使用索引的查询,即使它们的执行时间小于 long_query_time 参数的值。
log_output option:您可为 log_output 参数指定下列选项之一。
TABLE(默认, 不建议, 影响数据库本身性能)– 将一般查询写入 mysql.general_log 表,将慢速查询写入 mysql.slow_log 表。
FILE(推荐,也是必须,否则无法推送到cloudwatch)– 将一般查询日志和慢速查询日志写入文件系统。日志文件每小时轮换一次。默认记录24小时.
NONE– 禁用日志记录
审计日志
# 修改选项组, 添加额外选项
MARIADB_AUDIT_PLUGIN
二进制日志
二进制日志一般我们用来恢复数据, 默认 rds 会尽量销毁二进制日志, 来保留磁盘可用空间.
二进制日志默认格式是 mixed
配置二进制日志的方法:
# 将二进制日志保留24小时
call mysql.rds_set_configuration('binlog retention hours', 24);
访问二进制日志的方法如下:
mysqlbinlog \
--read-from-remote-server \
--host=<mysql_rds_instance_address> \
--port=<mysql_port> \
--user ReplUser \
--password \
--raw \
--result-file=/tmp/ \
binlog.00098
指定
--read-from-remote-server
选项。
--host
:指定该实例所在的终端节点中的 DNS 名称。
--port
:指定该实例使用的端口。
--user
:指定已授予了复制从属实例权限的 MySQL 用户。
--password
:指定用户的密码,或忽略密码值以让实用程序提示您输入密码。要按二进制格式下载文件,请指定
--raw
选项。
--result-file
:指定用于接收原始输出的本地文件。指定一个或多个二进制日志文件的名称。要获取可用日志的列表,请使用 SQL 命令 SHOW BINARY LOGS。
要流式传输二进制日志文件,请指定
--stop-never
选项。