前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >MySQL 主从恢复记录

MySQL 主从恢复记录

作者头像
Laikee
发布2023-10-18 13:53:24
1330
发布2023-10-18 13:53:24
举报
文章被收录于专栏:Laikee Tech SpaceLaikee Tech Space

流程

过程大致如下:

  • 从主库找到备份文件,放到从库服务器。
  • 恢复数据到从库
  • 设置MySQL还原点
  • 启动从库开始主从复制

连接数据库

先连接主库 mysql -uroot -p

切换数据库(或者不切换也行)

use yourdatabase;

停止主从复制

代码语言:javascript
复制
stop slave;
reset slave all;

设置写入缓存大小。提高mysql导入速度。(和磁盘IO差不多就行)

set global bulk_insert_buffer_size=128*1024*1024;

恢复数据 (根据自己的备份方式恢复)

source /bakfile

找到mysql binlog 备份点 (在linux 下面执行,其他操作系统同理)

代码语言:javascript
复制
less  /bakfile 

找到

代码语言:javascript
复制
-- CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin-190.000640', MASTER_LOG_POS=120;
/*获取时间binlog文件名和pos*/

注意,实际可能并不需要这样,直接在主库执行: show master status

1668453592882.png
1668453592882.png

取得了bin-log和pos后直接修改从库,pos其实可以为0,会自动follow。

修改从库同步位置

代码语言:javascript
复制
CHANGE MASTER TO 
MASTER_HOST='10.251.192.18', 
MASTER_USER='sync', 
MASTER_PASSWORD='DBect98773!_sync', 
MASTER_PORT=3306,
MASTER_LOG_FILE='mysql-bin-190.000640',
MASTER_LOG_POS=120;

修改缓存。启动复制

代码语言:javascript
复制
set global bulk_insert_buffer_size=8*1024*1024;
start slave ;

查看主从同步状态

show slave status \G;

如果有问题。查看mysql 错误日志。

同步开始后可能会有少量的冲突出现 ,使用下面语句可以跳过一个事务并查看同步状态

代码语言:javascript
复制
stop slave;
SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 1 ;
start slave ;
show slave status \G;
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2022-11-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 流程
    • 连接数据库
      • 切换数据库(或者不切换也行)
        • 停止主从复制
          • 设置写入缓存大小。提高mysql导入速度。(和磁盘IO差不多就行)
            • 恢复数据 (根据自己的备份方式恢复)
              • 找到mysql binlog 备份点 (在linux 下面执行,其他操作系统同理)
                • 修改从库同步位置
                  • 修改缓存。启动复制
                    • 查看主从同步状态
                      • 如果有问题。查看mysql 错误日志。
                        • 同步开始后可能会有少量的冲突出现 ,使用下面语句可以跳过一个事务并查看同步状态
                        相关产品与服务
                        云数据库 MySQL
                        腾讯云数据库 MySQL(TencentDB for MySQL)为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。其具备6大企业级特性,包括企业级定制内核、企业级高可用、企业级高可靠、企业级安全、企业级扩展以及企业级智能运维。通过使用腾讯云数据库 MySQL,可实现分钟级别的数据库部署、弹性扩展以及全自动化的运维管理,不仅经济实惠,而且稳定可靠,易于运维。
                        领券
                        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档