第一台: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. JDBC1

    ---恢复内容开始--- create table `account` ( `id` ), `name` ), `balance` ) ); insert into `account` (`id`, ...

  2. mybatis postgresql insert后返回自增id

    在使用mybatis + postgresql,我们有时在插入数据时需要返回自增id的值,此时在插入时,可以按照以下例子来编写mapper文件 <insert id="insertUs ...

  3. redis集群启动和关闭脚本

    创建startall.sh /usr/local/redis/bin/redis-server /usr/local/redis/redis-cluster/7001/redis.conf /usr/ ...

  4. 数据绘图工具之Matplotlib

    一.安装:绘图和可视化 pip install matplotlib 我们已经下好了anaconda 包含了绘图工具包 直接导入即可 import matplotlib.pyplotlib as pl ...

  5. MyBatis--把SQL带进Java

    简单来看软件服务的工作流程:用户端界面操作请求<---->本地处理|远程服务程序拦截转发请求<---->服务端逻辑功能实现<--MyBatis用在这里-->数据库. ...

  6. PXE自动化部署

    PXE 预启动执行环境,基于tftp条件下完成基于网络的自动化部署软件 原理: 网卡利用自身的tftp 请求dhcp 服务器获取ip和一个pxelinux.0的地址 在给定的tftp目录下存有ks的配 ...

  7. Microsoft SQL Server下的SQL语句

    SQL语句先前写的时候,很容易把一些特殊的用法忘记,我特此整理了一下SQL语句操作.一.基础 1.说明:创建数据库CREATE DATABASE database-name 2.说明:删除数据库dro ...

  8. Django学习系列17:在模板中渲染待办事项

    前面提到的问题中在表格中显示多个待办事项 是最后一个容易解决的问题.要编写一个新单元测试,检查模板是否也能显示多个待办事项: lists/tests.py def test_displays_all_ ...

  9. 【洛谷P4309】最长上升子序列

    题目大意:给定一个序列,初始为空.现在我们将 1 到 N 的数字插入到序列中,每次将一个数字插入到一个特定的位置.每插入一个数字,我们都想知道此时最长上升子序列长度是多少? 题解:学会了 rope 操 ...

  10. Web前端经典面试试题(三)

    一. 什么是Ajax??? 术语Ajax用来描述一组技术,它使浏览器可以为用户提供更为自然的浏览体验. Ajax它是"Asynchronous JavaScript + XML的简写&quo ...