mysql主从数据库配置条件_MySQL主从数据库配置

使用工具

MySQL数据版本:5.6.36-log、

两台云服务器(Linux系统)

首先,需要在Linux系统下安装MySQL,具体步骤可以参考这里,并且确保两台主机可以相互访问,可以直接ping一下。

配置Master

在Linux环境下,MySQL的配置文件在/ect/my.cnf,直接打开并编辑该文件:vim /etc/my.cnf

在[mysqld]下输入配置

log-bin=mysql-bin

server-id=2

binlog-ignore-db=information_schema

binlog-ignore-db=mysql

binlog-do-db=rwtest

这里的server-id用于标识唯一的数据库,这里设置为2在设从库需要设置为其他值。

binlog-ignore-db:表示同步的时候ignore的数据库

binlog-do-db:指定需要同步的数据库

重启MySQL:service mysqld restart

登录MySQL并对访问用户进行授权:Slave机器需要File权限和REPLICATION SLAVE权限,当然也可以授予全部权限。

grant file on *.* to 'root'@'%' identified by 'your password';

grant replication slave on *.* to 'root'@'%' identified by 'your password';

flush privileges;

or

grant all privileges on *.* to 'root'@'%' identified by 'your password';

flush privileges;

完成后,可以查看下Master的状态:show master status

mysql> show master status;

+------------------+----------+--------------+----------------------------------+-------------------+

| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |

+------------------+----------+--------------+----------------------------------+-------------------+

| mysql-bin.000001 | 2272 | rwtest | information_schema,mysql | |

+------------------+----------+--------------+----------------------------------+-------------------+

1 row in set (0.03 sec)

这里的File和Position在Slave中都要用到,Binlog_Do_DB指需要同步的数据库,Binlog_Ignore_DB指不需要同步的数据库,就是刚才配置的值。

配置Slave

同样在[mysqld]下对配置文件进行编写

log-bin=mysql-bin

server-id=3

binlog-ignore-db=information_schema

binlog-ignore-db=mysql

replicate-do-db=rwtest

replicate-ignore-db=mysql

log-slave-updates

slave-skip-errors=all

slave-net-timeout=60

配置完毕后同样重启一下MySQL,并进入设置其对应的Master

mysql> stop slave; #关闭Slave

mysql> change master to master_host='Master主机IP',master_user='刚才授权的用户',master_password='your password',master_log_file='mysql-bin.000001', master_log_pos=2272;

mysql> start slave; #开启Slave

master_log_file和master_log_pos都是Master的状态值。必须对应。

登录slave的数据库,查看slave的状态:show slave status \G

Slave_IO_State: Waiting for master to send event

Master_Host: 你的Master主机IP

Master_User: root

Master_Port: 3306

Connect_Retry: 60

Master_Log_File: mysql-bin.000001

Read_Master_Log_Pos: 2272

Relay_Log_File: izwz9fcvpu481xh55cegx0z-relay-bin.000002

Relay_Log_Pos: 1339

Relay_Master_Log_File: mysql-bin.000001

Slave_IO_Running: Yes

Slave_SQL_Running: Yes

Replicate_Do_DB: rwtest

Replicate_Ignore_DB: mysql

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

Relay_Log_Space: 1530

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

Master_UUID: de20814f-2fb8-11e7-8f61-5254002b91a1

Master_Info_File: /var/lib/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.03 sec)

如果状态中含有没有报Error,则表示配置成功了。

接下来你通过可视化工具连接两个数据库,在主库中进行增删改操作,从库中也会有相应的操作,而在从库中进行此类操作对主库无效。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值