部署mysql主从复制

Mysql master ip: 192.168.30.25   一主两从

Mysql slave ip: 192.168.30.24

Mysql slave ip:192.168.30.23

关闭防火墙

[root@master ~]# setenforce 0

[root@master ~]# iptables -F

[root@master ~]# systemctl stop firewalld

在mysql master 上的配置NTP时间同步服务器

[root@master ~]# yum -y install ntp

[root@master ~]# vim /etc/ntp.conf

server 127.127.1.0

fudge 127.127.1.0 startum 8

启动NTP服务

[root@master ~]# systemctl enable ntpd

[root@master ~]# systemctl start ntpd

在2个slave节点上配置与master进行时间同步

[root@slave1 ~]# yum -y install ntpdate

[root@slave1 ~]# /usr/sbin/ntpdate 192.168.30.25

 

所有机器安装mariadb

[root@master ~]# yum -y install mariadb mariadb-server mariadb-devel

配置mysql master 服务器

1,在etc/my.cnf中修改或者增加如下内容

[mysqld]

Server-id=1

Log-bin=mysql-binlog

Log-slave-ipdates=ture

重启mysql服务器

[root@master ~]# systemctl start mariadb

 

2,创建replication用户

Replication slave 用于复制从属服务器,(从主服务器中读取二进制日志事件权限

[root@master ~]# mysql -u root

MariaDB [(none)]> grant replication slave on *.* to 'myslave'@'192.168.30.%'identified by '123456';

Query OK, 0 rows affected (0.00 sec)

 

MariaDB [(none)]> flush privileges;

Query OK, 0 rows affected (0.00 sec)

 

MariaDB [(none)]> show master status;

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

| File                | Position | Binlog_Do_DB | Binlog_Ignore_DB |

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

| mysql-binlog.000003 |      475 |              |                  |

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

1 row in set (0.00 sec)

 

MariaDB [(none)]> exit

3,获得Master DB 的相关信息

供Slave 连接时使用,记录下file和position的值

4,备份matser原有数据此处省略

5,从库连接主库进行测试,如果连接成功说明主库配置成功

[root@slave1 ~]# mysql -u myslave -p123456 -h 192.168.30.25

[root@slave2 ~]# mysql -u myslave -p123456 -h 192.168.30.25

在从服务器都修改Mysql 配置文件

Vim /etc/my.cnf

Server-id = 2

Relay-log=relay-log-bin

Rela:y-log-index=slave-relay-bin.index

配置多个从服务器时依次设置server-id号

修改完重启数据库

[root@slave1 ~]# systemctl restart mariadb

 

6,在slave 服务器授权,启动从库,进行主从库同步

[root@slave1 ~]# mysql -u root

MariaDB [(none)]> stop slave;

MariaDB [(none)]> change master to

    -> master_host='192.168.30.25',

    -> master_user='myslave',

    -> master_password='123456',

    -> master_log_file='mysql-binlog.000003',

    -> master_log_pos=475;

Query OK, 0 rows affected (0.01 sec)

 

MariaDB [(none)]> start slave;

Query OK, 0 rows affected (0.00 sec)

 

MariaDB [(none)]> show slave status\G

在master查看授权成功

[root@master ~]# netstat -anpt |grep mysql

tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN      4162mysqld         

tcp        0      0 192.168.30.25:3306      192.168.30.23:58866     ESTABLISHED 4162mysqld         

tcp        0      0 192.168.30.25:3306      192.168.30.24:59174     ESTABLISHED 4162mysqld

进行测试是否成功

主库当前存在的库

MariaDB [(none)]> show databases;

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

| Database           |

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

| information_schema |

| mysql              |

| performance_schema |

| test               |

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

4 rows in set (0.01 sec)

从库当前的库

MariaDB [(none)]> show databases;

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

| Database           |

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

| information_schema |

| mysql              |

| performance_schema |

| test               |

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

 

主库添加创建库和表

MariaDB [(none)]> create database sampdb;

Query OK, 1 row affected (0.00 sec)

 

MariaDB [(none)]> use sampdb;

Database changed

MariaDB [sampdb]> create table new(name char(20),phone char(20));

Query OK, 0 rows affected (0.08 sec)

 

MariaDB [sampdb]> show databases;

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

| Database           |

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

| information_schema |

| mysql              |

| performance_schema |

| sampdb             |

| test               |

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

5 rows in set (0.00 sec)

从库验证

MariaDB [(none)]> show databases;

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

| Database           |

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

| information_schema |

| mysql              |

| performance_schema |

| sampdb             |

| test               |

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

 

mysql主从机制的部署与应用的更多相关文章

  1. MySQL主从同步原理 部署【转】

    一.主从的作用:1.可以当做一种备份方式2.用来实现读写分离,缓解一个数据库的压力二.MySQL主从备份原理master 上提供binlog ,slave 通过 I/O线程从 master拿取 bin ...

  2. centos MySQL主从配置 ntsysv chkconfig setup命令 配置MySQL 主从 子shell MySQL备份 kill命令 pid文件 discuz!论坛数据库读写分离 双主搭建 mysql.history 第二十九节课

    centos  MySQL主从配置 ntsysv   chkconfig  setup命令  配置MySQL 主从 子shell  MySQL备份  kill命令  pid文件  discuz!论坛数 ...

  3. MySQL主从配置实现(同一台主机)

    ////////////////////MySQL主从(同一台主机)////////////////////// 1.安装配置MySQL参考之前步骤搭建MySQL服务为了做实验方便,我们在同一台机器上 ...

  4. Mysql主从同步(1) - 概念和原理介绍 以及 主从/主主模式 部署记录

    Mysql复制概念Mysql内建的复制功能是构建大型高性能应用程序的基础, 将Mysql数据分布到多个系统上,这种分布机制是通过将Mysql某一台主机数据复制到其它主机(slaves)上,并重新执行一 ...

  5. 在 CentOS7 上部署 MySQL 主从

    在 CentOS7 上部署 MySQL 主从 通过 SecureCRT 连接至 MySQL 主服务器: 找到 my.cnf 文件所在的目录: mysql --help | grep my.cnf 一般 ...

  6. MySQL主从及主主环境部署

    主从同步 主机环境 mysql的安装可以参考:https://www.cnblogs.com/brianzhu/p/8575243.htmlCentos7版本master:192.168.192.12 ...

  7. mysql主从部署

    一.安装环境 1.系统环境 系统 IP 主机名 说明 server_id centos6.7 192.168.0.173 master 数据库:主 173  centos6.7 192.168.0.1 ...

  8. 部署mysql主从同步

                                                 mysql-day06        部署mysql主从同步 案例拓扑 • 一主.一从 – 单向复制时,建议将 ...

  9. django 本地项目部署uwsgi 以及云服务器部署 uwsgi+Nginx+Docker+MySQL主从

    一 .django 本地项目部署uwsgi 1 本地部署项目 uwsgi安装测试 通过uwsgi 进行简单部署 安装uwsgi命令:pip install uwsgi -i http://pypi.d ...

随机推荐

  1. [转]十五天精通WCF——第十一天 如何对wcf进行全程监控

    说点题外话,我们在玩asp.net的时候,都知道有一个叼毛玩意叫做“生命周期”,我们可以用httpmodule在先于页面的page_load中 做一些拦截,这样做的好处有很多,比如记录日志,参数过滤, ...

  2. AngularJS:实现页面滚动到底自动加载数据的功能

    要实现这个功能,可以通过https://github.com/sroze/ngInfiniteScroll这个第三方控件来实现.步骤如下: 1. 下载ng-infinite-scroll.js程序ht ...

  3. HDU 4540

    简单得不能再简单的DP了. #include<iostream> const int inf=1<<30; using namespace std; int map[22][2 ...

  4. mybatis+mysql返回插入的主键,参数只是提供部分参数

    mybatis+mysql返回插入的主键,参数只是提供部分参数 <insert id="insertByChannelIdOpenid" useGeneratedKeys=& ...

  5. [RxJS] AsyncSubject and ReplaySubject - Learn the Differences

    We can use Subject as Observable and Observer: // Subject should be only used to emit value for priv ...

  6. ctags的基本操作总结

    ctags用法 说明: a.       ctags能够分析程序生成tags文件: b.         生成的tags文件,能够用 vi -t 查找结构体,数据类型,函数名所在位置.非常方便: ct ...

  7. 摘:SQL 常见题练习

    --.学生表 Student(SId,Sname,Sage,Ssex) --SId 学生编号,Sname 学生姓名,Sage 出生年月,Ssex 学生性别 --.课程表 Course(CId,Cnam ...

  8. nyoj860 又见01背包(背包变形)

    题目860 pid=860" style="text-decoration:none; color:rgb(55,119,188)">题目信息 执行结果 本题排行 ...

  9. 包含utf8字符的 pickle 转 json的大坑处理过程

    背景:希望将pickle转换为json,由于pickle里有utf8的字符,因此转换失败. 转换代码如下: ''' Convert a pkl file into json file ''' impo ...

  10. python chunk 方式读取大文件——本质上还是file read自身支持

    参考:https://stackoverflow.com/questions/519633/lazy-method-for-reading-big-file-in-python 最优雅方式: file ...