Get the App
SLTechnology News&Howtos  ›  Database  › 

Setting up a new environment, Mysql master and slave

Shulou Source: shulou.com Published: 2022-06-01 05:54:20 09月23日 Update

Environmental Information:

Use IPOSMysql Master 10.163.84.16RHEL 6.5_X64mysql-5.7.16-linux-glibc2.5-x86_64.tar.gz Slave 10.163.84.17RHEL 6.5_X64mysql-5.7.16-linux-glibc2.5-x86_64.tar.gz

1. Mysql installation

Refer to http://blog.itpub.net/28536251/viewspace-2138854 to install Mysql on both nodes.

2. Master node configuration

(1) modify the configuration file

[root@dbrac16 ~] # vim / etc/my.cnf

[mysqld]

Datadir=/usr/local/mysql/data

Socket=/usr/local/mysql/mysql.sock

User=mysql

Symbolic-links=0

Character-set-server=utf8

Server-id = 8416

Log-bin=/usr/local/mysql/data/mysql-bin

Binlog_format=mixed

Slow-query-log

Long_query_time=3

Log-output=TABLE

Expire_logs_days = 7

Event_scheduler=1

Innodb_file_per_table=1

Innodb_log_file_size=536870912

Innodb_buffer_pool_size=1073741824

Max_binlog_size=1073741824

Log_bin_trust_function_creators=1

Innodb_stats_on_metadata=0

Max_connect_errors = 1000000

Max_connections = 5000

Skip_name_resolve = 1

Explicit_defaults_for_timestamp=true

[mysqld_safe]

Log-error=/var/log/mysqld.log

Pid-file=/usr/local/mysql/my.pid

[client]

Socket=/usr/local/mysql/mysql.sock

[mysql]

Prompt= (\ u @\ h) [\ d]\ _

(2) restart Mysql

[root@dbrac16 ~] # / etc/init.d/mysqld restart

Shutting down MySQL. SUCCESS!

Starting MySQL. SUCCESS!

(3) create a replication user

(root@localhost) [(none)] GRANT REPLICATION SLAVE ON *. * TO 'repl'@'10.163.84.%' IDENTIFIED BY' repl'

Query OK, 0 rows affected, 1 warning (0.06 sec)

(root@localhost) [(none)] flush privileges

Query OK, 0 rows affected (0.08 sec)

(4) obtain log information

(root@localhost) [(none)] show master status

+-+

| | File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set | |

+-+

| | mysql-bin.000002 | 154 | |

+-+

1 row in set (0.01 sec)

3. Slave node configuration

(1) modify the configuration file

[root@dbrac17 ~] # vim / etc/my.cnf

[mysqld]

Datadir=/usr/local/mysql/data

Socket=/usr/local/mysql/mysql.sock

User=mysql

Symbolic-links=0

Character-set-server=utf8

Server-id=8417

Slow-query-log

Long_query_time=3

Log-output=TABLE

Expire_logs_days = 7

Event_scheduler=1

Innodb_file_per_table=1

Innodb_log_file_size=536870912

Innodb_buffer_pool_size=1073741824

Max_binlog_size=1073741824

Log_bin_trust_function_creators=1

Innodb_stats_on_metadata=0

Max_connect_errors = 1000000

Max_connections = 5000

Skip_name_resolve = 1

Explicit_defaults_for_timestamp=true

[mysqld_safe]

Log-error=/var/log/mysqld.log

Pid-file=/usr/local/mysql/my.pid

[client]

Socket=/usr/local/mysql/mysql.sock

[mysql]

Prompt= (\ u @\ h) [\ d]\ _

(2) Delete auto.cnf file

[root@dbrac17 ~] # rm / usr/local/mysql/data/auto.cnf

Rm: remove regular file `/ usr/local/mysql/data/auto.cnf'? Y

(3) restart Mysql

[root@dbrac17 ~] # / etc/init.d/mysqld restart

Shutting down MySQL. SUCCESS!

Starting MySQL. SUCCESS!

(4) configure the connection to the primary node

(root@localhost) [(none)] CHANGE MASTER TO MASTER_HOST='10.163.84.16',MASTER_PORT=3306,MASTER_USER='repl',MASTER_PASSWORD='repl',MASTER_LOG_FILE='mysql-bin.000002',MASTER_LOG_POS=154

Query OK, 0 rows affected, 2 warnings (0.05 sec)

(5) start replication and check the status

(root@localhost) [(none)] start slave

Query OK, 0 rows affected (0.03 sec)

(root@localhost) [(none)] show slave status\ G

* * 1. Row *

Slave_IO_State: Waiting for master to send event

Master_Host: 10.163.84.16

Master_User: repl

Master_Port: 3306

Connect_Retry: 60

Master_Log_File: mysql-bin.000002

Read_Master_Log_Pos: 154

Relay_Log_File: dbrac17-relay-bin.000002

Relay_Log_Pos: 320

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

Relay_Log_Space: 529

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

Master_UUID: 3de828ce-354c-11e7-9f0b-0050568a4cf6

Master_Info_File: / usr/local/mysql/data/master.info

SQL_Delay: 0

SQL_Remaining_Delay: NULL

Slave_SQL_Running_State: Slave has read all relay log; waiting for more updates

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

Replicate_Rewrite_DB:

Channel_Name:

Master_TLS_Version:

1 row in set (0.02 sec)

Slave_IO_Running: Yes indicates that the log is obtained normally.

Slave_SQL_Running: Yes indicates that the log application is normal.

4. Test

(1) the master node creates a library, tables and inserts data

(root@localhost) [(none)] create database test

Query OK, 1 row affected (0.01sec)

(root@localhost) [(none)] use test

Database changed

(root@localhost) [test] create table tb1 (id int)

Query OK, 0 rows affected (0.07 sec)

(root@localhost) [test] insert into tb1 values (1)

Query OK, 1 row affected (0.04 sec)

(2) View from the node

(root@localhost) [(none)] use test

Reading table information for completion of table and column names

You can turn off this feature to get a quicker startup with-A

Database changed

(root@localhost) [test] select * from tb1

+-+

| | id |

+-+

| | 1 |

+-+

1 row in set (0.01 sec)

Tags: Node configuration file log information environment data status user purpose reference application test master-slave Apple Docker Huawei Linux macOS MariaDB Microsoft MySQL NVidia OPPO Reno NVidia Shulou Technology Microsoft Shulou Tech Info MySQL