mysql主从复制-阿里云开发者社区

开发者社区> 数据库> 正文

mysql主从复制

简介: mysql主从复制

前提:三年前双11买的阿里云今年到期了,win2012的,上面mysql数据库里记着自己的一些记账数据,上一年双11买了腾讯云的,centos7.7, 想学学MYSQL的复制功能,今天趁着无BUG可撸,试着配置了一下,成功,在阿里云上的部署的网站写入数据,可同时复制到腾讯云上了,以下是配置步骤:

  1. 远程桌面登录阿里云服务器,打开sqlyog 执行select version()查看版本号

1.png

  1. 停掉MYSQL服务,看配置文件 "C:ProgramDataMySQLMySQL Server 8.0my.ini" 里的[mysqld]下的配置,记下来:

log-bin="iZwz95a6wosz6ka-bin"
server-id=1

  1. 再启动MYSQL服务,通过命令行登录 上MYSQL,执行:show master status, 记下结果 :

名称:iZwz95a6wosz6ka-bin.000007 位置:155

  1. 阿里云MYSQL做为主库,创建可供远程复制的账号,因为是MYSQL 8.0的,得拆分成二条语句来执行,先建立账号,再设置权限

create user 'replic_user'@'%' identified by 'copypassword';
grant replication slave,replication client on . to 'replic_user'@'%' ;

  1. 用sqlyog里的导出功能把niunan数据库整个全部导出,弄到本地备份,至此主库的操作完成, 下面要在腾讯云的从库上进行操作
  2. 重新开始,上腾讯云网站给服务器重新系统,centos 7.7, 装完后用xshell登录进去,根据宝塔网站(https://bt.cn/)的安装教程安装 宝塔面板 ,在宝塔里的软件商店再安装MYSQL8。0 (因为之前自己测试用命令安装 MYSQL真的好慢好慢,根本就下载不了,yum install mysql)
  3. 把第五步备份的文件传到/root目录下,在xshell 里mysql -u root -p 登录 MYSQL, source /root/niunandb.sql 导入牛腩数据库
  4. 在宝塔上修改MSYQL的配置文件,[mysqld]下,改完后重启下服务

log_bin=iZwz95a6wosz6ka-bin
server_id=2
relay_log=/path_to_mysql_log/mysql-relay-bin
log_slave_updates=1
read_only=1

记得要建立/path_to_mysql_log目录

  1. 在xshell里mysql -u root -p 登录 MYSQL,执行命令设置主库连接的用户名和密码:
  2. master to master_host='120.78.185.96',master_port=3306,master_user='replic_user',master_password='copypassword',master_log_file='iZwz95a6wosz6ka-bin.000007',master_log_pos=155

那个最后二个参数是第三步里记下来的玩意,运行后发现错误了,没有权限什么的,最后直接在FTP里给那个path_to_mysql_log目录设置777权限 就行了

运行命令启动 : start slave;
运行命令查看状态: show slave status;

3.png
4.png
5.png

  1. 在阿里云部署的网站上测试一下,插入几条数据,然后再跑到腾讯云上查询看看,发现成功了,刚刚插入的数据已经同步到腾讯云!!!

8.png
9.png

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
数据库
使用钉钉扫一扫加入圈子
+ 订阅

分享数据库前沿,解构实战干货,推动数据库技术变革

其他文章