欢迎光临
我们一直在努力

MySQL双机实现主从复制

MySQL双机实现主从复制

1、MySQL的安装略(可以通过rpm、源代码编译、yum等多种方式安装,要求两台MySQL版本一致或者从服务版本高于主服务器;)
主mysql IP192.168.100.110
从mysql IP 192.168.100.111

2、修改主MySQL服务器的my.cnf文件

[mysqld]
log-bin=mysql-bin         #启动二进制日志
server-id=1               #服务器唯一ID 1默认为主服务器
#binlog_do_db=tables_name #指定需要同步的表,需要重启mysql服务才生效

3、修改从MySQL服务器的my.cnf文件
[mysqld]
log-bin=mysql-bin
Server-id=111 #一般可以设置为服务器的IP地址

4、重启两台MySQL服务器

/etc/init.d/mysql restart

5、在主服务器建立账号souyun并授权

mysql  -uroot  -psouyun@123
GRANT REPLICATION SLAVE ON *.* to 'souyun'@'%' identified by 'souyun123';

“%”可以换成从服务的IP地址,来提高系统的安全性

6、在主服务器查询master的状态

mysql> show master status;
+------------------+----------+--------------+------------------+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000005 |      291 |              |                  |
+------------------+----------+--------------+------------------+
1 row in set (0.00 sec)

7、配置从服务器slave

mysql  -uroot  -psouyun@123
mysql>change master to 
aster_host='192.168.100.110,master_user='souyun',master_password='souyun123',
         master_log_file='mysql-bin.000005',master_log_pos=291;
mysql>start slave;    #启动从服务器复制功能

8、检测从服务器的复制功能状态

mysql>  show slave status\G
*************************** 1. row ***************************
               Slave_IO_State: Waiting for master to send event
                  Master_Host: 192.168.100.110  #主服务器地址
                  Master_User: souyun          #授权的用户
                  Master_Port: 3306            #服务器端口
                Connect_Retry: 60
              Master_Log_File: mysql-bin.000005
          Read_Master_Log_Pos: 291
               Relay_Log_File: centos-relay-bin.000010
                Relay_Log_Pos: 437
        Relay_Master_Log_File: mysql-bin.000005
             Slave_IO_Running: Yes               #必须yes 否则不正常
            Slave_SQL_Running: Yes              #必须yes 否则不正常,可通过此参数来监控主从复制功能是否工作正常
              Replicate_Do_DB: 
          Replicate_Ignore_DB: 
           Replicate_Do_Table: 
       Replicate_Ignore_Table: 
      Replicate_Wild_Do_Table: 
  Replicate_Wild_Ignore_Table: 
                   Last_Errno: 0
                   Last_Error: 
                 Skip_Counter: 0
          Exec_Master_Log_Pos: 291
              Relay_Log_Space: 740
              Until_Condition: None
               Until_Log_File: 
                Until_Log_Pos: 0
           Master_SSL_Allowed: No
           Master_SSL_CA_File: 
           Master_SSL_CA_Path: 
              Master_SSL_Cert: 
            Master_SSL_Cipher: 
               Master_SSL_Key: 
        Seconds_Behind_Master: 0
Master_SSL_Verify_Server_Cert: No
                Last_IO_Errno: 0
                Last_IO_Error: 
               Last_SQL_Errno: 0
               Last_SQL_Error: 
  Replicate_Ignore_Server_Ids: 
             Master_Server_Id: 1
1 row in set (0.01 sec)

9、主从服务器测试
在主192.168.100.110上:

mysql -uroot -psouyun@123
mysql> create database kuaishang;
Query OK, 1 row affected (0.00 sec)
mysql> use kuaishang;
Database changed
mysql> create table userinfo(id int(3),name char(8));
Query OK, 0 rows affected (0.02 sec)
mysql> insert into userinfo values(011,'lideshuai');
Query OK, 1 row affected, 1 warning (0.01 sec)
mysql> insert into userinfo values(001,'zhangming');
Query OK, 1 row affected, 1 warning (0.00 sec)
mysql> select * from  userinfo;
+------+----------+
| id   | name     |
+------+----------+
|   11 | lideshuai |
|    1 | zhangmin |
+------+----------+
2 rows in set (0.00 sec)

在从服务器192.168.100.111上查看是否同步:

[root@centos ~]# mysql -uroot -psouyun@123
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 5
Server version: 5.5.30-log MySQL Community Server (GPL)
Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> 
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| kuaishang          |
| mysql              |
| performance_schema |
| test               |
+--------------------+
5 rows in set (0.01 sec)
mysql> use kuaishang;
Database changed
mysql> select * from userinfo;
+------+----------+
| id   | name     |
+------+----------+
|   11 | lideshuai |
|    1 | zhangmin |
+------+----------+
2 rows in set (0.00 sec)

上面可以看见mysql主从配置完成,测试成功。

未经允许不得转载:SRE空间 » MySQL双机实现主从复制

分享到:更多 ()

评论 抢沙发

评论前必须登录!

 

oracle