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
步骤
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/