MySQL主从复制配置与实现

-> 首先配置master服务器

-> 下载MySQL(可以下载免安装版)
-> 修改配置文件(windows下的my.ini)
启用二进制日志、设置id、添加复制权限用户(下面源码文件中有说明)
关闭防火墙,保证机器之间能ping通;
->配置MySQL的服务
添加服务
>命名名字 --install 服务名字 --defaults-file="配置文件路径"
>mysqld.exe --install Mysql55 --defaults-file="my.ini"
删除服务
>sc delete Mysql55
->登录root账户
>mysql -u root -p
创建用户
>create user zebra
分配权限
>grant replication slave on *.* to zebra identitified by ‘密码‘;

从服务器连接主服务器

>mysql -u zebra -p -h 192.168.0.1
-> 配置环境变量
-> 安装服务
-> 配置Slave服务器
除my.ini文件不相同外,其他步骤同上
-> 连接到master
>change master to master_host=‘192.168.0.1‘,master_port=3306,master_user=‘zebra‘,master_password=‘123456‘;
开启从服务器

>start slave;

主服务器my.ini文件

[client]
port=3306
default-character-set=utf8

[mysqld]
port=3306

character_set_server=utf8
#character_set_server=utf8 一定要这样写;

basedir=C:\Program Files\MySQL\mysql-5.6.16-win32
#解压目录

datadir=C:\Program Files\MySQL\mysql-5.6.16-win32\data
#解压目录下data目录,必须为data目录

#sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES 这个有问题,在创建完新用户登录时报错
sql_mode=NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION


#主服务器的配置
#开启二进制日志
log-bin=master-bin
#使用二进制日志的索引文件
log-bin-index=master.bin.index
#为服务器添加唯一的编号
server-id=1
从服务器my.ini

[client]
port=3306
default-character-set=utf8

[mysqld]
port=3306

character_set_server=utf8
#character_set_server=utf8 一定要这样写;

basedir=C:\Program Files\MySQL\mysql-5.6.16-win32
#解压目录

datadir=C:\Program Files\MySQL\mysql-5.6.16-win32\data
#解压目录下data目录,必须为data目录

#sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES 这个有问题,在创建完新用户登录时报错
sql_mode=NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

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

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。