第一步
主从服务器ip分别为:
主:192.168.1.160 从:192.168.1.64
修改主服务器master::打开电脑右下角任务栏里的phpstudy->点击右下角其他选项菜单->打开配置文件里面的mysql-ini.
将下面两行复制到mysql-ini最下面:
- log-bin=mysql-bin #[必须]启用二进制日志
- server-id=160 #[必须]服务器唯一ID,默认是1,一般取IP最后一段;
修改主服务器slave::打开电脑右下角任务栏里的phpstudy->点击右下角其他选项菜单->打开配置文件里面的mysql-ini.
将下面两行复制到mysql-ini最下面:
- log-bin=mysql-bin #[必须]启用二进制日志
- server-id=64 #[必须]服务器唯一ID,默认是1,一般取IP最后一段;
复制完后分别都重启phpstudy.
第二步:
在主服务器上建立帐户并授权slave:
打开主服务器phpstudy里面的其他选项菜单->MYSQL工具->mysql命令行输入mysql用户名和密码后用mysql -uroot -proot进入数据库mysql;
之后在mysql>后面执行命令GRANT REPLICATION SLAVE ON *.* to 'mysync'@'%' identified by 'q123456'; //一般不用root帐号,“%”表示所有客户端都可能连,只要帐号,密码正确,此处可用具体客户端IP代替,如192.168.145.226,加强安全。 mysync代表用户名q123456代表连接的密码.
之后在mysql>后面执行show master status; //查询主服务器的mysql,master的状态
会有俩参数file 和position第三步:
检查从服务器复制功能状态:
在mysql>后面执行show slave status\G
查看以下两个参数:
- Slave_IO_Running: Yes //此状态必须YES
- Slave_SQL_Running: Yes //此状态必须YES
注:Slave_IO及Slave_SQL进程必须正常运行,即YES状态,否则都是错误的状态(如:其中一个NO均属错误)。
以上操作过程,主从服务器配置完成。
第四步:
主从服务器测试:主服务器Mysql,建立数据库,并在这个库中建表插入一条数据:
- mysql> create database hi_db;
- Query OK, 1 row affected (0.00 sec)
- mysql> use hi_db;
- Database changed
- mysql> create table hi_tb(id int(3),name char(10));
- Query OK, 0 rows affected (0.00 sec)
- mysql> insert into hi_tb values(001,'bobu');
- Query OK, 1 row affected (0.00 sec)
- mysql> show databases;
- +--------------------+
- | Database |
- +--------------------+
- | information_schema |
- | hi_db |
- | mysql |
- | test |
- +--------------------+
- 4 rows in set (0.00 sec)
- 从服务器Mysql查询:
- mysql> show databases;
- +--------------------+
- | Database |
- +--------------------+
- | information_schema |
- | hi_db | //I'M here,大家看到了吧
- | mysql |
- | test |
- +--------------------+
- 4 rows in set (0.00 sec)
- mysql> use hi_db
- Database changed
- mysql> select * from hi_tb; //查看主服务器上新增的具体数据
- +------+------+
- | id | name |
- +------+------+
- | 1 | bobu |
- +------+------+
- 1 row in set (0.00 sec)
主主配置是把从服务器当作主服务器来配置一遍,思路和主从配置一样,就是反过来再配置一遍。如果在任何一方修改数据库和表,另一个服务器也同事更新了,就说明主主配置成功!