mysql主从复制
准备两台安装好mysql的服务器。
主:192.168.1.13
从:192.168.1.14
一、主机的配置文件修改为如下:
server-id = 1
log_bin = master-bin
log_bin_index = master-bin.index
binlog_do_db = test_copy
binlog_ignore_db = mysql
进入mysql,创建用户:yxbcopy
CREATE USER 'yxbcopy'@'192.168.1.%' IDENTIFIED BY '1234';
处理办法为:set global validate_password_special_char_count=0;
继续:set global validate_password_length=4;
查看刚才修改的内容:SHOW VARIABLES LIKE 'validate_password%';
再试试,ok成功了。
很重要的一步,给该创建的用户授予权限: grant replication slave on *.* to 'yxbcopy' @'192.168.1.%' identified by '1234';
退出,重启。systemctl restart mysqld
重新进入mysql show master status;记住这两个参数,等等从服务器需要使用到。
二、从服务器的配置
vi /etc/my.cnf,加入配置信息:
server-id = 2
relay-log = slave-relay-bin
relay-log-index = slave-relay-bin.index
重启从服务器:systemctl restart mysqld
登录mysql后:
change master to master_host='192.168.1.13',master_port=3306,master_user='yxbcopy',master_password='1234',master_log_file='master-bin.000002',master_log_pos=154;
开启从服务器:
start slave;
查看从服务器状态:
show slave status\G;
当从服务器开启了IO同步和sql,就可以去数据库试试了
ok,试试吧!