freddon
发表于2018-04-01
阅读 661 |
评论 0
前一段时间迫于服务器的捉急内存,将redis数据库停掉了,鉴于redis的主从配置,在centos配置下mysql记录下过程。
## 前言
---
若干台云服务器,此处挑选两台进行配置记录。
__主数据库(Master)__-- Mysql5.6,位于__服务器A__,系统CentOS6.5 x64,IP : 192.168.2.100,同步时候使用到的用户op_user,密码op_pwd
__从数据库(Slave)__-- MariaDB 5.5.56,位于__服务器B__,系统CentOS7.2 x64,IP : 192.168.2.120,同步时候使用到的用户用户op_user,密码op_pwd
关于Mysql5.6配置semi_sync,Mysql5.7新特性lossless replication 无损复制,本文不涉及。
## Master配置
---
1. 查看配置文件`/etc/my.cnf`底部是否包含`!includedir /etc/my.cnf.d`,支持分离配置文件。
2. 在`/etc/my.cnf.d/server.cnf`,[mysqld]中添加如下配置
```
[mysqld]
#日志
log-bin=mysql-bin
#设置serverID 标识唯一的数据库
server-id=1
#忽略主从设置的数据库
binlog-ignore-db=information_schema
binlog-ignore-db=cluster
binlog-ignore-db=mysql
#需要同步的主数据库
binlog-do-db=demoack
```
3. 重启数据库
```
service mysqld restart
```
4. 赋予从数据库Slave有File权限,REPLICATION SLAVE权限。
```
mysql>GRANT FILE ON *.* TO 'op_user'@'192.168.2.120' IDENTIFIED BY 'op_pwd';
mysql>GRANT REPLICATION SLAVE ON *.* TO 'op_user'@'192.168.2.120' IDENTIFIED BY 'op_pwd';
mysql>FLUSH PRIVILEGES;
```
5. 重启、连接数据库,查看master配置
```bash
mysql> show master status;
+--------------+----------+---------------+----------------------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+--------------+----------+---------------+-----------------------------+
| mysql-bin.000001 | 1306 | demoack | information_schema,cluster,mysql |
+--------------+----------+---------------+----------------------------------+
1 row in set (0.00 sec)
```
File 、Position对应的值在配置Slave中需要用到。
## Slave配置
---
1. 在`/etc/my.cnf.d/server.cnf`,[mysqld]中添加如下配置
```
[mysqld]
log-bin=mysql-bin
server-id=2
binlog-ignore-db=information_schema
binlog-ignore-db=cluster
binlog-ignore-db=mysql
replicate-do-db=demoack
replicate-ignore-db=mysql
log-slave-updates
slave-skip-errors=all
slave-net-timeout=60
```
2. 重启数据库
```
service mariadb.service restart
```
我这里是mariadb数据库,mysql重启命令为`service mysqld restart`
3. 连接数据库
```
mysql> stop slave; #关闭Slave
mysql> change master to master_host='192.168.2.100',master_user='op_user',master_password='op_pwd',master_log_file='mysql-bin.000001', master_log_pos=1306;
mysql> start slave; #开启Slave
```
4. 可以通过`mysql> show slave status;` 查看Slave配置的信息.
---
配置完成。
分类 :日常记录
## 前言
---
若干台云服务器,此处挑选两台进行配置记录。
__主数据库(Master)__-- Mysql5.6,位于__服务器A__,系统CentOS6.5 x64,IP : 192.168.2.100,同步时候使用到的用户op_user,密码op_pwd
__从数据库(Slave)__-- MariaDB 5.5.56,位于__服务器B__,系统CentOS7.2 x64,IP : 192.168.2.120,同步时候使用到的用户用户op_user,密码op_pwd
关于Mysql5.6配置semi_sync,Mysql5.7新特性lossless replication 无损复制,本文不涉及。
## Master配置
---
1. 查看配置文件`/etc/my.cnf`底部是否包含`!includedir /etc/my.cnf.d`,支持分离配置文件。
2. 在`/etc/my.cnf.d/server.cnf`,[mysqld]中添加如下配置
```
[mysqld]
#日志
log-bin=mysql-bin
#设置serverID 标识唯一的数据库
server-id=1
#忽略主从设置的数据库
binlog-ignore-db=information_schema
binlog-ignore-db=cluster
binlog-ignore-db=mysql
#需要同步的主数据库
binlog-do-db=demoack
```
3. 重启数据库
```
service mysqld restart
```
4. 赋予从数据库Slave有File权限,REPLICATION SLAVE权限。
```
mysql>GRANT FILE ON *.* TO 'op_user'@'192.168.2.120' IDENTIFIED BY 'op_pwd';
mysql>GRANT REPLICATION SLAVE ON *.* TO 'op_user'@'192.168.2.120' IDENTIFIED BY 'op_pwd';
mysql>FLUSH PRIVILEGES;
```
5. 重启、连接数据库,查看master配置
```bash
mysql> show master status;
+--------------+----------+---------------+----------------------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+--------------+----------+---------------+-----------------------------+
| mysql-bin.000001 | 1306 | demoack | information_schema,cluster,mysql |
+--------------+----------+---------------+----------------------------------+
1 row in set (0.00 sec)
```
File 、Position对应的值在配置Slave中需要用到。
## Slave配置
---
1. 在`/etc/my.cnf.d/server.cnf`,[mysqld]中添加如下配置
```
[mysqld]
log-bin=mysql-bin
server-id=2
binlog-ignore-db=information_schema
binlog-ignore-db=cluster
binlog-ignore-db=mysql
replicate-do-db=demoack
replicate-ignore-db=mysql
log-slave-updates
slave-skip-errors=all
slave-net-timeout=60
```
2. 重启数据库
```
service mariadb.service restart
```
我这里是mariadb数据库,mysql重启命令为`service mysqld restart`
3. 连接数据库
```
mysql> stop slave; #关闭Slave
mysql> change master to master_host='192.168.2.100',master_user='op_user',master_password='op_pwd',master_log_file='mysql-bin.000001', master_log_pos=1306;
mysql> start slave; #开启Slave
```
4. 可以通过`mysql> show slave status;` 查看Slave配置的信息.
---
配置完成。
评论(0)
先登录,才能发评论哦~