首先我的环境是:第一台服务器Ubuntu14.04安装 MySQL5.6(主) 第二台服务器ubuntu14.04安装 mysql5.5(从) 做以下操作之前必须你已经安 了mysql
注意:我是两台mysql版本不同的,(建议装相同的版本);
mysql(主)设置my.cnf
1:在ubuntu命令模式下 查询出 my.cnf的 位置 输入 :
sudo find / -name my.cnf
2:得到my.cnf的路径
/etc/mysql/my.cnf
3:用命令打开my.cnf
sudo vi /etc/mysql/my.cnf
4:修改my.cnf里面的配置,进到vi编辑里面输入
/server-id 光标定位到 #server-id=1这个位置 修改成以下配置
server-id=1 (将这个前面的#去掉 这是主mysql服务器的id)
log_bin=/var/log/mysql/mysql-bin.log (将这个前面的#号去掉,这是记录修改数据库的命令文档)
binlog_do_db=填你要主从的数据库名字 (将这个前面的#号去掉,填你要主从的数据库名字)
binlog_checksum=NONE (增加这个,因为主从mysql 版本不同,不加这个后面从mysql会报错连接不上主mysql ,如果两台mysql版都一致可能就不需要增加这条,)
保存退出重启mysql 命令 sudo service mysql restart
5:创建远程连接数据库的账号
grant all PRivileges on *.* to 创建的用户名 @"%" identified by "密码";
6:进入mysql
mysql -u root(这是你的数据库账号) -pshow master status;则能看到对应得file position 信息,这些在从机设置的时候要用到。
mysql(从)设置my.cnf
1:按照上面步骤找到my.cnf修改这个文件
修改内容如下
server-id=2
log_bin=/var/log/mysql/mysql-bin.log
replicate_do_db=这里填写刚才填binlog_do_db的那个数据库名称
2:重启下mysql
sudo service mysql restart
3:进入mysql:
mysql -u root(这是你的数据库账号) -p 回车 输入密码
stop slave然后设置从主复制日志配置
change master to master_host='主mysql服务器ip地址' ,master_user='创建的用户名',master_passWord='密码',
master_log_file='mysql-bin.000006',master_log_pos=120;
master_log_file和master_log_pos是上图的参数,一定要填对start slave;
show slave status/G
两个都是yes就成功了;
新闻热点
疑难解答