mysql主从复制

环境准备:

1.master:192.168.60.104 mysql 3306

2.slave: 192.168.60.105 mysql 3306

注意:需要确保mysql版本一直。

步骤:

一、配置master上mysql的my.ini

[mysqld] 中增加如下代码:

server-id=1 #给数据库服务的唯一标识,一般为大家设置服务器Ip的末尾号

log-bin=mysql-bin

log-bin-index=master-bin.index 

添加完毕后通过控制台停止和重启mysql服务

打开控制台输入mysql -u root -p  回车(如果没有添加mysql的环境变量,那么在在环境变量的地方将Mysql的安装地址加进去即可,注意的是;一定要有),输入密码如果返回如下图,则成功

如果返回的是如下图的错误提示,则运行mysqladmin -uroot password root这个命令,然后重新登录,应该就可以解决那个问题了。

 

 

然后我们通过命令进行mysql服务的停用和重启操作

停用服务  net stop mysqlse

重启服务 net start mysqlse

在控制台输入show variables like 'server_id'; 回车,确认一下我们更改的server_id是否是1

在控制台输入show master status; 回车,将查询的东西我们记录下 File 和 Position的值,在设置从库的时候将会用到

二、配置slave的my.ini

[mysqld] 中增加如下代码:

server-id=2
relay-log-index=slave-relay-bin.index
relay-log=slave-relay-bin  

设置完毕后然后保存,具体操作和主库一致,也就是停止和重启服务,

将这些操作全部做完之后再执行一个命令 stop slave

将我们刚才记录的主库 File 和 Position的值 

master-bin.000003和107复制到下面这段代码中进行替换

1 change master to master_host='192.168.60.104',
2 master_port=3306,
3 master_user='root',
4 master_password='123456', 
5 master_log_file='master-bin.000002',
6 master_log_pos=107;

替换完毕后,复制到控制台并执行,如果执行成功这回返回Query Ok,0 rows affected  巴拉巴拉之类的话,

然后重启slave,在控制台执行 start slave;启动成功后,在控制台执行show slave status\G; 查看一下slave的运行状态,如果全部设置成功,那么

Slave_IO_Running:Yes  

Slave_SQL_Running:Yes

如图所示:

如果失败,则根据提示进行更改。

测试就不说了。

 

posted @ 2017-12-28 10:16  。低调ヽ继续  阅读(305)  评论(0编辑  收藏  举报