MySQL:轻松自动生成数据(mysql自动生成数据)

库备份

MySQL是全球最流行、最受欢迎的关系型数据库管理系统之一。虽然MySQL的操作有时候不太复杂,但是为了避免系统损坏、数据丢失,每个MySQL数据库系统都应该定期以正确的形式备份以免出现问题,所以自动生成数据库备份是一个很重要的步骤。但是在MySQL中自动备份需要手动复杂的操作,特别是当数据量较大时,会让备份变得十分困难。

幸运的是,MySQL为客户端提供了一种可以轻松自动生成数据库备份的方法,就是使用MySQL的Event机制。MySQL Event表示一组用户定义的SQL语句,该语句随着服务器的系统时间和日期在一定的频率下运行。MySQL中提供了一个语法叫 CREATE EVENT,它用来创建一个新的事件,可以指定时间、任务执行语句等:

CREATE

EVENT event_name

ON SCHEDULE schedule

[ON COMPLETION [NOT] PRESERVE]

[ENABLE | DISABLE]

[COMMENT ‘comment’]

DO BEGIN

— event body

END;

上面这段SQL语句,就可以用来创建一个可以在指定时间(下面的schedule参数)自动执行的事件。schedule参数可以是AT模式,也可以是EVERY模式,比如:

— 每天凌晨2点 运行

EVERY 1 DAY STARTS ‘2018-04-09 02:00:00’

— 每隔5小时运行一次

EVERY 5 HOUR STARTS CURRENT_TIMESTAMP

所以,我们可以创建一个事件用来在每天凌晨2点自动运行备份数据库的语句:

CREATE EVENT backup_db

ON SCHEDULE EVERY 1 DAY STARTS ‘2018-04-09 02:00:00’

DO

BEGIN

— 备份数据库语句

mysqldump -u root -p [–all-databases] > backup.sql

END;

在上面的语句中,备份数据库的语句可以根据实际要求来改变,可以使用–all-databases参数来备份所有数据库。

总之,使用MySQL的Event机制,可以轻松的实现自动备份MySQL数据库。用户只需设置好时间、任务执行语句,然后MySQL就会根据时间自动执行相应的任务,让数据库备份更方便简单,从而解决了大量MySQL用户在备份数据库上的不便。


数据运维技术 » MySQL:轻松自动生成数据(mysql自动生成数据)