MySQL主从复制配置
MySQL版本5.5.58
第一步配置主机
主机配置如下:
server-id = 1 #服务器id (主从必须不一样) log_bin = mysql-bin #打开日志(主机需要打开),
这个mysql-bin也可以自定义,这里也可以加上路径,如:/home/www/mysql_bin_log/mysql-bin
#作为主机的配置 binlog-do-db = test #要给从机同步的库 binlog-ignore-db = mysql #不给从机同步的库 binlog-ignore-db = performance_schema #不给从机同步的库 binlog-ignore-db = information_schema #不给从机同步的库 expire_logs_days = 2 # 自动清理 2 天前的log文件,可根据需要修改
第二步查看主服务器状态
在主服务器上的MySQL中 执行 show master status; 下面会用到
开始配置从服务器
第三步打开从服务器
在从服务器上的MySQL中 执行
change master to master_host='192.168.1.121',master_user='root',master_password='root',master_log_file='mysql-bin.000002',master_log_pos=554;
第四步从服务器配置
#作为从机的配置
server-id = 2 master-host = 192.168.1.121 # 目标主机IP master-user = root # 目标主机用户名 master-password = root # 目标主机密码 master-port = 3306 # 目标主机端口 master-connect-retry = 60 # 链接重连间隔(单位s) replicate-ignore-db = mysql # 不从主机同步的数据库(多个写多行) replicate-do-db = test # 要从主机同步的库(多个写多行) log-slave-update # 启用从机服务器上的slave日志功能,使这台计算机可以用来构成一个镜像链(A->B->C) slave-skip-errors # 跳过错误,从机一般应该配置该项
第五步执行
从服务器执行start slave
完成!!!
温馨提示
从服务器执行 show slave status;
当Slave_IO_Running与Slave_SQL_Running都为Yes时才算配置成功,不成功就看日志
相关MySQL命令
show slave status\G; //在从机上查询从机状态 show master status\G; //在主机上查询主机状态 show master logs;//在从机上查询主机二进制log文件列表 show binary logs; //查看主机二进制log文件列表 flush logs; //提交日志(就是新生成一个二进制log文件) reset master;//清除之前所有的二进制log文件,并且新的log文件后缀将从 000001 开始 slave stop; //从服务器停止 reset slave; //从服务器重启 slave start; //从服务器执行