当前位置: 首页 » MYSLQ » Mysql主从同步(以window为例)

Mysql主从同步(以window为例)

mysql有4种不同的日志,分别是二进制日志,查询日志,慢查询日志和错误日志。

主数据库服务器地址:192.168.1.100

从数据库服务器地址:192.168.1.101

主服务器设置:
1、在mysql下找到my.ini文件,在其[mysqld] 下添加主服务器端配置:
port=3306
server-id=100
log-bin=mysql-bin
relay-log=relay-bin
relay-log-index=relay-bin-index

2、保存my.ini文件,重启数据库,然后会在C:\Program Files\MySQL\MySQL Server 5.5 下看到mysql-bin.index 文件和mysql-bin.000001文件;

3、给要连接的从服务器设置权限:grant replication slave,reload,super on *.* to slave@192.168.1.101 identified by ’123456′;     ps: 给主机192.168.1.193添加权限,用户名:slave,密码:123456;(只需输入一次就可以了)

4、输入命令 show master status;       # 找到File 和 Position 的值记录下来;
类似 mysql.000002       107  tianxi

从服务器设置:
1、在mysql下找到my.ini文件,在其[mysqld] 下添加主服务器端配置:
port=3306
server-id = 101
replicate-do-db = tianxi

2、从服务器上测试:mysql -u slave -p 123456 -h 192.168.1.100,查看能否连接主数据库成功,如果成功,则一定要退出来,之前我就是一直犯了一个错误,按照网上的步骤测试完毕之后就没有退出mysql,结果执行以下步骤时老是报错,其原因是一直设置的是主数据库;

3、设置连接参数:
mysql>change master to master_host=’192.168.1.100′,master_user=’root’,master_password=’root’, master_log_file=’mysql-bin.000002′,master_log_pos=107;  ps:可能会报一个错误,大概的意思是说slave线程正在运行,不能设置,这样的话,执行mysql>stop slave; 停止slave线程,然后再设置连接的参数;

4、mysql> start slave; 开启slave线程;执行mysql> show slave status\G   (没有分号),查看
Slave_IO_Running: Yes
Slave_SQL_Running: Yes

看到这里就成功了。

请尊重我们的辛苦付出,未经允许,请不要转载 本站 的文章,鄙视各种无耻的采集行为!