数据库主从复制(1)

2017-11-23  本文已影响0人  BossHuang

                                                              MariaDB的主从复制实践

主服务器:192.168.25.7

从服务器:192.168.25.77

实现主从复制应该注意的要点:

    主节点:

        (1)启动二进制日志

        (2)当前节点一个全局的ID号

        (3)创建有复制权限的用户账号

    从节点:

        (1)启动二进制日志

        (2)当前节点一个全局的ID号

        (3)使用有复制权限的用户账号链接主服务器,并启动复制线程

        一、主服务器:192.168.25.7

        1.设置数据库的配置

            vim  /etc/my.cnf

        log-bin=master-bin

        server-id=1

        innodb_file_per_table=ON

        skip_name_resolve=ON

        2.启动数据库:systemctl start mariadb

        3.登录 MySQL

        MariaDB [(none)]> show global variables like '%log%';   #查看 log_bin  是否为  ON

show global variables like '%log%';

    MariaDB [(none)]> show global variables like '%server%';  #当前节点一个全局的ID号

 show global variables like '%server%';

    MariaDB [(none)]> show master logs;  #查看启动的二进制日志

查看启动的二进制日志

        4.创建有复制权限的用户账号

        MariaDB [(none)]> grant replication slave ,replication client on *.* to 'repluser'@'192.168.25.%' identified by'replpass';

Query OK, 0 rows affected (0.01 sec)

MariaDB [(none)]> flush privileges;

Query OK, 0 rows affected (0.00 sec)

解释:

grant replication slave ,replication client   #创建用户账号:replication slave ,replication client

on *.* 复制所有库,*.* 代表表示所有库,如果是指定库则写库名

to 'repluser ' 用来复制的 用户

@'192.168.25.%'  那些主机

identified by'replpass';  定义密码为replpass

flush privileges; 提交

最后查看防火墙是否阻断3306端口

二、从服务器:192.168.25.77

1.设置数据库的配置

vim  /etc/my.cnf

replay-log=replay-log  #启动中继日志

server-id=7    #前节从节点一个全局的ID号

innodb_file_per_table=ON  

skip_name_resolve=ON

2.启动数据库:systemctl start mariadb

3.登录 MySQL

MariaDB [mydb]> show global variables like '%log%';   #查看中继日志是否打开

查看中继日志是否打开

MariaDB [mydb]>show global variables like '%server%'  查看server-ID是否和配置文件一样是7

4.使用有复制权限的用户账号链接主服务器,并启动复制线程

MariaDB [mydb]> change master to MASTER_HOST='192.168.25.7',MASTER_USER='repluser',MASTER_PASSWORD='replpass',MASTER_LOG_FILE='master-bin.000003',MASTER_LOG_POS=498;

解释:

change master to   切换主节点

MASTER_HOST='192.168.25.7',  主节点主机名

MASTER_USER='repluser',    主节点那个有复制权限

MASTER_PASSWORD='replpass',  复制者的密码是什么

MASTER_LOG_FILE='master-bin.000003',  从主节点的那个二进制文件开始复制

MASTER_LOG_POS=498;    从主节点的二进制文件那个位置开始复制  

注意:二进制文件的复制可以是最新的日志,位置可以用: show master logs;  #查看启动的二进制日志的最新位置

查看启动的二进制日志

5.查看状态:MariaDB [(none)]> show slave status\G; 

查看状态

6.打开复制线程

MariaDB [mydb]> show tables;

7.再次查看状态:MariaDB [(none)]> show slave status\G;

三、实验

在主服务器创建一个数据库:

创建数据库

从服务器:

从服务器

主服务器:二进制日志的位置:

主服务器:二进制日志的位置:

从服务器:二进制日志的位置:

从服务器:二进制日志的位置:
上一篇 下一篇

猜你喜欢

热点阅读