您的位置:首页 > 数据库 > MySQL

mysql主从复制配置

2017-05-10 14:39 225 查看
首先保证:

1、主从数据库版本一致。

2、需要同步的数据库信息一致。

一、配置主服务器my.cnf

#vi  /etc/my.cnf

log-bin=mysql-bin
binlog-format=mixed
server-id=1 //随意,最好用ip后一位


二、配置从服务器my.cnf

#vi  /etc/my.cnf

log-bin=mysql-bin//可以选择开启或不开启
binlog-format=mixed
server-id=1 //这里最好是ip后一位


三、重启mysql

四、在主服务器上为从服务器分配账号并授权

# mysql -uusername -ppassword
GRANT replication slave ON *.* TO 'slave'@'%' IDENTIFIED BY '111111';//其中*.*表示要复制的数据库.数据表,slave是为从服务器分配的用户名,%表示所有人都可以访问
可以填写ip限制访问者,111111为分配的密码



五、查看主服务器mysql,查询master状态

此时不要对主服务器做任何操作,



六、从服务器配置

登录:

# mysql -uusername -ppassword

stop slave



MASTER_HOST : 设置要连接的主服务器的ip地址

     MASTER_USER : 设置要连接的主服务器的用户名

     MASTER_PASSWORD : 设置要连接的主服务器的密码

    MASTER_LOG_FILE : 设置要连接的主服务器的bin日志的日志名称,即第3步得到的信息

    MASTER_LOG_POS : 设置要连接的主服务器的bin日志的记录位置,即第3步得到的信息,(这里注意,最后一项不需要加引号。否则配置失败)

    start slave

七、查看是否配置成功

show slave status

如果slave-io-runing和slave-sql-runing都是yes则成功,否则则重复以上步骤

注意:在为从服务器分配账号密码时,如果要指定数据库和表,则应在主服务器的my.cnf中添加binlog-do-db=数据库来限制,语句中还是要用*.*,

否则会报错:

Incorrect usage of DB GRANT and GLOBAL PRIVILEGES
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: