mysql集群共享存储
Ⅰ 简述mysql该怎样进行集群部署
mysql集群部署操作如下:
1、在MySQL集群中.当table引擎为NDBCLUSTER时才做集群,其他非NDBCLUSTER表和一般MySQL数据库表一样,不会共享数据。NDBCLUSTER表数据存储在Data node服务器内存中,Data Node可以为1台或多台服务器,它们之间存放共享数据。Data Node服务器可以分组数据。
例如:2,3,4,5为四台Data Node服务器ID. 2,3为组0; 4,5为组1; 2,3维持数据相同,4,5维持数据相同。 组0和组1维持数据不同。
2、sql node服务器中,非NDBCLUSTER数据存在本身数据库中,table引擎为NDBCLUSTER时,数据存储在Data Node中。当查询NDBCLUSTER表时,它会从Data node集群中提起数据.
3、Manager server管理SQl node和Data node状态。
Ⅱ mysql分布式集群如何理解,相对mysql主从复制,双主集群有什么区别
最明显,也最本质,data-sharing和nothing-sharing的区别。
集群是共享存储的。复制中没有任何共享。每台机器都是独立且完整的系统。
由此,带来的是应用和实现技术上的区别。
Ⅲ Mysql“集群”和”主从“两者的区别是什么
mysql的主从服务器是地理上独立,通过网络保持同步拷贝的系统,他们的处理器内存,永久存储介质都是独立于其他站点的。
Ⅳ 运维mysql主从复制集群中,遇到过哪些问题,如何解决
group_replication_member_expel_timeout 指定组复制组成员在产生怀疑之后,从组中排除怀疑失败的成员之前等待的时间(以秒为单位)。在产生怀疑之前的最初 5 秒检测时间不计入该时间。直到并包括 MySQL 8.0.20 在内,group_replication_member_expel_timeout 默认值均为 0,这意味着没有等待时间,并且在 5 秒钟的检测时间结束后,可疑成员应立即被驱逐。从 MySQL 8.0.21 开始,该值默认为 5,这意味着在 5 秒钟的检测时间后如果该节点还是不正常,那会在等 5 秒钟,如果可疑成员还是不正常,超过这个时间将被驱逐。
为验证该参数对集群影响,我们通过实验模拟不同时长的网络延迟,然后调整group_replication_member_expel_timeout 值观察该参数值对集群驱逐故障节点的影响。
Ⅳ mysql为什么能用nfs作为共享存储
还是先上规划图
1.首先进行资源的分析
1)Vip
2)Mysqld
3)Nfs
理清他们之间的启动先后顺序:nfs必须在Mysqld前启动
2.nfs的配置
Nfs共享目录上挂载的分区,最好做成lvm,实现自动扩展
2.1.安装
#yum-yinstallnfs-utils
2.2配置
#mkdir/share
#vim/etc/exports
172.16.98.3:/share172.16.98.1(rw,no_root_squash)172.16.98.2(rw,no_root_squash)
#servicenfsstart
#groupadd-g186mysql
#useradd-u186-gmysql-s/sbin/nologin-Mmysql
#chownmysql:mysql/share
3.Mysql1结合nfs的安装测试
3.1挂载nfs
#mkdir/data
#chownmysql:mysql/data
#mount172.16.98.3:/share/data
3.2使用mysql的解压缩包安装
#groupadd-g186mysql
#useradd-u186-gmysql-s/sbin/nologin-Mmysql
*在三台机器上,创建的mysql组和用户的uid、gid要保持一致
#tarxfmysql-5.5.24-linux2.6-i686.tar.gz-C/usr/local
#cd/usr/local
#ln-smysql-5.5.24-linux2.6-i686mysql
#cdmysql
#chown-Rmysql:mysql.
#scripts/mysql_install_db--user=mysql--datadir=/data
#chowm-Rroot.
#cpsupport-files/my-large.cnf/etc/my.cnf
#cpcpsupport-files/mysql.server/etc/rc.d/init.d/mysqld
#chmod+x/etc/rc.d/init.d/mysqld
#vim/etc/profile
PATH=$PATH:/usr/local/mysql/bin
#exportPATH=$PATH:/usr/local/mysql/bin
3.3编辑配置文件,启动服务
#vim/etc/my.cnf
[mysqld]
thread_concurrency=2
datadir=/data
#servicemysqldstart
3.4另一台mysql的安装
参考前面的步骤
需要说明一点的是
Mysql的安装,这里不需要再初始化mysql
##tarxfmysql-5.5.24-linux2.6-i686.tar.gz-C/usr/local
#cd/usr/local
#ln-smysql-5.5.24-linux2.6-i686mysql
#cdmysql
#chowm-Rroot.
#cpsupport-files/my-large.cnf/etc/my.cnf
#cpcpsupport-files/mysql.server/etc/rc.d/init.d/mysqld
#chmod+x/etc/rc.d/init.d/mysqld
#vim/etc/profile
PATH=$PATH:/usr/local/mysql/bin
#exportPATH=$PATH:/usr/local/mysql/bin
#servicemysqldstart
#cd/data
#
3.5停止所有资源
1)关闭mysql服务
2)将nfs共享目录卸载
4.Corosync的安装
前期准备
1)ssh双机互信,方便配置
2)时间保持一致
3)/etc/hosts,主机名设置,互相解析
4.1corosync的安装,两台都安装上
##yuminstall-ycluster-glue-1.0.6-1.6.el5.i386.rpmcluster-glue-libs-1.0.6-1.6.el5.i386.rpmcorosynclib-1.2.7-1.1.el5.i386.rpmcorosync-1.2.7-1.1.el5.i386.rpmheartbeat-3.0.3-2.3.el5.i386.rpmheartbeat-libs-3.0.3-2.3.el5.i386.rpmlibesmtp-1.0.4-5.el5.i386.rpmpacemaker-cts-1.1.5-1.1.el5.i386.rpmpacemaker-libs-1.1.5-1.1.el5.i386.rpmpacemaker-1.1.5-1.1.el5.i386.rpmperl-TimeDate-1.16-5.el5.noarch.rpmresource-agents-1.0.4-1.1.el5.i386.rpm
4.2corosync的配置
1)mysql1
#cd/etc/corosync
#cpcorosync.conf.examplecorosync.conf
#vimcorosync.conf
compatibility:whitetank
totem{
version:2
secauth:on开启身份验证
threads:0
interface{
ringnumber:0
bindnetaddr:172.16.0.0
mcastaddr:226.94.1.1
mcastport:5405
}
}
logging{
fileline:off
to_stderr:on
to_logfile:yes
#to_syslog:yes
logfile:/var/log/cluster/corosync.log
debug:off
timestamp:on
logger_subsys{
subsys:AMF
debug:off
}
}
amf{
mode:disabled
}
service{
ver:0
name:pacemaker
}
#corosync-keygen创建authkeys
#scpauthkeyscorosync.confnode2:/etc/corosync
两台mysql上分别创建用于日志的目录
#mkdir/var/log/cluster
4.3通过mysql1开启corosync,配置资源
1)开启
#servicecorosyncstart
#sshnode2'servicecorosyncstart'
#crm_mon
============
Lastupdated:ThuAug922:12:222012
Stack:openais
CurrentDC:node1.7ing.com-partitionwithquorum
Version:1.1.5-1.1.el5-
2Nodesconfigured,2expectedvotes
0Resourcesconfigured.
============
Online:[node2.7ing.comnode1.7ing.com]
2)资源的配置
#crm
crm(live)#configure
crm(live)configure#primitivevipocf:heartbeat:IPaddrparamsip=172.16.99.1
crm(live)configure#primitivemysqldlsb:mysqld
crm(live)configure#primitivenfsocf:heartbeat:Filesystemparamsdevice=172.16.98.3:/sharedirectory=/datafstype=nfsopstarttimeout=60opstoptimeout=60
*定义nfs资源,默认的超时时间是20s,是小于建议的时间60s的,所以手动配置
crm(live)configure#colocationvip_mysqld_nfsinf:mysqldnfsvip
crm(live)configure#ordermysqld_after_nfsinf:nfsmysqld
crm(live)configure#propertystonith-enabled=false
crm(live)configure#propertyno-quorum-policy=ignore
crm(live)configure#verify
crm(live)configure#commit
3)检测
#crm_mon
Lastupdated:ThuAug922:34:522012
Stack:openais
CurrentDC:node1.7ing.com-partitionwithquorum
Version:1.1.5-1.1.el5-
2Nodesconfigured,2expectedvotes
3Resourcesconfigured.
============
Online:[node2.7ing.comnode1.7ing.com]
nfs(ocf::heartbeat:Filesystem):Startednode1.7ing.com
vip(ocf::heartbeat:IPaddr):Startednode1.7ing.com
mysqld(lsb:mysqld):Startednode1.7ing.com
#crmnodestandy
#crm_mon
============
Lastupdated:ThuAug922:36:182012
Stack:openais
CurrentDC:node1.7ing.com-partitionwithquorum
Version:1.1.5-1.1.el5-
2Nodesconfigured,2expectedvotes
3Resourcesconfigured.
============
Nodenode1.7ing.com:standby
Online:[node2.7ing.com]
nfs(ocf::heartbeat:Filesystem):Startednode2.7ing.com
vip(ocf::heartbeat:IPaddr):Startednode2.7ing.com
mysqld(lsb:mysqld):Startednode2.7ing.com
Ⅵ mysql集群架构 怎么看
MySQL集群是一个无共享的(shared-nothing)、分布式节点架构的存储方案,其目的是提供容错性和高性能。
数据更新使用读已提交隔离级别(read-committedisolation)来保证所有节点数据的一致性,使用两阶段提交机制(two-phasedcommit)保证所有节点都有相同的数据(如果任何一个写操作失败,则更新失败)。
无共享的对等节点使得某台服务器上的更新操作在其他服务器上立即可见。传播更新使用一种复杂的通信机制,这一机制专用来提供跨网络的高吞吐量。
通过多个MySQL服务器分配负载,从而最大程序地达到高性能,通过在不同位置存储数据保证高可用性和冗余。
Ⅶ mysql 如何让俩个版本 公用一个储存目录
首先把mysql的服务先停掉,更改MySQL配置文件My.ini中的数据库存储主路径,将老的数据库存储主路径中的数据库文件和文件夹复制到新的存储主路径,接下来重启搞定
一.首先把mysql的服务先停掉。
二.更改MySQL配置文件My.ini中的数据库存储主路径
打开MySQL默认的安装文件夹C:\Program Files\MySQL\MySQL Server
5.1中的my.ini文件,点击记事本顶部的“编辑”,“查找”,在查找内容中输入datadir后并点击“查找下一个”转到“Path to the
database root数据库存储主路径”参数设置,找到datadir="C:/Documents and Settings/All
Users/Application Data/MySQL/MySQL Server
5.1/Data/"即是默认的数据库存储主路径设置,现将它改到C:\mysql\data(你希望的)文件夹,正确的设置是datadir="C:/mysql/data/"。
更改完成后点击菜单栏的“文件”,再点击“保存”。
三.将老的数据库存储主路径中的数据库文件和文件夹复制到新的存储主路径
将C:/Documents and Settings/All Users/Application Data/MySQL/MySQL Server
5.1/Data/文件夹中的所有文件和文件夹拷贝到你新建的文件夹目录下。
四.重启MySQL服务
五.验证更改数据库存储主路径的操作是否成功
Ⅷ mysql集群存储实现负载均衡的优缺点。与oracle RAC相比呢
mysql
cluster
是无共享模式,即数据分布存放于每个节点中,而oracle
rac是共享存储模式,数据集中存储的,每个rac节点只是一个oracle实例,两者实现原理不同