Mysql主从配置

 

 

实验场景(mysql的安装在此不赘述):

         Master:192.168.189.145:3307

                                    Slave:192.168.189.146:3307

                                    mysql版本需一致。

 

 

Master配置:

    配置mysql主配置文件:

#vi /etc/my.cnf

[mysqld]

server_id           = 1 

log_bin             = /mydata/mysql-bin.log

log_bin_index       = /mydata/mysql-bin.log.index 

relay_log           = /mydata/mysql-relay-bin 

relay_log_index     = /mydata/mysql-relay-bin.index 

expire_logs_days    = 10 

max_binlog_size     = 100M 

log_slave_updates   = 1

auto_increment_increment = 2

auto_increment_offset = 1

max_connections=1500

lower_case_table_names = 1

port = 3307

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES 

 

 

mysql配置:

    #/usr/local/mysql/bin/mysql

    建立复制所要使用的用户; 

     mysql>grant replication slave on *.* to [email protected] identified by ‘123456’;       重启查看mysql,查看master binlog文件;

  mysql>show master status\G

 File: mysql-bin.000002

 Position: 1080

 Binlog_Do_DB: 

 Binlog_Ignore_DB: 

 Executed_Gtid_Set: 

 

 

 

 

Slave配置:

  配置mysql主配置文件:

  #vi /etc/my.cnf

[mysqld]

server_id           = 

log_bin             = /mydata/mysql-bin.log

log_bin_index       = /mydata/mysql-bin.log.index 

relay_log           = /mydata/mysql-relay-bin 

relay_log_index     = /mydata/mysql-relay-bin.index 

expire_logs_days    = 10 

max_binlog_size     = 100M 

log_slave_updates   = 1

auto_increment_increment = 2

auto_increment_offset = 1

max_connections=1500

lower_case_table_names = 1

port = 3307

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES 

 

 

mysql配置:

mysql>change master to master_host='192.168.189.145',

   >master_user='replication',

     >master_password='123456',

     >master_log_file='mysql-bin.000002',

     >master_log_pos=1080,

     >master_port=3307;   -------假如master端口不是3306

mysql>start slave;          -----开启备份

查看主从状态:

mysql> show slave status\G

 Slave_IO_State: Waiting for master to send event

                  Master_Host: 192.168.189.145

                  Master_User: replication

                  Master_Port: 3307

                Connect_Retry: 60

              Master_Log_File: mysql-bin.000002  ----master一致

          Read_Master_Log_Pos: 1080

               Relay_Log_File: mysql-relay-bin.000002

                Relay_Log_Pos: 1243

        Relay_Master_Log_File: mysql-bin.000002

             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: 1080

              Relay_Log_Space: 1416

              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

                  Master_UUID: 381465c0-6a51-11e4-bd77-000c29c83728

             Master_Info_File: /mydata/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

 

这时就可以操作master库,看slave是否同步。