计算机网络/计算机科学与应用/系统/运维/开发

MySQL8恢复备份数据

逻辑备份工具mysqldump和mysqlpump将数据写入单个文件

1、登陆备份所在的服务器

> cat /backups/full_backup.sql  | mysql -u <user> -p
或者
> mysql -u <user> -p < /backups/full_backup.sql

要在远程服务器上恢复,可以使用-h <主机名> 选项:

> cat /backups/full_backup.sql | mysql -u <user> -p -h  <remote_hostname>

remote_hostname: 远程主机名

当恢复一个备份时,该备份的语句将被记录到二进制日志中,这可能会拖慢恢复过程。

如果不希望恢复过程被写入二进制日志,则可以使用 SET SQL_LOG_BIN=0;选项在session(会话)级别关闭这个功能:


> (echo "SET SQL_LOG_BIN=0;"; cat /backups/full_backup.sql) | mysql -u <user> -p -h <remote_hostname>

或者使用:

> SET SQL_LOG_BIN = 0; SOURCE full_backup.sql


1.由于备份恢复需要很长时间,因此建议在screen会话内启动恢复过程,即使断开与服务器的连接,备份的恢复也会继续

2.有时候,在恢复期间可能会出现故障。如果将--force选项传递给MySQL,恢复过程将继续:

>(echo "SET SQL_LOG_BIN=0;";cat /backups/full_backup.sql)  | mysql -u <user> -p -h <remote_hostname> -f

                                       

mysql8

人生活在得失之间,得亦是失,失亦是得。

评论

^