通过备份恢复搭建从库

MYSQL从库出问题很多,数据库比较大时,用mysqldump来重建会比较慢,测试了下,可以用mysqlbackup来做,直接从主库做全备过来恢复后,再配置主从关系即可。在现有环境中也用该方法来重建过,mysqlbackup可达到20G/MIN。新建从库也可以用mysqlbackup,省去了初始化从库的步骤。

步骤
1 主库做全备份
备份会锁myisam表,如master是生产库,需要注意,可留意业务进程是否有活动的。
mysqlbackup --defaults-file=/xxx/my.cnf --socket=/xxx/mysql.sock --user=root --password --with-timestamp --backup-dir=/xxx/

2 备份文件拷到从库主机,做恢复
保证从库的data和log目录为空,用从库的my.cnf进行恢复
恢复时可能也会将主库备份的binlog和my.cnf直接恢复到data目录下,可以清理掉

mysqlbackup --defaults-file=/xxx/my.cnf --backup-dir=/xxx/

3 启动从库

4 执行备份文件meta目录下backup_gtid_executed.sql文件的SET @@GLOBAL.GTID_PURGED语句

5 按标准change master to 

6 start slave。
可能会报ERROR 1872,可以reset slave后,再重新change master.
ERROR 1872 (HY000): Slave failed to initialize relay log info structure from the repository


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/22818880/viewspace-2073783/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/22818880/viewspace-2073783/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
搭建MySQL备库,您可以按照以下步骤进行操作: 1. 确保主库和备库的MySQL版本相同,并且两者的配置文件(my.cnf)也相同。 2. 在备库上创建一个与主库相同的数据库。可以使用以下命令在备库上创建数据库: ``` CREATE DATABASE database_name; ``` 3. 在备库上创建一个用于复制的MySQL用户,并为其授权。可以使用以下命令创建用户并授权: ``` CREATE USER 'replication_user'@'备库IP' IDENTIFIED BY 'password'; GRANT REPLICATION SLAVE ON *.* TO 'replication_user'@'备库IP'; ``` 请将 '备库IP' 替换为备库的实际IP地址,'password' 替换为密码。 4. 在备库上执行以下命令,配置主从复制: ``` CHANGE MASTER TO MASTER_HOST='主库IP', MASTER_USER='replication_user', MASTER_PASSWORD='password', MASTER_LOG_FILE='主库的binlog文件名', MASTER_LOG_POS=主库的binlog位置; ``` 请将 '主库IP' 替换为主库的实际IP地址,'password' 替换为密码,'主库的binlog文件名' 和 '主库的binlog位置' 替换为主库当前的二进制日志文件名和位置。 5. 启动备库的复制功能: ``` START SLAVE; ``` 6. 检查备库的复制状态: ``` SHOW SLAVE STATUS\G; ``` 在输出结果中,如果 Slave_IO_Running 和 Slave_SQL_Running 都显示为 "Yes",则表示备库已成功搭建。 通过以上步骤,您可以搭建MySQL备库并进行数据复制。备库将会与主库保持同步,以提供数据备份和灾难恢复的功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值