安装mysql的主从架构
- 先决定我的服务器上的mysql为主,虚拟机上的为从.
- 编辑主mysql的/etc/my.cnf
- 配置从mysql服务器
### 编辑主mysql的/etc/my.cnf
### edit by guang
### 2017-07-22
### make a server-id for master mysql .server-id = ip_tail(3) --给master mysql 设置一个server-id=ip后面三位数
### make log-bin for master mysql --给master mysql 设置一个log-bin
server-id=102
log-bin=mysql-bin
binlog-format=mixed
### 配置从mysql服务器
### edit by guang
### 2017-07-22
### make a server-id for master mysql .server-id = ip_tail(3) --给master mysql 设置一个server-id=ip后面三位数
### make log-bin for master mysql --给master mysql 设置一个log-bin
server-id=131
log-bin=mysql-bin
binlog-format=mixed
relay-log=mysql-relay
重启主和从的mysql,然后可以看到
[guang@www mysql]$ ls
auto.cnf guang ibdata1 ib_logfile0 ib_logfile1 mysql mysql-bin.000001 mysql-bin.index mysql.sock performance_schema
[guang@www mysql]$ more mysql-bin.000001
mysql-bin.000001: Permission denied
[guang@www mysql]$ sudo more mysql-bin.000001
þbinfMrYf
mysql> show master status;
+------------------+----------+
| File | Position |
+------------------+----------+
| mysql-bin.000001 | 120 |
+------------------+----------+
1 row in set (0.01 sec)
bin-log顺利生成;
然后查看从mysql的服务
mysql> show slave status;
Empty set (0.00 sec)
发现为空(这是正常的,别慌)
主mysql服务器创建授权账号
grant replication client,replication slave on *.* to repli@'%' identified by 'Repli@123456';
使用被分配的账号密码连接主mysql服务器(master_log_file和maeter_log_pos的配置要根据 show master status来填写)
change master to
master_host='192.168.0.102',
master_user='repli',
master_password='Repli@123456',
master_log_file='masql-bin.000001',
master_log_pos=339;
启动从服务器
start slave ;
查看从服务器的启动情况
show slave status \G
tips:如出现报错,根据报错信息按图索骥~