部署双节点双主数据库服务器mysql

分别在二台服务器上安装mysql,要求同版本或主服务器比从服务器版本高。

主机mysql配置:

Vi /etc/my.cnf

[mysqld]

Log-bin=mysql-bin

Server-id=1

Service mysqld restart

Mysql –uroot –p

从mysql配置:

Vi /etc/my.cnf

[mysqld]

Log-bin=mysql-bin

Server-id=2

然后从主mysql导出数据,mysql –uroot –p dump –single-transaction *** > ***.sql

导入到从mysql数据库:mysql –uroot –p  *** < ***.sql(***表示数据库名)

从服务器:

可能遇到的问题:log-bin一定不是log_bin,并且位置在[mysqld]的里面。否则日志不能正常开启。

主服务器:

测试:

以下为部署keepalived双主高可用:

二个服务器IP10.16.37.101,10.16.37.94,一个VIP10.16.37.200。

安装keepalived:

下载keepalived-1.2.23.tar.gz

tar –xvf keepalived-1.2.23.tar.gz –C /opt

cd /opt/keepalived-1.2.23/

./configure prefix=/usr/local/keepalived

make & make install

cp /usr/local/keepalived/etc/rc.d/init.d/keepalived /etc/rc.d/init.d/

cp /usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/

mkdir /etc/keepalived

cp /usr/local/keepalived/etc/keepalived/keepalived.conf /etc/keepalived/

cp /usr/local/keepalived/sbin/keepalived /usr/sbin/

vi /etc/keepalived/keepalived.conf

主配置:(10.16.37.101)

! Configuration File for keepalived

global_defs {

notification_email {

627885927@qq.com    #通知邮箱

}

notification_email_from 627885927@qq.com

smtp_server 127.0.0.1       #表示发送email时使用的smtp服务器地址,这里可以用本地的sendmail来实现

smtp_connect_timeout 30 #连接smtp超时时间

router_id MySQL-ha    #一般为主机名

}

vrrp_instance VI_1 {

state BACKUP   #都为BACKUP

interface eth0

virtual_router_id 51

priority 100     #权限100

advert_int 1

nopreempt         #不抢占

authentication {

auth_type PASS

auth_pass 1111

}

virtual_ipaddress {

10.16.37.200   #虚拟IP地址,即VIP

}

}

virtual_server 10.16.37.200 3306 {  #监控端口及配置

delay_loop 2

lb_algo wrr

lb_kind DR

persistence_timeout 60

protocol TCP

real_server 10.16.37.101 3306 {  #真实IP地址

weight 3

notify_down /usr/local/MySQL/bin/MySQL.sh #宕机脚本

TCP_CHECK {

connect_timeout 3

connect_port 3306

}

}

}

从配置:(10.16.37.94)

! Configuration File for keepalived

global_defs {

notification_email {

627885927@qq.com    #通知邮箱

}

notification_email_from 627885927@qq.com

smtp_server 127.0.0.1       #表示发送email时使用的smtp服务器地址,这里可以用本地的sendmail来实现

smtp_connect_timeout 30 #连接smtp超时时间

router_id Nginx-ha    #一般为主机名

}

vrrp_instance VI_1 {

state BACKUP   #都为BACKUP

interface eth0

virtual_router_id 51

priority 90     #权限90

advert_int 1

authentication {

auth_type PASS

auth_pass 1111

}

virtual_ipaddress {

10.16.37.200   #虚拟IP地址,即VIP

}

}

virtual_server 10.16.37.200 3306 {  #监控端口及配置

delay_loop 2

lb_algo wrr

lb_kind DR

persistence_timeout 60

protocol TCP

real_server 10.16.37.94 3306 {  #真实IP地址

weight 3

notify_down /usr/local/MySQL/bin/MySQL.sh #宕机脚本

TCP_CHECK {

connect_timeout 3

connect_port 3306

}

}

}

vi  /usr/local/MySQL/bin/MySQL.sh

#!/bin/bash

pkill keepalived

# chmod +x  /usr/local/MySQL/bin/MySQL.sh

测试:关闭一台服务器mysql,ps aux | grep keepalved查看keepalived是否自动关闭。注意防火墙和selinux的关闭!!

双主MySQL+keepalived高可用配置的更多相关文章

  1. Mysql+Keepalived双主热备高可用操作记录

    我们通常说的双机热备是指两台机器都在运行,但并不是两台机器都同时在提供服务.当提供服务的一台出现故障的时候,另外一台会马上自动接管并且提供服务,而且切换的时间非常短.MySQL双主复制,即互为Mast ...

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

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

  3. mysql+keepalived 双主热备高可用

    理论介绍:我们通常说的双机热备是指两台机器都在运行,但并不是两台机器都同时在提供服务.当提供服务的一台出现故障的时候,另外一台会马上自动接管并且提供服务,而且切换的时间非常短.MySQL双主复制,即互 ...

  4. 【Keepalived+MySQL】MySQL双主互备+高可用

    一.基本信息说明 [DB1] IP: 192.168.102.144 hostname: LVS-Real1 [DB2] IP: 192.168.102.145 hostname: LVS-Real2 ...

  5. 企业级-Mysql双主互备高可用负载均衡架构(基于GTID主从复制模式)(原创)

    前言:          原理与思想        这里选用GTID主从复制模式Mysql主从复制模式,是为了更加确保主从复制的正确性.健康性与易配性.这里做的是两服务器A,B各有Mysql实例331 ...

  6. keepalived + haproxy 实现web 双主模型的高可用负载均衡--转

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://xz159065974.blog.51cto.com/8618592/140581 ...

  7. Keepalived高可用配置

    Keepalived简介 Keepalived基于VRRP协议在服务器之间建立了主备关系,通常称之为高可用对.VRRP中文叫虚拟路由冗余协议,目的是解决静态路由的单点故障问题.高可用对之间通过IP多播 ...

  8. haproxy + keepalived 实现web 双主模型的高可用负载均衡

    参考文章 http://xz159065974.blog.51cto.com/8618592/1405812 http://blog.chinaunix.net/uid-25266990-id-398 ...

  9. 基于keepalived双主模型的高可用LVS

    背景知识: keepalived:Keepalived的作用是检测web服务器的状态,如果有一台web服务器死机,或工作出现故障,Keepalived将检测到,并将有故障的web 服务器从系统中剔除, ...

随机推荐

  1. LOL

    当输入数据一样时,计算结果是一样的,但运行时间的差别很大.在算法正确的前提下,应该选择算法效率高的 嵌入式软件,BSP驱动,通信协议,上层应用软件. 多协议标签交换(MPLS)是一种用于快速数据包交换 ...

  2. Java数据类型和运算符

    一,数据类型分类(2种) 1. 基本数据类型(3种) 数值型: 整数类型(4种): byte(1字节):范围(-128~127): short(2字节):范围(-32768~32767): int(4 ...

  3. (转载)C++ ofstream和ifstream详细用法

    原文出自[比特网],转载请保留原文链接:http://soft.chinabyte.com/database/460/11433960.sh [导读] ofstream是从内存到硬盘,ifstream ...

  4. python threading queue模块中join setDaemon及task_done的使用方法及示例

    threading:     t.setDaemon(True)  将线程设置成守护线程,主进行结束后,此线程也会被强制结束.如果线程没有设置此值,则主线程执行完毕后还会等待此线程执行.     t. ...

  5. MSM平台RPM

    Software Component Block Diagram RPM(Resource Power Manager)是高通MSM平台另外加的一块芯片,虽然与AP芯片打包在一起,但其是一个独立的AR ...

  6. Fair Candy Swap LT888

    Alice and Bob have candy bars of different sizes: A[i] is the size of the i-th bar of candy that Ali ...

  7. Python基础2 字符编码和逻辑运算符

    编码 AscII码 :标准ASCII码是采用7位二进制码来编码的,最高为0,没有0000 0000,所以就是2**7-1=127个字符 , 当用1个字节(8位二进制码)来表示ASCII码时,就在最高位 ...

  8. 分布式配置中心 携程(apollo)

    1.传统配置文件与分布式配置文件区别 传统配置文件:如果修改了配置文件,需要重新打包发布,重新发布服务,而且每个环境的变更配置文件,比较繁琐. 分布式配置文件:将配置文件注册到配置中心上去,可以使用分 ...

  9. 【Luogu P4149】[IOI2011]Race(点分治)

    自闭了几天后的我终于开始做题了..然后调了3h一道点分治板子题,调了一天一道IOI... 最后还是自己手造数据debug出来的... 这题一看:树上路径问题,已知路径长度求balabala,显然是点分 ...

  10. 过千万、亿条数据的mysql表更新 mysql 线程状态

    分段更新 UPDATE question SET `status`=1 WHERE status!=1 LIMIT 3000;UPDATE answer SET `status`=1 WHERE st ...