敏捷云是AWS全球核心合作伙伴,我们致力于为企业提供云迁移、成本优化、安全合规及托管运维服务。敏捷云将与AWS一起为中国企业保驾护航,让广大用户拥有优质的云端应用。
今天我们与大家分享AWS的RDS MySQL的日志管理。
数据库日志是分析研究业务状态的参考资料,也是发生事故或审计时,可追溯检查的最具可靠性和权威性的原始记录,是寻找问题根源的重要的证据之一。
RDS MySQL的默认参数组和选项组并没有打开所有的日志选项。RDS的控制台里提供了把日志直接输出到CloudWatch的方法,可以在CloudWatch里面直接分析日志。如果对于成本比较敏感,可以通过Lambda定期把日志导出到S3做存储和分析。
本案例旨在帮助初次接触RDS并想导出日志的用户,主要包含以下几个内容:
通过S3存储桶做日志的生命周期管理
开启RDS(MySQL) 的日志
通过Lambda转储RDS日志
通过S3存储桶做日志的生命周期管理
Amazon S3是一种对象存储服务,有行业领先的扩展性、数据可用性、安全性和性能。S3不但能可靠又低成本的保存日志,还能通过生命周期管理功能自动归档或删除过期的日志。
创建S3存储桶
因为S3存储桶的名字是DNS的一部分,要起一个独一无二的名字,然后选择区域,创建存储桶。
阻止所有公有访问权限选项默认是选中的,建议不要改这个地方,否则数据有被他人访问的风险。
为存储桶设置生命周期管理策略
1)进入存储桶,在管理选项卡内点击+添加生命周期
2)设置生命周期规则
设立一个30-365为名的规则,30天后自动用智能分层功能降低存储成本,365天后删除日志。
开启RDS(MySQL) 的日志
MySQL 有错误日志、慢查询日志、常规日志、审计日志和Binlog。错误日志是默认打开的,慢查询日志和审计日志需要修改参数组才能打开,审计日志需要修改选项组才能打开。Binlog默认不保存。
MySQL RDS | 打开方法 | 默认保存周期 |
审计日志 | 修改选项组 | 文件达到1MiB后轮换,保留9个文件 |
错误日志 | 已默认打开 | 文件每小时轮换一次,保留24小时 |
慢查询日志 | 修改参数组 | mysql.slow_log表,每24小时轮换 |
常规日志 | 修改参数组 | mysql.general_ |