Mysql主从配置,ubuntu14,centos 7,mysql5.5.45

在VM虚拟机下安装了Centos 7和Ubuntu 14。

Centos 7 手动安装的MySQL 5.5.45 (5.5以上版本要用cmake编译)

Ubuntu 14 则 apt-get install mysql-server mysql-client php5-mysql 安装的是也是MySQL 5.5.45

 

查看ip地址:

主IP:192.168.116.206

从IP: 192.168.116.205

 

1.先在主服务器上创建一个测试数据库和账号:

刷新权限表,

添加授权信息,允许从服务器读取mysql日志;

 

将主服务器的testdb导出sql文件,然后导入从服务器;

 

在从服务器上测试连接主服务器,

发现出现连接错误,ip地址能ping通,但是连接不上,于是查看主my.cnf,

发现my.cnf 配置了bind_adress=127.0.0.1的,于是注释掉,重启mysql即可。

 

 

2.修改主服务器的my.cnf配置信息

server_id =1 

log-bin=mysql-bin

binlog-do-db=testdb      #允许复制的数据库名称,一行代表一个数据库

binlog-ignore-db=mysql #不复制的数据库

重启,

然后show master status;

看到file和position,记录下来,后面需要用到。分别是mysql-bin.000002和107

 

 

在从服务器的my.cnf上,修改配置,添加

server_id=2

log-bin=mysql-bin

replicate-do-db=testdb

replicate-ignore-db=mysql

 

然后关闭slave同步进程

slave stop;

change master to master_host='192.168.116.206',master_user='backuser',master_password='123456',master_log_file='mysql-bin.000002',master_log_pos=107;

slave start;

查看状态:show slave status;

注意看 slave_io_running:yes 和slave_sql_running:yes 说明能正常同步了。

 

 

测试,主服务器创建一个表 user_info

 

 

 

从服务器已经自动同步了!

 

使用分布式mysql数据库时,
my.cnf必须去掉bind_address=127.0.0.1,注释掉即可。

然后更改mysql的权限,进入mysql命令端,
use mysql;
把root账户的localhost改为%
update mysql.user set host="%" where user=root;
接着刷新下权限;
flush privileges;

 

posted @ 2015-11-17 16:40  fover的天地  阅读(484)  评论(0编辑  收藏  举报