Mysql之主从复制
Posted afeige
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mysql之主从复制相关的知识,希望对你有一定的参考价值。
主服务器IP :192.168.153.143
从服务器IP :192.168.153.144
配置步骤:
1、确保主数据库与从数据库一模一样
2、在主数据库上创建同步账号。
mysql > GRANT REPLICATION SLAVE,FILE ON *.* TO ‘msuser‘@‘192.168.253.144‘ IDENTIFIED BY ‘123456‘;
mysql > flush privileges;
192.168.153.144: 运行使用该用户的IP地址
msuser:是新创建的用户名
123456:是新创建的用户名的密码
3、配置主数据库的my.ini(因为是在window下,所以是my.ini不是my.cnf)
[mysqld]
server-id=143 //方便区分
log-bin=msql-bin //二进制日志文件 msql-bin.xxxxxx
binlog-format=mixed //二进制文件格式 row/statement//mixed
//row 二进制记录的是磁盘变化 (磁盘变化少)
//statement 二进制记录执行语句,如insert...(磁盘变化大)
binlog-do-db=mstest //要同步的mstest数据库,要同步多个数据库,就多加几个replicate-db-db=数据库名
binlog-ignore-db=mysql //要忽略的数据库
配置完成 重启mysql
4、配置从数据库的my.cnf。
[mysqld]
server-id=144
log-bin=log //二进制日志文件 mysql-bin.xxxxxx 起备份作用
relay-log=mysql-relay //二进制日志文件 mysql-relay.xxxxxx日志
master-host=192.168.153.143
master-user=msuser //第一步创建账号的用户名
master-password=123456 //第一步创建账号的密码
master-port=3306
master-connect-retry=60
replicate-do-db=mstest //要同步的mstest数据库,要同步多个数据库,就多加几个replicate-db-db=数据库名
replicate-ignore-db=mysql //要忽略的数据库
配置完成 重启mysql
从服务器需要进行跟踪
mysql > change master to
> master_host = ‘192.168.153.143‘
> master_user = ‘msuser‘,
> master_password = ‘123456‘,
> master_log_file=master-bin.000019, //在主服务器中show master status;查看file并替换此处
> master_log_pos = 352; //在主服务器中show master status;查看position并替换此处
5、启动主从
mysql > start slave;
6、验证是否成功
mysql > show slave status \\G
如果slave_io_running和slave_sql_running都为yes,那么表明可以成功同步了
6、测试同步数据。
进入主数据库输入命令:
use city;
insert into city(name) values(‘beijing‘);
然后进入从服务器数据库输入命令:select * from city;
如果此时从数据库有获取到数据,说明同步成功了,主从也就实现了
以上是关于Mysql之主从复制的主要内容,如果未能解决你的问题,请参考以下文章