## 通过定时任务在凌晨作远程备份(可以写一个shell) ~] # crontab? -2? * 24 * * *?? xxxx(下面这条命令)??????? # 由于我是测试环境使用人所以直接导出,从库可以直接执行,但是主库尽量在晚上 ## 备份主库 ~] # /usr/local/mysql/bin/mysqldump -uroot -pxxx(密码)?--default-character-set=utf8mb4 --single-transaction --master-data=2 --insert-ignore --force -q --all-databases > dbdump_202292.sql ## 备份从库 ~]# /usr/local/mysql/bin/mysqldump -uroot -pxxx(密码) --default-character-set=utf8mb4 --single-transaction --master-data=2 --insert-ignore --force -q --all-databases > slave_202292.sql #?--default-character-set? 指定导出数据时采用何种字符集 #?--single-transaction? ? 当前版本的MySQL只可以对innodb 引擎保证一致性,导出过程中不会锁表 #--master-data=2? ? ? ? 是把change log 那行注释掉,=1 是没有注释 #--insert-ignore? ? ? ?? 在插入行时使用INSERT IGNORE语句. #--force? ? ? ? ? ?? 在导出过程中忽略出现的SQL错误 #-q?--all-databases?? ? ? ?导出全部数据库 # 注:把sql备份文件拷贝到从上 |