MySQL主从复制搭建教程

来源:互联网 发布:mac外接显示器如何设置 编辑:程序博客网 时间:2024/05/16 20:55

一、安装Mysql

1.本地首先需要搭建一套mysql,可以使用集成环境。

2.需要单独在搭建mysql,用来做主从复制

3.解压安装包 [mysql-5.6.24-win32.1432006610.zip]

4.配置 mysql环境变量 ( 修改PATH,添加 D:\MysqlServer5.6\bin )

5. D:\MysqlServer5.6 目录下新建my.ini 配置文件

#mysqld 配置

port=3307

basedir=D:\Mysql_Server_5.6.24

datadir=D:\Mysql_Server_5.6.24\data

#日志配置

log-error=D:\MysqlServer5.6\logs\error.log

log=D:\MysqlServer5.6\logs\mysql.log

long_query_time=2

log-slow-queries=D:\MysqlServer5.6\logs\slowquery.log

6.使用管理员打开CMD窗口。

MySQL主从复制搭建教程

跳转到mysql的bin目录:

mysqld -install

MySQL主从复制搭建教程

7.启动mysql服务。

net start mysql 启动mysql服务

Net stop mysql 停止mysql服务

MySQL主从复制搭建教程

MySQL主从复制搭建教程


二、配置Mysql主从复制

1.添加一个mysql主从复制需要的账号

grant 权限 on 数据库对象 to 用户

GRANT REPLICATION SLAVE,RELOAD,SUPER ON *.*

TO mysql_backup@'*'

IDENTIFIED BY '123456';

flush privileges;

2.配置主服务器

mysql配置文件加入:

server-id=1

log-bin=mysql-bin

server-id:为主服务器A的ID值

log-bin:二进制变更日值

重启master,运行SHOW MASTER STATUS,输出如下:

MySQL主从复制搭建教程

3.配置从服务器

Slave的配置与master类似,你同样需要重启slave的MySQL。如下:

log_bin = mysql-bin

server_id = 2

relay_log = mysql-relay-bin

log_slave_updates = 1

read_only = 1

server_id是必须的,而且唯一。slave没有必要开启二进制日志,但是在一些情况下,必须设置,例如,如果slave为其它slave的master,必须设置bin_log。在这里,我们开启了二进制日志,而且显示的命名(默认名称为hostname,但是,如果hostname改变则会出现问题)。

relay_log配置中继日志,log_slave_updates表示slave将复制事件写进自己的二进制日志(后面会看到它的用处)。

有些人开启了slave的二进制日志,却没有设置log_slave_updates,然后查看slave的数据是否改变,这是一种错误的配置。所以,尽量使用read_only,它防止改变数据(除了特殊的线程)。但是,read_only并是很实用,特别是那些需要在slave上创建表的应用。

#链接主库

CHANGE MASTER TO master_host = '127.0.0.1',

master_user = 'mysql_backup',

master_password = '123456',

master_log_file = 'mysql-bin.000001',

master_log_pos = 3696;

#启动从库

Start slave

#停止从库

Stop slave

#查看从库状态

Show slave status

MySQL主从复制搭建教程

0 0