准备两台装有mysql的虚拟机,且两台可以互通
然后我们打开主的mysql配置文件
添加修改:
log-bin=Jerry-bin |
开启二进制文件bin-log日志。可以任意指定其前缀名称,比如Jerry |
log-slave-update=true |
slave执行master的sql语句,讲sql语句记录在binlog日志当中 |
binlog-do-db=WorldOfWarcraft |
指定bin-log日志记录的是哪个库。也可以理解为允许从数据库同步哪个库。 |
binglog-ignore-db=mysql |
指定bin-log日志不记录哪个库。也可以理解为不允许从数据库同步哪个库。 |
server-id = 11 |
指定数据库服务器的ID编号,不可以是0,否则会拒绝所有从服务器的连接请求。还有需要注意的是从服务器一定要比主服务器的数字大。 |
重启mysql服务
登录到数据库当中
登录到数据库,进行授权
查看主数据库状态
防火墙放行3306端口
来到从服务器进入到mysql的配置文件
添加修改:
log-bin=mysql-bin |
开启二进制文件bin-log |
replicate-do-db=WorldOfWarcraft |
指定去同步哪个库 |
replicate-ignore-db=mysql |
指定不去同步哪个库 |
server-id=13 |
要比主的id编号数字大 |
重启MYSQL服务
登录到数据库
停止掉slave状态
对slave进行与主服务器同步状态设置
格式:change master to master_host=’主的IP地址’,master_user=’从用户名’,master_password=’从的密码’,
master_log_file=’刚才查询到的主上的二进制文件’,master_log_pos=主的pos号码;
这次我们再开启slave
查看当前slave状态
然后我们再主数据库中创建指定库
来到从数据库中进行查看
互为主从(双主):
在主服务器B上配置
添加:
重启MYSQL服务
防火墙放行3306端口
登录到数据库
进行授权
查看主数据库状态
来到从服务器A上配置
修改添加
重启MYSQL服务
登录到MYSQL数据库中
暂停slave状态
对slave进行与主服务器同步状态设置
启动slave
查看当前slave状态
在主数据库B上 创建ABC库
在从数据库A上 查看
在主数据库A上切换到指定库,创建表,添加数据
在从数据库B上查看
在主数据库B上转到ABC库,添加表,添加数据
在从服务器A上查看