第一台:192.168.0.160

第二台:192.168.0.170

主从配置,第一步:192.168.0.160 作为主数据库,192.168.0.170作为从数据库,配置如下:

========192.168.0.160配置=======

my.cnf配置文件

server-id=1

log-bin=mysql-bin-master  #启用mysql二进制日志文件

binlog-do-db=HA      #指定允许从同步的数据库

binlog-ignore-db=mysql   #指定不允许从同步的数据库

mysql> grant replication slave on *.*  to  'slave'@'192.168.0.170'  identified by 'password';

mysql> show master status;

mysql> flush privileges

mysql> select * from mysql.user where user='slave';

==================================

==========192.168.0.170=============

my.cnf配置文件

server-id=2

mysql>stop slave;

mysql> change master to master_host='192.168.0.160',master_user='slave',master_password='password';

mysql>flush privileges;

mysql> start slave;

===================================

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

测试:

在192.168.0.160上创建数据库

mysql> create database test;

myql> show databases;

在192.168.0.170上查询数据库

mysql>show slave status;  #io进程和sql进程都必须为yes,表示配置正确。

mysql> show databases;

查询成功,表示主从配置成功。

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

===================================

主从配置,反向再进行部署一次即可。

第二步:192.168.0.170 作为主数据库,192.168.0.160作为从数据库,配置如下:

========192.168.0.170配置=======

my.cnf配置文件,添加

log-bin=mysql-bin-slave

binlog-do-db=HA

binlog-ignore-db=mysql

mysql> set sql_log_bin=off  #首先关闭bin_log日志记录

mysql> grant replication slave on *.*  to  'slave'@'192.168.0.160' identified by 'password';  #给从库赋权同步功能

mysql>select host,user from mysql.user where user='slave';      #查询从库同步账号的所有登陆主机信息

mysql> delete from mysql.user where user='slave' and host='ip address';  #删除多余的不需要的主机登陆信息,安全

mysql>show master status;            #查看主库信息

mysql>set sql_log_bin=on            

mysql>flush privileges;             #刷新权限表信息

=============================================

========192.168.0.160配置=======

mysql> show slave status;      #查询从库进程状态,若有no,则需要检查网络及io状态,关闭防火墙等。

mysql> set sql_log_bin=off;

msyql>stop slave;

msyql>change master to master_host='192.168.0.170',master_user='slave',master_password='password'; 

mysql> start slave;        #如有报错,则需要使用reset slave 重置slave,然后重新设置

mysql> reset slave;

myql> change master to master_host='192.168.0.170',master_user='slave',master_password='jpassword';

mysql> start slave;

mysql> show slave status\G

mysql> flush priviliges;

mysql>set sql_log_bin=on;

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

测试:

在192.168.0.170上创建数据库

mysql> create database testA;

myql>show slave status;    #查询进程状态,必须都为yes,表示正常

在192.168.0.160上查询数据库验证

mysql> show database testA;  #如果存在表示同步成功

myql>show slave status;    #进程状态必须同为yes。

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

至此,mysql主主同步配置全部完成。

mysql的双主模式配置的更多相关文章

  1. haproxy+keepalived主备与双主模式配置

    Haproxy+Keepalived主备模式 主备节点设置 主备节点上各安装配置haproxy,配置内容且要相同 global log 127.0.0.1 local2 chroot /var/lib ...

  2. 生产环境中mysql+keepalive双主模式,keepalive守护进程实现双主切换提供数据库服务

    mysql+keepalive实现浮动地址自动切换,由于keepalive无自带健康检查功能,所以必须自动编写健康检查守护进程(监控DB1和DB2数据库的监控状态,来保证浮动地址双机自动切换.) 一, ...

  3. 高可用-mysql安装,双主模式+keepalived

    mysql安装 1.添加用户 groupadd mysql useradd -r -g mysql mysql

  4. Docker Mysql数据库双主同步配置方法

    一.背景 可先查看第一篇<Docker Mysql数据库主从同步配置方法>介绍 二.具体操作 1.创建目录(~/test/mysql_test1): --mysql --mone --da ...

  5. mysql的双主模式

    mysql主主复制配置 server1 ip:192.168.0.231server2 ip:192.168.0.234 更改两台主机的mysql配置文件vim /etc/my.cnfserver1添 ...

  6. Keepalived双主模式配置流程

    实验说明 1)keepalived 支持配置多个VRRP实例,每个实例对应一个业务 2)本次实验将实现 keepalived 的互为主备: 业务A:keepalived01为Master,keepal ...

  7. MySQL keepalived 双主.md

    MySQL keepalived 双主搭建 环境说明 系统 IP 主机名 mysql keepalived VIP CentOS 6.8 192.168.197.61 C6-node1 5.6.36 ...

  8. 通过keepalived搭建MySQL双主模式的高可用集群系统

    1. 配置MySQL双主模式 1.修改my.cnf配置文件 默认情况下,MySQL的配置文件是/etc/my.cnf,在配置文件的[mysqld]段添加如下内容: server-id=1 log-bi ...

  9. MySQL的主从复制+双主模式

    MySQL的主从复制 部署环境: MySQL master 192.168.40.21 MySQL slave  192.168.40.22 思路: 当主MySQL上进行数据上的操作或者变化时,主My ...

随机推荐

  1. python之开发规范

    命名规范 Python之父推荐的规范 Type Public Internal Modules lower_with_under _lower_with_under Packages lower_wi ...

  2. Django框架——基础之路由系统(urls.py)

    1.URL路由系统前言 URL是Web服务的入口,用户通过浏览器发送过来的任何请求,都是发送到一个指定的URL地址,然后被响应. 在Django项目中编写路由,就是向外暴露我们接收哪些URL的请求,除 ...

  3. python如何判断字符串是否以某个字母或者数字结尾

    1.如果是对某个确定的字符或者数字进行判断,可以直接使用endswith()方法 # 判断str_a是否以‘A’结尾 str_a = '20190813A' print(str_a.endswith( ...

  4. this(ES6箭头函数里的this)

    一,了解前须知 1,箭头函数:出现的作用除了让函数的书写变得很简洁,可读性很好外:最大的优点是解决了this执行环境所造成的一些问题.比如:解决了匿名函数this指向的问题(匿名函数的执行环境具有全局 ...

  5. Chrome去掉标签页8个框

    最终效果: 解决思路: 在标签页鼠标右击弹出的菜单项中存在“查看页面源码”一项,由此可确定chrome的标签页是由一个html页面控制的,只要修改其页面源码便能去掉8个框. 经网上查阅确定了标签页的源 ...

  6. 网络初级篇之网络设备的FTP(原理与实验)

    一.什么是FTP    FTP就是文件传输协议.用于互联网双向传输.二.FTP的作用    控制文件下载空间在服务器复制文件从本地计算机或本地上传文件复制到服务器上的空间,主要的作用就是文件的传输,保 ...

  7. 四,k8s集群资源清单定义入门

    目录 资源对象 创建资源的方法 清单帮助命令 创建测试清单 资源的三种创建方式 资源对象 workload:Pod, ReplicaSet, Deployment, StatefulSet, Daem ...

  8. Linux三剑客:grep、awk、sed

    ---------------------------------------------------------------------------------------------------- ...

  9. BZOJ1079 [SCOI2008]着色方案[组合计数DP]

    $有a_{1}个1,a_{2}个2,...,a_{n}个n(n<=15,a_{n}<=5),求排成一列相邻位不相同的方案数.$ 关于这题的教训记录: 学会对于复杂的影响分开计,善于发现整体 ...

  10. SVN各种错误提示产生原因及处理方法大全

    SVN各种错误提示产生原因及处理方法大全 SVN各种错误提示产生原因及处理方法大全 1. svn: Server sent unexpected return value (500 Internal ...