MySQL 主从同步配置

一、主从同步配置

主从同步使得数据可以从一个数据库服务器复制到其他服务器上,在复制数据时,一个服务器充当主服务器(master),其余的服务器充当从服务器(slave)。因为复制是异步进行的,所以从服务器不需要一直连接着主服务器,从服务器甚至可以通过拨号断断续续地连接主服务器。通过配置文件,可以指定复制所有的数据库,某个数据库,甚至是某个数据库上的某个表。

使用主从同步的好处:通过增加从服务器来提高数据库的性能,在主服务器上执行写入和更新,在从服务器上向外提供读功能,可以动态地调整从服务器的数量,从而调整整个数据库的性能。提高数据安全,因为数据已复制到从服务器,从服务器可以终止复制进程,所以,可以在从服务器上备份而不破坏主服务器相应数据。在主服务器上生成实时数据,而在从服务器上分析这些数据,从而提高主服务器的性能.

 二、环境

两个干净的虚拟机里面都有MySQL。

三、主节点配置

 

 配置完成之后进入主配置的 MySQL 。

grant replication slave on *.* to '+用户名'@+用户IP identified by '+密码';            //添加一个用户给他权限
flush privileges;                                                                   //刷新权限
show master status ;                                                            //查看server节点状态

 四、从节点配置

 进人第二个虚拟机,直接进入 MySQL 就行。

mysql> change master to master_host='192.168.146.137',master_user='guoming',master_password='222222',master_log_file='gm.000002',master_log_pos=414;        //创建连接, 主节点信息,bin_log文件名及大小
Query OK, 0 rows affected, 2 warnings (0.00 sec)

mysql> start slave;       //开启服务
Query OK, 0 rows affected (0.00 sec)

mysql> show slave status\G;       //查看服务 
*************************** 1. row ***************************
               Slave_IO_State: Waiting for master to send event
                  Master_Host: 192.168.146.137
                  Master_User: guoming
                  Master_Port: 3306
                Connect_Retry: 60
              Master_Log_File: gm.000002
          Read_Master_Log_Pos: 414
               Relay_Log_File: 192-relay-bin.000002
                Relay_Log_Pos: 276
        Relay_Master_Log_File: gm.000002

       //这俩个是yes 就可以了 Slave_IO_Running: Yes Slave_SQL_Running: 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: 414 Relay_Log_Space: 447 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: 137 Master_UUID: ebc6cb1d-1ce0-11ec-af2b-000c29efc887 Master_Info_File: /data/mysql/master.info SQL_Delay: 0 SQL_Remaining_Delay: NULL Slave_SQL_Running_State: Slave has read all relay log; waiting for the slave I/O thread to update it Master_Retry_Count: 86400 Master_Bind: Last_IO_Error_Timestamp: Last_SQL_Error_Timestamp: Master_SSL_Crl: Master_SSL_Crlpath: Retrieved_Gtid_Set: Executed_Gtid_Set: Auto_Position: 0 1 row in set (0.01 sec) ERROR: No query specified mysql>

 五、测试

主节点创建一个库,然后再到从节点查看这个库是否存在。

主节点创建的库

从节点也可以查到这个库。

 

 六、报错如何查看

查看这个网站里面基本上都有你报错问题:https://www.cnblogs.com/LiuChang-blog/p/12315867.html 

 



posted @ 2021-09-24 12:53  花花de代码生活  阅读(252)  评论(0编辑  收藏  举报