首页 > 数据库 >mysql8.0 PXC安装配置

mysql8.0 PXC安装配置

时间:2024-05-23 16:56:06浏览次数:27  
标签:pem 192.168 server etc mysql8.0 key mysql PXC 安装

一、环境初始化

  1.时间同步

配置/etc/chrony.conf,添加如下:
server 0.centos.pool.ntp.org iburst   #指定时钟源
allow 192.168.43.0/24 
重启服务:systemctl restart chronyd.service
开机启动:systemctl  enable chronyd
查看状态:systemctl  status chronyd
验证端口:netstat -lnup|grep 123   (使用udp协议,端口123)
其他节点同步此时钟源:ntpdate 192.168.43.110

 2.host解析配置 

192.168.43.110执行:hostnamectl set-hostname pxc01
192.168.43.120执行:hostnamectl set-hostname pxc02
192.168.43.130执行:hostnamectl set-hostname pxc03
三台机器/etc/hosts配置
192.168.43.110   pxc01
192.168.43.120   pxc02
192.168.43.130   pxc03

  3.防火墙和selinux配置

3306:mysql服务端口
4444:请求全量同步(sst)端口
4567:数据库节点之间通信
4568:请求增量同步(ist)端口
关闭selinux

  4.参数优化,mysql服务需要打开较多的文件数,默认用户只有1024

cat >> /etc/security/limits.conf << EOF
soft nproc 65536
hard nproc 65536
soft nofile 65536
hard nofile 65536
EOF

二、安装Percona-XtraDB-Cluster

  官方安装向导:https://docs.percona.com/percona-xtradb-cluster/8.0/quickstart-overview.html

  1.组件安装:

  下载Percona-XtraDB-Cluster包:https://www.percona.com/downloads#percona-xtradb-cluster

  选择版本和操作系统,下载全部包

  2.解压并安装:  

rpm -ivh *.rpm --nodeps --force

  3.启动mysql,并修改root密码

sudo service mysql start
sudo grep 'temporary password' /var/log/mysqld.log 找到密码
登陆mysql
mysql -u root -p
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'rootPass';
mysql> exit
$ sudo service mysql stop 

  4.编辑配置文件/etc/my.cnf:[mysqld]

[mysqld]
server-id=110 #三个节点的server_id不能一样 datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock log-error=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid binlog_expire_logs_seconds=604800 wsrep_provider=/usr/lib64/galera4/libgalera_smm.so wsrep_cluster_address=gcomm://192.168.43.110,192.168.43.120,192.168.43.130 binlog_format=ROW wsrep_slave_threads=8 wsrep_log_conflicts innodb_autoinc_lock_mode=2 wsrep_node_address=192.168.43.110   #当前节点地址 wsrep_cluster_name=pxc-cluster wsrep_node_name=pxc01          #当前节点主机名 pxc_strict_mode=ENFORCING wsrep_sst_method=xtrabackup-v2 wsrep_provider_options=“socket.ssl_key=server-key.pem;socket.ssl_cert=server-cert.pem;socket.ssl_ca=ca.pem” [sst]
encrypt=4
ssl-key=server-key.pem #可以指定绝对路径/etc/mysql/certs/,使用自定义证书,下同。如果不指定,则会自动在mysql的数据目录下生成证书文件
ssl-ca=ca.pem
ssl-cert=server-cert.pem

  将配置复制到其他节点,并修改相应参数

scp /etc/my.cnf pxc02:/etc
scp /etc/my.cnf pxc03:/etc

   附加:生成自定义证书到/etc/mysql/certs/下(本实验没有使用自定义证书)

三台都执行:mkdir -p /etc/mysql/certs/
进入/etc/mysql/certs目录下:
(1)生成ca密钥文件
openssl genrsa 2048 > ca-key.pem
openssl req -new -x509 -nodes -days 3600 -key ca-key.pem -out ca.pem
(2)生成服务端密钥文件
openssl req -newkey rsa:2048 -days 3600 -nodes -keyout server-key.pem -out server-req.pem
openssl rsa -in server-key.pem -out server-key.pem
openssl x509 -req -in server-req.pem -days 3600 -CA ca.pem -CAkey ca-key.pem -set_serial 01 -out server-cert.pem
(3)生成客户端密钥文件
openssl req -newkey rsa:2048 -days 3600 -nodes -keyout client-key.pem -out client-req.pem
openssl rsa -in client-key.pem -out client-key.pem
openssl x509 -req -in client-req.pem -days 3600 -CA ca.pem -CAkey ca-key.pem -set_serial 01 -out client-cert.pem
(4)验证证书
openssl verify -CAfile ca.pem server-cert.pem client-cert.pem
显示如下:
server-cert.pem: OK 
client-cert.pem: OK
(5)输出证书信息:
openssl x509 -in server-cert.pem -text -noout
注意:Common Name (eg, your name or your server's hostname) []: 字段不能一样,否则验证报错 (5)将证书文件复制到其他节点 scp -r /etc/mysql/certs pxc02:/etc/mysql scp -r /etc/mysql/certs pxc03:/etc/mysql 三台都执行:chown -R mysql:mysql /etc/mysql

三、启动服务

  启动第一个节点:systemctl  start [email protected]

四、启动其他节点:

  pxc01:进入数据库数据目录/var/lib/mysql下,复制*.pem到其他节点  

scp *.pem 192.168.43.120:/var/lib/mysql/
scp *.pem 192.168.43.130:/var/lib/mysql/
两台都要执行:chown -R mysql:mysql /etc/mysql

  pxc02和pxc03

systemctl start mysql

五、验证结果:

  

标签:pem,192.168,server,etc,mysql8.0,key,mysql,PXC,安装
From: https://www.cnblogs.com/jingsshao/p/17930936.html

相关文章

  • Windos环境安装RocketMQ
    1.下载RocketMQ安装包,这里下载二进制包安装地址:https://rocketmq.apache.org/download/2.配置系统环境变量3.修改脚本文件配置(runbroker.cmd、runserver.cmd)RocketMQ默认的虚拟机内存较大,启动可能因为内存不足报错,用记事本打开bin目录下的runbroker.cmd打开runserver.cm......
  • AnolisOS7.9安装MySQL8
    1.下载源1wgethttp://repo.mysql.com/mysql80-community-release-el7-3.noarch.rpm2.配置源1rpm-ivhmysql80-community-release-el7-3.noarch.rpm3.安装1yuminstallmysql-server-y4.安装时如果提示则需要更新密钥1rpm--importhttps://repo.mysql.......
  • WSL安装乌邦图操作系统
    步骤1:首先开启WSL参考官方网站:https://docs.microsoft.com/zh-cn/windows/wsl/install-manual步骤2:下载安装包到网站:https://docs.microsoft.com/zh-cn/windows/wsl/install-manual#downloading-distributions博主下载的是ubuntu18.04:https://wslstorestorage.blob.core.windo......
  • Win11 Linux子系统安装失败错误代码0x800701bc解决方法
    Win11Linux子系统安装失败错误代码0x800701bc解决方法 报错提示:Installing,thismaytakeafewminutes…WslRegisterDistributionfailedwitherror:0x800701bcError:0x800701bcWSL2???https://aka.ms/wsl2kernelPressanykeytocontinue… 处理方法......
  • mysql8.0+版本在使用group by 出现的问题
    起因:由于想使用MySQL8中的函数,手动将项目中的数据库从5.7升级到了8.0.20社区版本,但是升级完之后部分查询报错了,错误信息如下 whichisnotfunctionallydependentoncolumnsinGROUPBYclause;thisisincompatiblewithsql_mode=only_full_group_by去搜了一下,推荐的几......
  • 阿里oceanbase数据库安装步骤-windows-docker
    打开阿里的安装教程:OceanBase分布式数据库-海量数据笔笔算数找到方案3:容器-docker。https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000000639587 下载docker-desktop:https://www.docker.com/https://www.docker.com/products/docker-desktop/......
  • VUE3.0的安装教程
    一、下载nodejs    访问nodejs官网或者中文网:nodejs中文网  二、点击下载得到的.msi文件   (1) 点击next (2)接收协议,下一步        三、配置npm相关文件  (1)打开刚才安装node.js的文件夹,在里面新建两个文件夹,分别为node_......
  • 新版本的禅道在使用 nginx 做 https 反向代理时,无法正常安装、升级以及登录
    是想从docker的12.5.3版本升级到16.0版本,但是按步骤升级完成后,发现会卡在一个“禅道开源版15版本升级”的介绍页面无限循环直接部署全新的系统,也会卡在配置数据库连接的页面无限循环而且在容器的日志中,会有一条ERROR1045(28000):Accessdeniedforuser'root'@'loca......
  • docker及docker-compose离线安装
    docker及docker-compose离线安装参考https://blog.csdn.net/linmengmeng_1314/article/details/135653694dockeryumremovedocker\docker-client\docker-client-latest\docker-common\docker-latest\docker-latest-logrotate\docker-logrotate\docker-engi......
  • openEular安装docker
    1、下载源cd/etc/yum.repos.dsudodnfconfig-manager--add-repohttps://download.docker.com/linux/centos/docker-ce.repo2、修改源文件docker-ce.repo不修改无法安装ll/etc/yum.rope.dvidocker-ce.repo将$releasever替换成centos版本号,比如8.5(和你使用的openEular......