# 实验准备三台机器,(centos8不支持 Percona XtraDB Cluster 5.7) # pxc1: 10.0.0.21 # pxc2: 10.0.0.22 # pxc3: 10.0.0.23 # 首先配置 Percona XtraDB Cluster 5.7需要用的yum 源 [percona] name=percona-repo baseurl=https://mirrors.tuna.tsinghua.edu.cn/percona/release/$releasever/RPMS/$basearch enabled=1 gpgcheck=0 # 再copy到其他节点 125 scp /etc/yum.repos.d/Centos-7.repo 10.0.0.22:/etc/yum.repos.d/ 126 scp /etc/yum.repos.d/Centos-7.repo 10.0.0.23:/etc/yum.repos.d/ # 安装 yum -y install Percona-XtraDB-Cluster-57 # 更改server-id,使其保持唯一(一般用当前ip最后一位) [21:04:34 root@centos7 ~]#cat /etc/percona-xtradb-cluster.conf.d/mysqld.cnf # Template my.cnf for PXC # Edit to your requirements. [client] socket=/var/lib/mysql/mysql.sock [mysqld] server-id=21 datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock log-error=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid log-bin log_slave_updates expire_logs_days=7 # Disabling symbolic-links is recommended to prevent assorted security risks symbolic-links=0 # 编辑配置文件 [21:07:11 root@centos7 ~]#cat /etc/percona-xtradb-cluster.conf.d/wsrep.cnf [mysqld] # Path to Galera library wsrep_provider=/usr/lib64/galera3/libgalera_smm.so # Cluster connection URL contains IPs of nodes #If no IP is found, this implies that a new cluster needs to be created, #in order to do that you need to bootstrap this node wsrep_cluster_address=gcomm://10.0.0.21,10.0.0.22,10.0.0.23 # In order for Galera to work correctly binlog format should be ROW binlog_format=ROW # MyISAM storage engine has only experimental support default_storage_engine=InnoDB # Slave thread to use wsrep_slave_threads= 8 wsrep_log_conflicts # This changes how InnoDB autoincrement locks are managed and is a requirement for Galera innodb_autoinc_lock_mode=2 # Node IP address wsrep_node_address=10.0.0.21 # Cluster name wsrep_cluster_name=pxc-cluster #If wsrep_node_name is not specified, then system hostname will be used wsrep_node_name=pxc-cluster-node-1 #pxc_strict_mode allowed values: DISABLED,PERMISSIVE,ENFORCING,MASTER pxc_strict_mode=ENFORCING # SST method wsrep_sst_method=xtrabackup-v2 #Authentication for SST method wsrep_sst_auth="sstuser:s3cretPass" # copy到其他节点类似修改其节点ip,node名字 scp wsrep.cnf 10.0.0.22:/etc/percona-xtradb-cluster.conf.d/ scp wsrep.cnf 10.0.0.23:/etc/percona-xtradb-cluster.conf.d/ # 更改mysql密码 grep "temporary password" /var/log/mysqld.log mysql -uroot -p"CW7Oy(s;ERyD" # 记住进入mysql里面修改 alter user ‘root‘@‘localhost‘ IDENTIFIED BY ‘‘123456‘; # 创建repluser, 名字和密码应该同wsrep最后那么sstuer一样 create user ‘sstuser‘@‘localhost‘ IDENTIFIED BY ‘s3cretPass‘ # 给与权限 grant RELOAD, LOCK TABLES, PROCESS, REPLICATION CLIENT ON *.* TO ‘sstuser‘@‘localhost‘; # 查看集群 show status like "wsrep%";
# 当PXC集群全部挂掉以后,需要重启的话,就从你最后那个节点重启,用systemctl start mysql@bootstrap.service,其他节点用systemctl start mysql