linux 下 mysql 主从库配置 - Go语言中文社区

linux 下 mysql 主从库配置


1.设置主数据库(假设主库服务器192.168.0.1,从库服务器192.168.0.2)
在主库服务器
找到my.cnf,在[mysqld]下添加以下代码

log-bin=/var/lib/mysql/binlog
server-id=1

在这里插入图片描述
保存后重启mysql

2.新增一个用户,用来在从库访问主数据库
create user slave;
给slave用户开启从库权限,并设置你的从库IP和访问密码, 代码如下:

 GRANT REPLICATION SLAVE ON *.* TO 'slave'@'192.168.0.%' IDENTIFIED BY 'password';
 //ip里%为通配符
 flush privileges;   //刷新生效

这时可以在从库服务器尝试访问主数据库

mysql -h 192.168.0.1 -uslave -ppassword  -P 3306 // password换成你的密码

3.保证主从库初始数据一致,导出主库数据到从库
在主库服务器上:

mysqldump -uroot -ppassword  dbname > dbname.sql  //dbname 你要导出的库名
scp master.sql root@192.168.0.2:/root/  //传输文件到从库服务器

在从库服务器上:

mysql -uroot -p dbname<dbname.sql  //导入你的数据文件如果没有数据dbname,先创建一个和主库一样的dbname, create database dbname;

4 配置从库服务器的配置文件
打开从库服务器的my.cnf,在[mysqld]下面添加以下代码

  server-id=2
  relay-log-index=slave-relay-bin.index
  relay-log=slave-relay-bin

保存退出,重启mysql

5 . 在从库开启slave服务
在主库mysql执行show master status;查看以便下面使用
登入从库mysql,执行

chang master to 
master_host='192.168.0.1',  //设置你自己的主库ip
master_port=3306,master_user='slave', //
master_password='password',
master_log_file='binlog.000001', //填show master status 查看的值
master_log_pos=245;  //填show master status 查看的值

执行完成显示Query OK,开启从库服务执行命令

   slave start;  // 开启从库服务
   show slave statusG;查看从库状态

看到如下,则为成功,如Slave_IO_Running:connecting 或其他则失败,需要检查你的配置
在这里插入图片描述
配置完成,开始实验吧,修改主库数据,看从库数据是否变化。

版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/liji0611/article/details/89339955
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2021-04-10 19:49:21
  • 阅读 ( 1055 )
  • 分类:数据库

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢