//dump出整个数据库包含函数定义 可用于master slave
mysqldump --master-data=2 -R test > dumpfile_with-R
mysql master 192.168.1.101
mysql slave 192.168.1.102
首先保证互相能访问登录
在mysql>里输入
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%'IDENTIFIED BY 'mypassword'WITH GRANT OPTION;
% 表示所有IP地址 或者你可以指定一个
或
grant replication slave on *.* to "loki"@"192.168.2.24" identified by "506506"; 只给复制权限
记得 mysql> flush privileges;
但我这样做了还是访问不了
后来知道是mysql.user表里有其他账号干扰
use mysql;
select user,host from user;
看下是否有user=''的用户 存在,有就删掉,我就被这个折磨了半天
然后就应该可以互访问了。
然后 在slave上
mysql>CHANGE MASTER TO MASTER_HOST='192.168.1.101', MASTER_PASSWORD='1111', MASTER_LOG_FILE='mysql-bin.001', MASTER_LOG_POS=001;
mysql>start slave;
接着要检查一下是否成功
mysql>show slave status\G;
这是有可能报错:
server id重复 这个要去改my.cnf 里面有一行是serverid 确保主从的ID不一样