1. 程式人生 > >Galera Cluster5.7 (CentOs7) 集群搭建

Galera Cluster5.7 (CentOs7) 集群搭建

ret around mod password 遠程登錄 最大的 style line 等級

安裝環境

  centOs7

  Galera Cluster5.7(MySql5.7)

下載galeracluster

  下載地址http://galeracluster.com/downloads/

  安裝前需卸載原有mysql,刪除相關文件夾

  卸載Postfix,這個可能跟MySQL配置有沖突: yum remove postfix –y

  安裝需要外網環境

使用 (yum install -y 包名)命令進行安裝

  安裝順序:

    1 mysql-wsrep-libs-compat-5.7-5.7.23-25.15.el7.x86_64.rpm

    2 mysql-wsrep-common-5.7-5.7.23-25.15.el7.x86_64.rpm

    3 mysql-wsrep-libs-5.7-5.7.23-25.15.el7.x86_64.rpm

    4 mysql-wsrep-devel-5.7-5.7.23-25.15.el7.x86_64.rpm

    5 mysql-wsrep-client-5.7-5.7.23-25.15.el7.x86_64.rpm

    6 mysql-wsrep-server-5.7-5.7.23-25.15.el7.x86_64.rpm

    7 mysql-wsrep-5.7-5.7.23-25.15.el7.x86_64.rpm

    8 mysql-wsrep-test-5.7-5.7.23-25.15.el7.x86_64.rpm(該

包在安裝時會提示沒有 mysql-wsrep-server依賴,使用rpm 加上--nodeps參數安裝

    9galera-3-25.3.24-2.el7.x86_64

安裝完成後mysql 首次啟動

  1) 使用命令:mysqld --initialize 初始化mysql

  2) 查看默認密碼: grep ‘temporary password‘ /var/log/mysqld.log (路徑my.cnf 配置的log_error 路徑)

  3) 重設root賬戶密碼:SET PASSWORD=PASSWORD("Liufahui1@");mysql5.7 認密碼等級比較高,修改密碼的時候需

要至少8包含數字,大小寫和特殊字符

  4) 開放遠程登錄授權

    給對應需要訪問MySQL的用戶名和密碼進行授權,如果沒有授權,是無法遠程連接MySQL

    授權無端口限制的用戶登錄mysql數據庫(生產上開放端口)

    GRANT ALL PRIVILEGES ON *.* TO ‘用戶名‘@‘%‘ IDENTIFIED BY ‘密碼‘ WITH GRANT OPTION;

    FLUSH PRIVILEGES;

  5) 去掉Postfix,這個可能跟MySQL配置有沖突: yum remove postfix -y

  6) 關閉防火墻(生產開放端口)

    setenforce 0 && systemctl stop firewalld

  7) 關閉mysql服務:service mysqld stop (註意mysql5.7mysqld

修改配置文件:

  1) 修改my.cnf

    vim /etc/my.cnf,增加:!includedir /etc/my.cnf.d/

  2) 修改wsrep.cnf

    vi /etc/my.cnf.d/wsrep.cnf

[mysqld]
server-id=145 #每個節點一個唯一的ID
default-storage-engine=innodb
innodb_autoinc_lock_mode=2
innodb_locks_unsafe_for_binlog=1
query_cache_size=0
query_cache_type=0
bind-address=0.0.0.0
wsrep_provider=/usr/lib64/galera-3/libgalera_smm.so
wsrep_provider_options=‘gmcast.listen_addr=tcp://192.168.79.145:4567‘ #修改為本節點地址
wsrep_cluster_name="my_wsrep_cluster" #集群名稱,所有節點配置為同一個
wsrep_cluster_address=gcomm://192.168.79.145:4567,192.168.79.146:4567,192.168.79.147:4567 #節點中所有節點地址
wsrep_node_name=node1 #node名稱,每個節點名稱唯一
wsrep_node_address=‘192.168.79.145‘ #本節點地址
wsrep_node_incoming_address=‘192.168.79.145‘ #本節點地址
wsrep_slave_threads=1
wsrep_certify_nonPK=1
wsrep_max_ws_rows=131072
wsrep_max_ws_size=1073741824
wsrep_debug=0
wsrep_convert_LOCK_to_trx=0
wsrep_retry_autocommit=1
wsrep_auto_increment_control=1
wsrep_drupal_282555_workaround=0
wsrep_causal_reads=0
wsrep_notify_cmd=
wsrep_sst_method=rsync
wsrep_sst_auth=root:Liufahui1@ #數據量庫用戶名密碼
wsrep_sst_donor=‘node1,node2,node3,‘ #節點中所有節點的node名稱

啟動集群:

  1) 集群第一個節點啟動

    wsrep.cnf 配置中的 wsrep_cluster_address 需要如此配置 wsrep_cluster_address=gcomm:// ,以後再啟動的話需要配置完整。

    使用 /usr/bin/mysqld_bootstrap 命令啟動

    啟動成功後將wsrep_cluster_address=gcomm://補充完整。

  2) 其他節點啟動

    修改好my.cnfwsrep.cnf參數後直接啟動mysql即可。

  註意:/usr/bin/mysqld_bootstrap 命令只在集群第一個節點啟動時使用,因為這個腳本中帶有一個參數:--wsrep-new-cluster,代表新集群

集群重啟:

在集群停止之後重啟時,先在每個幾點上使用mysqld_safe --wsrep-recover查看節點的Recovered position的值,選擇值最大的一個作為第一個幾點啟動,如果啟動失敗,則在將作為第一個啟動節點的服務器上編輯grastate.dat文件(可以使用find命令查找位置),將safe_to_bootstrap的值設為1,使用/usr/bin/mysqld_bootstrap命令啟動該節點,其他節點啟動與以前一致。

Galera Cluster5.7 (CentOs7) 集群搭建