linux的mysql的高可用配置_mysql高可用实现
说明:mysql高可用集群方案设计
server1 mysqld服务器 172.16.23.11
server2 mysqld服务器 172.16.23.12
数据存放 nfs 服务器 172.16.23.6
server1,2为了实现高可用,需要一个共享存储,这里用一个nfs服务器提供,nfs服务器上新建一个逻辑卷,把它挂载在/mydata目录下,这样方便mysql数据的存储。nfs只需把这个目录以读写方式共享给server1,2,且三台服务器都有同一个mysql用户,mysql组,且id号都一样。这样mysql服务器上只需挂载这个目录到本地,那么就可以共享数据。这篇博客与上一篇共同实现!
一、nfs服务器配置
1、新建分区,并挂载到/mydata下
fdisk /dev/sda
新建一个20G的分区,8e逻卷
partprob /dev/sda
pvcreate /dev/sda5
vgcreate myvg /dev/sda5
lvcreate -L 10G -n mydata myvg
mke2fs -j -L MYDATA /dev/myvg/mydata //格式化
mkdir /mydata
vim /etc/fstab //实现开机自动挂载
LABLE=MYDATA /mydata ext3 default 0 0
mount -a //读取文件,进行挂载
mount //查看是否挂载
groupadd -g 355 -r mysql
useradd -g mysql -r -u 355 -s /sbin/nologin mysql
id mysql
chown -R mysql:mysql /mydata
2、启动nfs服务器,并导出文件系统
vim /etc/exports 添加如下一行
mydata 172.16.23.11(rw,no_root_squash) 172.16.23.12(rw,no_root_squash)
service nfs start
rpcinfo -p localhost 查看是否启动
chkconfig nfs on 开机自动启动
showmount -e localhost 查看共享给谁
二、mysql服务器设置 server1,server2一样
(1)保证三台服务器时间同步
(2)增加用户:
groupadd -g 355 -r mysql
useradd -g mysql -r -u 355 mysql
(3)挂载文件系统,
mkdir /mydata
mount -t nfs 172.16.23.6:/mydata /mydata
su - mysql
touch aa 测试是否有写权限
mkdir /mydata/data //属于mydata用户、组,这样mysql数据才能写入
(4) 下载安装mysql lftp 172.16.0.1/pub/Sources/mysql-5.5 mysql-5.5.22
tar xf mysql-5.5.22..... -C /usr/local
ln -sv mysql-5.5.22... mysql
cd mysql
chown -R msyql:mysql .
scripts/mysql_install_db --user=mysql --datadir=/mydata/data 重要
cp support-files/my-large.cnf /etc/my.cnf
vim /etc/my.cnf 添加一行datadir=/mydata/data
cp support-files/mysql.server /etc/init.d/mysqld
chkconfig --list mysqld
chkconfig mysqld off //不能开机自动启动,服务器集群
(5)server2安装mysql跟server1基本一样
server2不需要初始化,因为/mydata已经有元数据了。
hostname 要设置,date要一致
(6)由于前面已经配置了Corosync+Pacemaker高可用集群,
这里只需保证以下配置
crm configure property stonith-enabled=false //由于没stonith设备,启用会报错,这里禁用
crm configure no-quorum-policy=ignore //由于这里是两台服务群集,不需要quorum,ignore表示一台故障,另一台仍能用
crm configrue rsc_defaults resource-stickiness=100 设置默认资源粘性值,表示一台故障时,再次启动服务时是否会再转移回来,正值表示更愿留在当前服务器上
查看资源属性: crm(live)ra# meta ocf:heartbeat:IPaddr
primitive myip ocf:heartbeat:IPaddr params ip="172.16.23.6" 添加一条基本资源
show
commit 提效crm configure property no-quorum-policy=ignore
(7)给nfs服务器上的/mydata目录定义为高可用资源
umount /mydata 两服务器都需卸载,只有active的服务器才能访问数据
#crm ra list ocf heartbeat 有一个Filesystem代理脚本
crm ra meta ocf:heartbeat:Filesystem 查看这个脚本里的参数,方便我们设置
定义资源:
crm(live)configure# primitive mynfs ocf:heartbeat:Filesystem params device="172.16.23.6:/mydata" directory="/mydata" fstype="nfs" op start timeout=60s op stop timeout=60s
设备为nfs那台服务器上共享的目录,目录为当前主机挂载的目录,类型为nfs类型 op 选项里面的值最好大于脚本文件只定义的最小值,否则会报错
commit 提交
crm status 查看挂载到那个主机上,在那个主机上查看 ls /mydata 如果在server1上
让server1变为被动,查看内容
crm node standby
crm node online
(8)、添加mysqld服务,nfs与mysqld应在同一个主机上,且nfs先于mysqld挂载
crm(live)configure# primitive mysqld lsb:mysqld 添加mysql服务
crm(live)configure# colocation mysqld_and-mynfs inf: mysqld mynfs myip 排列约束,mysqld与nfs一定要在一起(如果错可delete)
crm(live)configure# order mysqld_after_mynfs mandatory:mynfs mysqld:start //mysqld启动必须晚于nfs
crm(live)configure# show xml
crm(live)configure# order mysql_after_myip mandatory: myip mysqld //ip地址早于mysqld启动
commit
[定义组 group web WebIP mynfs]
crm status 看那台服务器上
(9)、验证测试
/usr/local/mysql/bin/mysql
创建远程连接的用户:
grant all on *.* to root@'172.16.%.%' identified by '12345'
flush privileges;
172.16.23.9这台客户端连接测试
mysql -uroot -h172.16.23.6 -p12345
创建数据库测试
(10)、模拟正在工作的mysql服务器故障
crm node standby
crm status
172.16.23.9这台客户端连接测试
mysql -uroot -h172.16.23.6 -p12345
创建数据库测试
(11)、查看当前系统支持stonith设备
stonith -L
man stonith
stonith -t meatware -n
linux的mysql的高可用配置_mysql高可用实现相关推荐
- LNMP(linux+nginx+mysql+php)服务器环境配置
LNMP(linux+nginx+mysql+php)服务器环境配置 一.简介 Nginx是俄罗斯人编写的十分轻量级的HTTP服务器,Nginx,它的发音为 "engine X", ...
- Linux下mysql支持中文,linux下mysql环境支持中文配置步骤
sql脚本执行前加上: CREATE DATABASE IF NOT EXISTS mydatabase DEFAULT CHARSET utf8 COLLATE UTF8_GENERAL_CI; u ...
- Linux下MySQL数据库主从同步配置
操作系统:CentOS 6.x 64位 MySQL数据库版本:mysql-5.5.35 MySQL主服务器:192.168.21.128 MySQL从服务器:192.168.21.129 准备篇: 说 ...
- mysql keepalived双主双活_mysql高可用架构方案之中的一个(keepalived+主主双活)
Mysql双主双活+keepalived实现高可用 文件夹 1.前言... 4 2.方案... 4 2.1.环境及软件... 4 2.2.IP规划... 4 2.3.架构图... 4 3.安装设置MY ...
- mysql 双主 脑裂_MySQL高可用方案——双主
MySQL高可用方案--双主 发布时间:2020-03-01 20:45:48 来源:51CTO 阅读:253 作者:warrent MySQL的高可用方案有很多种,双主.MHA.MMM等等,这里只是 ...
- linux下Mysql 的安装、配置、数据导入导出
为什么80%的码农都做不了架构师?>>> <p><span>MySQL</span><span>是一种</span> ...
- mysql多实例安装配置_MySQL多实例安装配置
MySQL进行多实例配置再生产环境中非常常见,比如一些高配置数据库服务器,就会跑多个MySQL实例,借助多实例绑定的方式提高服务器的整体资源利用率.另外在MySQL5.7以上版本还不支持多源复制时,当 ...
- mysql主主同步配置_MySQL 主主同步配置步骤
MySQL 主主同步配置 服务器名 IP 系统 MySQL odd.example.com 192.168.1.116 rhel-5.8 5.5.16 even.example.com 192.168 ...
- mysql 8.0优化配置_mysql 8.0.18 安装配置优化教程
Mysql安装.配置.优化,供大家参考,具体内容如下 Mysql下载 首先登入官网下载mysql的安装包,官网地址https://dev.mysql.com/下拉到最后选择downloads里的 My ...
最新文章
- JLOI2011 飞行路线
- 数据结构之二叉树(遍历、建立、深度)
- 115个Java面试题和答案——终极列表(上)
- php和c语言的字符数组中,字符数组和字符串的区别,C语言字符数组和字符串区别详解...
- Bailian2912 三个完全平方数【进制+枚举】
- 07. 如果容器中包含了通过new操作创建的指针,切记在容器对象析构前将指针delete掉
- Xen和KVM的guest主机热添加硬盘
- WCF系列教程之WCF服务宿主与WCF服务部署
- 经纬度 android,android....中国各城市的经纬度,
- educoder第9关:原码一位乘法器设计
- 怎么把video文件改成mp4_怎么把视频转换成MP4格式?这招教你轻松搞定!
- 软考嵌入式系统设计师
- ps无法打开计算机缺失文件,ps打开出现dll文件丢失怎么解决
- 微信小程序 – 解决腾讯视频插件—视频只能播放广告问题
- Ubuntu16.04发热 CPU/GPU温度比win10高解决方法
- 编写一个学生类(Students),包括姓名(name)、性别(sex)、学号(num)、语文课(Chinese)、英语课(English)、 //数学课(Math)和平均值(avg),方法包括求三门
- 开放申请 | 2020年百度奖学金正式启动
- 短信拦截,如何抢先于QQ通讯录,360
- GD32F405RGT6-SPI主从模式代码
- Python4.22每周一练