mysql数据表每天全量备份

1.思路:创建存储过程,创建备份表 xxx_%Y%m%d,将数据插入备份表,每天定时调度即可

2.实现

2.1存储过程

CREATE PROCEDURE `auto_copy_table`(
		IN prefix VARCHAR(255),
		IN srcTableName VARCHAR(255)
) 
	COMMENT '根据日期自动建表,并备份数据' 
BEGIN
	SET @suffix = concat('_', date_format(date_sub(curdate(), INTERVAL 1 DAY), '%Y%m%d'));
	SET @sql_create_table_gpstrail = concat('create table if not exists ', prefix, @suffix, 
                                            ' like ', srcTableName, ';'
    );
	SET @sql_insert_data_gpstrail = concat(
                                            ' insert into ' , prefix, @suffix,  
                                            ' select * from ', srcTableName, ' ;'
    );
PREPARE sql_create_table_gpstrail FROM @sql_create_table_gpstrail;
EXECUTE sql_create_table_gpstrail;
PREPARE sql_insert_data_gpstrail FROM @sql_insert_data_gpstrail;
EXECUTE sql_insert_data_gpstrail;
	
END 

 2.2 定时调度

begin

CALL auto_copy_table('XXX', 'XXX');

end

 

定时部门可以参考:https://www.cnblogs.com/jycjy/p/11585335.html

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值