今天测试linux的主从搭建流程
在这之前要注意关闭防火墙,linux需要配置my.cnf文件,从库的ip为:192.168.209.200,主库IP为192.168.209.150
话不多说开始
一、主库配置
1:选取一台当做主库,我在这里选择的是linux的,选取之后开始配置主库,
用vim打开my.cnf配置文件,在文件结尾添加
server-id=1 [必须]主服务器唯一ID
read-only=0 [必须]是否只读,1代表只读,0代表读写
log-bin=自己本地的路径/mysqlbin[必须]启用二进制日志
log-err=自己本地的路径/mysqlerr[可选]启用错误日志
basedir=“自己本地路径”[可选]根目录
tmpdir=“自己本地路径”[可选]临时目录
datadir=“自己本地路径/Data/”[可选]数据目录
binlog-ignore-db=mysql[可选]设置不要复制的数据库
binlog-do-db=需要复制的主数据库名字[可选]设置需要复制的数据库
这里我添加的是前两个
然后保存退出
2、重启mysql服务
systemctl restart mysql或者service mysql restart
3、登录mysql,创建远程连接账号,并授予主从复制权限
create user 'itcast'@'%' identified with mysql_native_password BY 'Root@123456';
指令解析:itcast:创建的用户名。%:创建的用户可以在任意主机访问当前服务器。Root@123456;用户密码
GRANT REPLICATION SLAVE ON *.*TO 'itcast'@'%';
4、查看二进制文件坐标
show master status;
主库配置就到此结束了,接下来从库配置
二、从库配置
1、在从库中的配置文件进行添加
2、配置之后重启mysql服务
systemctl restart mysql或者service mysql restart
3、登录mysql查看从库ID
show variables like 'server_id';
如果ID不对要进行修改:set global server_id=2;
4、登录mysql,设置主库配置
查看数据库版本: select version();
change master to master_host='xxx.xxx10',master_user='xxx2',master_password='xxx3',master_log_file='xxx4',master_log_pos=xxx5;
命令解析:xxx.xxx10:主库ip地址。xxx2:主库用户名。xxx3:主库密码。xxx4:主库对应的二进制文件,比如刚才查到的文件名是binlog.000022。xxx5:主库的Position字段,如主库查询的是654
5、开启主从同步
小知识:主从关闭命令:STOP SLAVE;
6、查看主从同步状态
用上面命令查询比较乱,可以在命令后面加\G,如:show slave status\G;
三、测试
打开客户端软件,在主库创建一个数据库,刷新之后发现从库也会自动创建一个,然后进行创建表,插入修改数据等操作,看从库数据是否也会变化