监控Mysql数据表变动的管控(监控mysql表的变化)

数据库监控一般来说,指通过监控数据库资源使用状况,判断数据库实例性能并可时时监控少量数据库变化,如数据表的行数及表的占用空间的变化。对Mysql数据表字段变动的管控需要以下几步:

第1步:查看Mysql数据库general_log中操作Mysql数据表的详细信息。

可以通过以下总命令查看general_log日志信息:

mysql> show variables like ‘general_log%’;

可以设置general_log变量开启或关闭,可以看到操作Mysql数据表时的详细操作信息:

mysql> SET GLOBAL general_log=1;

第2步:查看Mysql数据库表schema_update_log。

可以通过查看schema_update_log表,查看Mysql数据表有哪些变动,使用下面的sql语句可以查看Mysql数据表变动的情况:

mysql> select * from information_schema.schema_update_log;

第3步:利用binlog日志实现Mysql数据表变动的管控。

Mysql的binlog日志是一种日志文件,可以记录Mysql数据库操作时执行的命令,可以查看Mysql数据表有哪些变动,可以设置binlog变量开启binlog日志:

mysql> SET GLOBAL binlog_format=MIXED;

第4步:利用数据库触发器实现Mysql数据表变动的管控

可以使用触发器,当有Mysql数据表发生变动时可以记录到general_log中,可以使用下面的SQL语句创建一个触发器:

SQL> CREATE TRIGGER db_log

AFTER UPDATE OR DELETE ON ‘DataBaseName.TableName’

FOR EACH ROW

BEGIN

INSERT INTO general_log (event,time_stamp, user_host, thread_id)

VALUES( ‘UPDATE/DELETE’,SYSDATE(),CURRENT_USER, CONNECTION_ID());

END;

最后,可以使用Mysql数据库监控工具,设置报警系统实现Mysql数据表变动的管控,当Mysql数据库表变化时可以发出报警,以此来及时发现Mysql数据表有变动的情况。


数据运维技术 » 监控Mysql数据表变动的管控(监控mysql表的变化)