|
PXC(Percona-XtraDB-Cluster)5.7版本集群部署 Centos 7.3系統(tǒng)部署Mysql 集群 PXC三個節(jié)點分別執(zhí)行和安裝 cat /etc/hosts (2)依賴 yum –y remove mariadb-*
yum -y install gcc gcc-c++ perl-IO-Socket-SSL.noarch perl-DBD-MySQL.x86_64 perl-Time-HiRes openssl* openssl-devel libcurl-devel wget
(3)下載Percona XtraBackup 2.4 wget https://www.percona.com/downloads/Percona-XtraBackup-2.4/Percona-XtraBackup-2.4.10/binary/redhat/7/x86_64/percona-xtrabackup-24-2.4.10-1.el7.x86_64.rpm yum -y localinstall percona-xtrabackup-24-2.4.10-1.el7.x86_64.rpm (4)安裝Percona Release和Socat yum -y install http://www.percona.com/downloads/percona-release/redhat/0.1-4/percona-release-0.1-4.noarch.rpm tar zxvf socat-1.7.3.2.tar.gz
cd socat-1.7.3.2
./configure
make -j 4 && make install
(5)安裝PXC 5.7二進制包 wget https://www.percona.com/downloads/Percona-XtraDB-Cluster-LATEST/Percona-XtraDB-Cluster-5.7.21-29.26/binary/tarball/Percona-XtraDB-Cluster-5.7.21-rel20-29.26.1.Linux.x86_64.ssl1:102.tar.gz tar -xf Percona-XtraDB-Cluster-5.7.21-rel20-29.26.1.Linux.x86_64.ssl1_102.tar.gz -C /usr/local/ 先配置第一臺機器,并成功啟動,在配置其他兩臺 vim /etc/my.cnf [client] port = 3306 socket= /data/mysql/mysql.sock default-character-set=utf8 [mysqld] basedir = /usr/local/mysql datadir = /data/mysql/data pid-file = /data/mysql/mysql.pid character-set-server=utf8 init_connect = 'SET NAMES utf8' log-bin=/data/mysql/log_bin server-id = 101 innodb_buffer_pool_size = 100M innodb_data_file_path = ibdata1:10M:autoextend innodb_data_home_dir = /data/mysql innodb_file_per_table=1 skip-name-resolve port = 3306 socket = /data/mysql/mysql.sock user=mysql log_error=mysql_error.log #pxc binlog_format=ROW wsrep_cluster_address=gcomm://172.16.2.10,172.16.2.11,172.16.2.12 #三個節(jié)點都保持一樣 wsrep_provider=/usr/local/mysql/lib/libgalera_smm.so wsrep_node_address=172.16.2.10 #根據(jù)不同的node ip進行修改 wsrep_slave_threads=2 wsrep_cluster_name=pxc_mysql #同一個cluster此值需要一致 wsrep_sst_method=xtrabackup-v2 wsrep_node_name=node_1 #不同節(jié)點修改為不同的名字 innodb_autoinc_lock_mode=2 wsrep_sst_auth="sstuser:pxcmysql" log-slave-updates [mysql] no-auto-rehash default-character-set=utf8
初始化mysql5.7:(初始化只在第一個節(jié)點執(zhí)行) mysqld --initialize --user=mysql --datadir=/data/mysql/data 初始化參數(shù)使用--initialize-insecure,這樣不會設(shè)置初始化root密碼,如果是 --initialize的話,會隨機生成一個密碼
/usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf --wsrep-new-cluster --user=mysql &
新建傳送用戶:? grant all privileges on *.* to 'sstuser'@'localhost' identified by 'pxcmysql';(一定要localhost) flush privileges; 查看集群狀態(tài) show status like 'wsrep%'; 其他節(jié)點安裝,具體步驟查看前面步驟 node2和node3啟動(無需初始化) /usr/local/mysql/bin/mysqld_safe –-defaults-file=/etc/my.cnf &
在PXC部署集群多次踩坑: (1)按照官網(wǎng)文檔/etc/init.d/mysql bootstrap-pxc 啟動一直失敗 解決:一開始懷疑是PXC版本問題,換了二個5.7小版本還是一樣報錯,最后使用/usr/local/mysql/bin/mysqld_safe 模式啟動成功 (2)啟動jnode3節(jié)點報錯:[ERROR] WSREP: Command did not run: wsrep_sst_xtrabackup-v2 --role 'donor' --address '172.16.2.12:4444/xtrabackup_sst 解決:修改node3配置文件,用wsrep_sst_method = rsync啟動,正常啟動后同步數(shù)據(jù)完成,shutdown node2;然后修改node2的wsrep_sst_method = xtrabackup-v2,可以正常啟動數(shù)據(jù)同步 以上解決方法希望對你有所幫助,解決方法來之不易,作者多次實驗。 |
|
|