mysql 5.6.16-64.0安装主从
192.168.5.248 ---主
192.168.5.53 ---从
第一次搭建主从环境的时候,发现主从id一样,均为1;
mysql> show variables like'server_id';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| server_id | 1 |
+---------------+-------+
但是我明明改了/etc/my.cnf配置文件的呀,为什么没有生效,于是在全局,命令行改了server-id
mysql> set global server_id=5248; ---主
mysql> set global server_id=553; ---从
最后实现了主从同步。
经过第二次搭建主从环境的时候发现,不是‘server_id’写成了‘server-id’,而是我自己把这个参数的位置写错了,在5.6的版本中,[mysql]下的#relication这个分类里有‘server-id’和‘log-bin’,这两个参数都有,其中‘log-bin’这个参数已经给了,当然自己也可以改,之前我是把‘server-id’这个参数的值加到了[mysql]下的#skip-grant-table下空一行的位置处,结果开启主从后,io线程是no的状态,之后经过查找资料,发现‘server-id’之间应该加下划线,于是把这个地方更正了过来,之前我主从设置的1和2,之后翻阅资料,发现server-id应该和IP地址相挂钩,所以将此值改为了5248和553(这里的原则是,IP主从因为地址的后8位,只要唯一,主从不相冲突就行),但奇怪的是,更改完后重启主从服务后,两个主从因为授权的问题而无法登陆到本地的root了。
总结,1、搭建主从的时候要把这些个参数的值添加到[mysql]下的#replication下,默认有写明位置,只需要追加值进去即可;
2、server-id的真实写法就是中间是一横杠,不是下划线,而且对他的值有个默许的设定规则,是关于IP的,推荐用IP地址的后几位,如192.168.X.XXX,就用后面的‘X’标识的几位就可以。