mysql主从复制读写分离(读写分离正在研究)

2019-05-29 10:10:14

不要问我叫什么,只是我的代码搬运工
准备两台虚拟机

  1. 192.168.18.144
  2. 192.168.18.145

因为我是Centos7.3自带的mysql所以不需要在安装mysql直接
进入主mysql(192.168.18.144)的配置文件进行更改
vim /etc/my.cnf
在配置文件中加入值最好不要是1因为网上好多都是建议的写1可能会
遇到一些问题所以最好配置一个不太常用的数字
server-id用于标识该语句最初是从哪个服务器写入的
log-bin启动MySQL二进制日志,即数据同步语句,从数据库会一条一条的执行这些语句
.binlog-ignore-db不需要同步的数据库还可以通过设置binlog_do_db指定需要同步的数据库

  1. server-id=18144
  2. log-bin=/var/lib/mysql/binlog
  3. binlog-ignore-db=mysql

更改配置文件需要对mysql进行重启
我是自带的mysql直接

  1. service mysqld restart

然后进入MySQL的对进行机从权限的赋值
展示进入MySQL的

  1. mysql -u mysql账号 -p 密码

给从机赋权限

  1. GRANT REPLICATION SLAVE ON *.* to 'rep1'@'192.168.18.145' identified by 'test123456';

查看主数据库状态

  1. show master status;

记录这两个参数需要在从机

配置主机的配置已经好了

下面进入从机的配置
和主机相似进入my.cnf配置一个server-id不要和主机重复接着重启mysql服务
进入mysql命令执行

  1. change master to
  2. master_host='192.168.18.144',
  3. master_user='rep1',
  4. master_password='test123456',
  5. master_log_file='binlog.000002',
  6. master_log_pos=442;
  7. //之后输入启动slave
  8. start slave;
  9. //查看从服务器状态
  10. show slave status\G

这两个参数必须为是如果不为是去mysql启动日志查看错误进行解决

  1. cat /var/log/mysqld.log

自我理解:我这边因为是相同的虚拟机mysql都是一样的mysql都有一个uuid的标识每个mysql的不能相同

需要去mysql的auto.cnf文件修改一下uuid
如果不知道auto.cnf文件在哪可以找/ -name auto.cnf
修改过后重启mysql会发现

都是是可以进行一波测试了就对主库进行各种操作;

新手上路大佬指点
读写分离正在研究


1
1
0

添加评论

正在回复:
取消
0
1
1
0