对于从事it开发的工程师,数据备份我想大家并不陌生,这件工程太重要了!对于比较重要的数据,我们希望能定期备份,每天备份1次或多次,或者是每周备份1次或多次。
如果大家在平时使用navicat操作数据库,navicat是自带备份功能的,操作如下
首先,来设置一下navicat保存备份以及sql语句的路径
博主使用navicat16
新建或者编辑连接实例时,点击“高级”,选择“设置位置”,替换为需要保存的地址即可。
一、定时任务自动备份
(一)新建批处理作业
1、打开navicat,点击“自动运行”---->“新建批处理作业”(如果是老版本的navicat,则是点击“计划”)
博主当前使用的navicat16
老版本
2、点击“备份”,然后选择要备份的数据库,然后双击可用的工作中的 “backup test-backup”
,test-backup表示需要备份的数据库名
点击上方的“保存”按钮,即可保存当前的自动运行计划中的批处理作业内容。
设置“配置文件名”,点击保存
老版本
在左侧选择要备份的数据库,右侧双击可用任务,在下方会看到任务已选择
(二)设置任务计划
设置任务计划,可以批处理作业自动在某个时刻或者每隔多长时间执行一次备份
1、点击工具栏的设置任务计划
按钮,选择触发器
选项卡,点击新建
2、设置触发器的备份时间间隔以及执行频率
(1)设置每天的凌晨1点执行一次备份
(2)设置每隔多长时间执行一次,如每隔1分钟执行一次
3、点击工具栏的设置任务计划
按钮,选择触发器
选项卡,点击编辑
即可
如果需要手动备份,选择新建的任务计划,点击开始即可
就会看到如下日志
(三)sql脚本实现定时自动备份
-- 检查事件调度器是否开启 show variables like 'event_scheduler'; -- 如果事件调度器返回的值不是 on,则可以通过以下命令临时或永久开启;或者在 mysql 配置文件中添加 event_scheduler=on 并重启 mysql 服务 set global event_scheduler = on; -- 在这个脚本中,你需要替换 your_username, your_password, your_database_name,/path/to/your/backup/directory/ 为你的 mysql 用户名、密码、数据库名和备份路径 create event backup_database on schedule every 1 day do begin set @backup_dir = '/path/to/your/backup/directory/'; set @dbname = (select schema_name from information_schema.schemata where schema_name = 'your_database_name'); set @filename = concat(@backup_dir, @dbname, '_', date_format(now(), '\%y-\%m-\%d-\%h\%i\%s'), '.sql'); set @command = concat('mysqldump -u your_username --password=your_password ', @dbname, ' --result-file=', @filename); prepare stmt from @command; execute stmt; deallocate prepare stmt; end;
二、手动备份
1、选择需要备份的数据库,点击“备份”,点击“新建备份”或者右键点击“新建备份”
2、点击“备份”
也可以在设置保存文件路径的位置看到备份
三、还原备份
1、选择需要备份的数据库,点击“备份”,点击“还原备份”或者右键点击“还原备份”
2、选择相应的备份文件,点击“常规”---->“还原”即可
以上就是navicat自动备份mysql数据的流程步骤的详细内容,更多关于navicat自动备份mysql的资料请关注代码网其它相关文章!
发表评论