Centos7部署mysql集群
环境两台centos7虚拟机,关闭防火墙和selinux(虚拟机未安装mysql,因为mysql集群要带有galera组件)
以下步骤没有特殊说明直接复制即可
环境准备
vim /etc/yum.repos.d/galera.repo ###配置yum源下载mysql
[galera]
name=galera
baseurl=http://releases.galeracluster.com//mysql-wsrep-5.7/centos/7/x86_64/
gpgcheck=0
yum -y install epel-release
yum -y install mysql-wsrep-5.7.x86_64 galera.x86_64
systemctl start mysqld;systemctl enable mysqld
mysqladmin -p"`cat /var/log/mysqld.log |grep 'temporary password' |awk '{print $NF}'`" password "wwyS123456@" ###修改mysql初始密码
echo "create user 'ww'@'192.168.95.%' IDENTIFIED BY 'wwyS123456@';" |mysql -p"wwyS123456@" ###创建对外授权账号(对一个网段进行授权要根据自己虚拟机ip进行配置)
echo "grant all on *.* to 'ww'@'192.168.95.%';" |mysql -p"wwyS123456@" ###为账号授权
galera配置
yum -y install rsync 数据传输的方式必要软件
vim /etc/my.cnf 修改mysql配置文件,直接跳到最后一行编辑前面都不用改
server_id=1 mysql的id(两台机不一样)
binlog_format=row binlog的格式
default_storage_engine=InnoDB 默认的存储引擎
innodb_file_per_table=1 独立的表空间
innodb_autoinc_lock_mode=2
wsrep_on=ON 开启集群
wsrep_provider=/usr/lib64/galera/libgalera_smm.so 这个模块在哪里
wsrep_cluster_name='galera' 加入集群的名字
wsrep_cluster_address='gcomm://' 集群通信地址,集群里已存在的成员的ip(多个可逗号分隔),不写则代表自己创建一个集群(第二台机为wsrep_cluster_address='gcomm://第一台机的ip' ,若有多台机则加上“,”和前面已经加入集群的ip)
wsrep_node_name='galera1' 自己在集群中的名字(两台机不一样)
wsrep_node_address='192.168.95.128' 自己的IP
wsrep_sst_auth=ww:wwyS123456@ 自己数据库对外授权的用户和密码(上面所做授权的密码)
wsrep_sst_method=rsync 数据传输的方式
systemctl restart mysqld 重启mysql服务配置完成
测试
mysql -p'wwyS123456@' 进入mysql
show status like 'wsrep%'; 查看集群信息(两台机都可看见两台机的ip)
create database ww; 一台机上执行创建数据库命令
show databases; 另一台机上查看所有数据库,看见上面所创建的数据库即代表集群成功
还没有评论,来说两句吧...