91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Percona XtraDB Cluster規劃實施

發布時間:2020-05-28 00:43:15 來源:網絡 閱讀:2125 作者:DBAspace 欄目:MySQL數據庫

##搭建集群的時候要學會看日志,日志很重要的,日志真的很重要

一、準備工作

1.1服務器配置

主機名

IP地址



Pxc01

192.168.1.17



Pxc02

192.168.1.18



Pxc03

192.168.1.19



 源碼軟件包下載:http://down.51cto.com/data/2330430

1.2、環境配置

注:不能用oraclemysql進行編譯安裝,因為mysql GPL 不識別 pxc的相關參數。

安裝pxc環境需要用到以下安裝包:

  • percona xtaDB cluster  ----percona mysql 數據庫

  • percona xtracebackup   ----備份恢復工具

備注:

Percona-XtraDB-Cluster-5.6.28-rel76.1-25.14.1.Linux.x86_64.ssl100.tar.gz–已經編譯的安裝包,解壓完成后只需要執行scripts中的mysql_install_db初始化數據庫即可。

percona-xtradb-cluster-5.6_5.6.28-25.14.orig.tar.gz–原始安裝包,需要使用cmake編譯安裝

 

1.3、名詞解釋

名詞:

    WSwrite set 寫數據集

    IST: Incremental State Transfer 增量同步

    SSTState Snapshot Transfer 全量同步

    UUID:節點狀態改變及順序的唯一標識。

    GTID:Global Transaction ID ,由UUID和偏移量組成。wsrep api 中定義的集群內全局事務id

 

1.4PXC原理

pxc是基于驗證的數據強一致性數據復制的mysql集群,特性分析:

優點:

       1.高可用性,節點不可用不影響集群正常運行。

       2.強一致性,可以將讀擴展到多個節點上。    

       3. 節點的增加數據同步自動化(IST,SST)。

       4. 可實現多點讀寫,但寫壓力仍要同步到所有節點。

缺點:

        1.由于ddl需全局驗證通過,則集群性能由集群中最差性能節點決定。

        2.為保證一致性,galera 總是優先保證數據一致性,在多點并發寫時,鎖沖突問題嚴重

        3.新節點加入或延后較大的節點重新加入需全量拷貝數據(sst),作為donor的節點在同步過程中無法提供讀寫

        4.數據冗余度為節點數

1.5PXC工作原理

節點接收sql 請求后,對于ddl 操作,在commit之前,由wsrep API 調用galera 庫進行集群內廣播,所有其他節點驗證成功后事務在集群所有節點進行提交,反之roll backpxc 保證整個集群所有數據的強一致性,滿足CAP理論中滿足:Consistency   Availability

  • WSREP API

1):在DBMSwsrep provider 之間提供接口。

2):GTID:Global Transaction ID. UUID sequence number組成,用于標示集群中發生狀態改變的唯一標示以及隊列中的偏移量。

  • Galera wsrep provider:

1):完成事務在集群內的廣播:本地事務發送給其他節點驗證,接收其他節點事件本地驗證并返回結果

2):應用從其他節點接收并全局驗證通過的事件到本地。

3):集群內通信,節點存活的檢測,pc的選舉等

4):腦裂,為避免節點失效導致pc選舉失敗整個集群不可用,建議節點數至少為3

5):多點寫入時的鎖沖突檢測機制

6):等待隊列中事務的并發提交

Percona XtraDB Cluster規劃實施

galeragroup communication 層實現統一全局數據同步策略和集群內所有事務的排序,便于生成GTID

對于每一個節點有2方面工作:

(1)、完成數據同步。

(2)、完成與其他節點的通信。

    galera replication 層完成數據同步,由slavequeue applier組成,在事務的同步過程中,事務在隊列中以及應用線程中時于節點本地產生鎖沖突處理方式。replication 模塊的效率直接影響整個集群的寫入性能。

同步過程中,本地事務和等待隊列中的鎖沖突:

     innodb內部使用悲觀鎖,保證事務的成功進行和提交。pxc中使用樂觀鎖,以避免在每個節點獲取鎖以及網路開銷,在寫入節點上,事務在提交之前與單點的innodb一樣,到達提交點時,向集群其他節點廣播(galera庫完成 并發)事物并等待各節點驗證結果,如果所有節點都返回成功,則提交,反之,回滾。

     pxc 中先提交的事物成功,其他事務(本地或其他節點同步)將回滾或報死鎖錯誤。

相關狀態值:

wsrep_local_cert_failures  同步過程中節點認證失敗計數,沖突來自本地提交的事務和同步隊列中事務存在鎖沖突,則本地驗證失敗(保證全局數據一致性)

wsrep_local_bf_aborts  強制放棄,本地事務和同步隊列中正在執行的事務存在鎖沖突時,將強制保證先提交的事務成功,后者回滾活報錯

驗證模塊:

Percona XtraDB Cluster規劃實施

驗證過程中,節點在接收到其他節點writeset后,在本地做沖突驗證并返回驗證結果。

1.6PXC狀態說明

     1.OPEN:節點啟動成功,嘗試連接到集群,如果失敗則根據配置退出或創建新的集群

     2.PRIMARY:節點處于集群PC中,嘗試從集群中選取donor進行數據同步

     3.JOINER:節點處于等待接收/接收數據文件狀態,數據傳輸完成后在本地加載數據

     4.JOINED:節點完成數據同步工作,嘗試保持和集群進度一致

     5.SYNCED:節點正常提供服務:數據的讀寫,集群數據的同步,新加入節點的sst請求

     6.DONOR:節點處于為新節點準備或傳輸集群全量數據狀態,對客戶端不可用。

狀態機變化因素:

     1.新節點加入集群

     2.節點故障恢復

     3.節點同步實效

 

監控狀態說明:

1)集群完整性檢查:

wsrep_cluster_state_uuid:在集群所有節點的值應該是相同的,有不同值的節點,說明其沒有連接入集群.

wsrep_cluster_conf_id:正常情況下所有節點上該值是一樣的.如果值不同,說明該節點被臨時”分區”了.當節點之間網絡連接恢復的時候應該會恢復一樣的值.

wsrep_cluster_size:如果這個值跟預期的節點數一致,則所有的集群節點已經連接.

wsrep_cluster_status:集群組成的狀態.如果不為”Primary,說明出現”分區”或是”split-brain”狀況.

 

2)節點狀態檢查:

wsrep_ready: 該值為ON,則說明可以接受SQL負載.如果為Off,則需要檢查wsrep_connected.

wsrep_connected:如果該值為Off,wsrep_ready的值也為Off,則說明該節點沒有連接到集群.(可能是wsrep_cluster_addresswsrep_cluster_name等配置錯造成的.具體錯誤需要查看錯誤日志)

wsrep_local_state_comment:如果wsrep_connectedOn,wsrep_readyOFF,則可以從該項查看原因.

 

狀態變化階段:
    1.OPEN: 節點啟動成功,嘗試連接到集群,如果失敗則根據配置退出或創建新的集群
    2.PRIMARY: 節點處于集群PC中,嘗試從集群中選取donor進行數據同步
    3.JOINER: 節點處于等待接收/接收數據文件狀態,數據傳輸完成后在本地加載數據
    4.JOINED: 節點完成數據同步工作,嘗試保持和集群進度一致
    5.SYNCED:節點正常提供服務:數據的讀寫,集群數據的同步,新加入節點的sst請求
    6.DONOR(貢獻數據者):節點處于為新節點準備或傳輸集群全量數據狀態,對客戶端不可用。

 

當其中一個節點停機重啟后,通過IST來同步增量數據,來完成保證與另外兩個節點的數據一致,IST的實現是由wsrep_provider_options="gcache.size=1G"參數決定,一般設置為1G大小,參數大小是由什么決定的,根據停機時間,若停機一小時,需要確認1小時內產生多大的binlog來算出參數大小。假設我們三個節點都關閉了,會發生什么呢,全部傳SST,因為gcache數據沒了。

 

全部關閉需要采用滾動關閉方式:

1、關閉node1,修復完后,啟動加回來;

2、關閉node2,修復完后,啟動加回來;

3、直到最后一個節點

4、原則要保持Group里最少一個成員活著

 

數據庫關閉之后,最會保存一個last Txid,所以啟動時,先要啟動最后一個關閉的節點,啟動順序和關閉順序剛好相反。

wsrep_recover=on參數在啟動時加入,用于從log中分析gtid

怎樣避免關閉和啟動時數據丟失?

1、所有的節點中最少有一個在線,進行滾動重啟;

2、利用主從的概念,把一個從節點轉化成PXC里的節點。

 

 

3)復制健康檢查:

wsrep_flow_control_paused:表示復制停止了多長時間.即表明集群因為Slave延遲而慢的程度.值為0~1,越靠近0越好,值為1表示復制完全停止.可優化wsrep_slave_threads的值來改善.

如果主節點寫入過大,怎么處理? Wsrep_slave_threads參數配置成cpu的個數相等或是1.5倍。

wsrep_cert_deps_distance:有多少事務可以并行應用處理.wsrep_slave_threads設置的值不應該高出該值太多.

wsrep_flow_control_sent:表示該節點已經停止復制了多少次.

wsrep_local_recv_queue_avg:表示slave事務隊列的平均長度.slave瓶頸的預兆.

最慢的節點的wsrep_flow_control_sentwsrep_local_recv_queue_avg這兩個值最高.這兩個值較低的話,相對更好.

 

4)檢測慢網絡問題:

wsrep_local_send_queue_avg:網絡瓶頸的預兆.如果這個值比較高的話,可能存在網絡瓶

沖突或死鎖的數目:

wsrep_last_committed:最后提交的事務數目

wsrep_local_cert_failureswsrep_local_bf_aborts:回滾,檢測到的沖突數目

 

.  pxc注意的問題

1、腦裂

任何命令執行出現unkown command ,表示出現腦裂,集群兩節點間4567端口連不通,無法提供對外服務。

SET GLOBAL wsrep_provider_options="pc.ignore_sb=true"; 

2、并發寫

三個節點的自增起始值為123,步長都為3,解決了insert問題,但update同時對一行操作就會有問題,出現:Error 1213  SQLSTATE: 40001,所以更新和寫入在一個節點上操作。

3DDL

引起全局鎖,采用:pt-online-schema-change 

4MyISAM引擎不能被復制,只支持innodb

5pxc結構里面必須有主鍵

如果沒有主建,有可能會造成集中每個節點的Data page里的數據不一樣

6、不支持表級鎖

不支持lock /unlock tables 

7pxc里只能把slow log ,query log 放到File

8、不支持XA事務

9、性能由集群中性能最差的節點決定

 

1.7PXC優缺點

優點:

    (1).同步復制 Synchronous replication

    (2).Active-active multi-master 拓撲邏輯

    (3).可對集群中任一節點進行數據讀寫

    (4).自動成員控制,故障節點自動從集群中移除

    (5).自動節點加入

    (6).真正并行的復制,基于行級

    (7).直接客戶端連接,原生的 MySQL 接口

    (8).每個節點都包含完整的數據副本

    (9).多臺數據庫中數據同步由 wsrep 接口實現

 

    缺點:

(1).目前的復制僅僅支持InnoDB存儲引擎,任何寫入其他引擎的表,包括mysql.*表將不會復制,但是DDL語句會被復制的,因此創建用戶將會被復制,但是insert into mysql.user…將不會被復制的        

(2).DELETE操作不支持沒有主鍵的表,沒有主鍵的表在不同的節點順序將不同,如果執行SELECTLIMIT 將出現不同的結果集

    (3).在多主環境下LOCK/UNLOCK TABLES不支持,以及鎖函數GET_LOCK(), RELEASE_LOCK()

    (4).查詢日志不能保存在表中。如果開啟查詢日志,只能保存到文件中

    (5).允許最大的事務大小由wsrep_max_ws_rowswsrep_max_ws_size定義。任何大型操作將被拒絕。如大型的LOAD DATA操作

    (6).由于集群是樂觀的并發控制,事務commit可能在該階段中止。如果有兩個事務向在集群中不同的節點向同一行寫入并提交,失敗的節點將中止。對于集群級別的中止,集群返回死鎖錯誤代碼(Error: 1213 SQLSTATE: 40001 (ER_LOCK_DEADLOCK))

    (7).XA事務不支持,由于在提交上可能回滾

    (8).整個集群的寫入吞吐量是由最弱的節點限制,如果有一個節點變得緩慢,那么整個集群將是緩慢的。為了穩定的高性能要求,所有的節點應使用統一的硬件

    (9).集群節點建議最少3

    (10).如果DDL語句有問題將破壞集群。

二、二進制包安裝percona mysql

二進制安裝過程略:

編輯my.cnf文件

[root@PXC01 Percona-XtraDB-Cluster-5.6.28-76.1]#vi /etc/my.cnf

[mysqld]

basedir = /usr/local/mysql

datadir = /data/mysql

port = 3306

server_id = 3

socket = /tmp/mysql.sock

pid-file = /tmp/mysql.pid

 

# replication settings #

sync_binlog=0

binlog_format=row

 

# log settings #

log-error = /data/log/3306.err

log-bin=/data/binlog/mysql-bin

 

# connection #

interactive_timeout = 1800

wait_timeout = 1800

lock_wait_timeout = 1800

skip_name_resolve = 1

max_connections = 2000

max_connect_errors = 1000000

 

default-storage-engine=INNODB

skip-name-resolve

skip-host-cache

explicit_defaults_for_timestamp

sql_mode=STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER

expire_logs_days = 7

collation_server=utf8_general_ci

init_connect='SET NAMES utf8'

transaction_isolation = READ-COMMITTED

max_allowed_packet = 16M

max_heap_table_size = 64M

 

# session memory settings #

sort_buffer_size = 33M

join_buffer_size = 134M

query_cache_size = 0

query_cache_limit = 0

read_buffer_size= 8M

 

# table cache performance settings

table_open_cache = 4096

table_definition_cache = 4096

table_open_cache_instances = 64

 

# innodb settings #

innodb_undo_directory = /data/undolog/

innodb_undo_logs = 128

innodb_undo_tablespaces = 3

innodb_buffer_pool_instances = 8

innodb_online_alter_log_max_size=1G

innodb_data_file_path = ibdata1:1G:autoextend

innodb_buffer_pool_size = 20G

innodb_file_per_table = 1

innodb_flush_method = O_DIRECT

innodb_flush_log_at_trx_commit = 2

innodb_log_buffer_size = 64M

innodb_log_file_size = 256M

innodb_log_files_in_group = 3

innodb_io_capacity = 600

innodb_max_dirty_pages_pct = 80

innodb_autoinc_lock_mode=2

#innodb_locks_unsafe_for_binlog=1

#innodb_doublewrite=0

innodb_open_files = 4096

innodb_page_size = 16k

innodb_purge_threads=4

innodb_large_prefix = 1

innodb_thread_concurrency = 64

innodb_print_all_deadlocks = 1

innodb_strict_mode = 1

innodb_sort_buffer_size = 60M

innodb_online_alter_log_max_size=1G

2.1、初始化數據庫

標注:

作為primary節點的數據庫需要初始化數據庫,作為從節點就不需要初始化數據庫,只需要直接啟動數據庫,從節點會自動從primary節點拷貝數據到存放數據文件的位置。



2.1.2、源碼安裝xtrabackup
2.1.2.1、安裝依賴包

[root@PXC01 opt]#yum -y install perl-DBI perl-DBD-MySQLperl-Time-HiRes perl-IO-Socket-SSL libev libgcrypt-devel libcurl-devel crypt* libgcrypt*imake libxml2-devel expat-devel git bzip2* python-sphinx* cryptopp* ncurses* perl-TermReadKey*tcp_wrappers* libev-devel

2.1.2.2、編譯xtrabackup

注意:sphinx,lzlib,libev動態庫需要手動下載,編譯安裝,下載地址如下:

http://software.schmorp.de/pkg/libev.html

http://download.savannah.gnu.org/releases/lzip/lzlib/

http://sphinxsearch.com

http://www.dest-unreach.org/socat/

 

 

2.1.2.2.1、安裝socat

 [root@pxc02opt]# tar -zxvf socat-2.0.0-b9.tar.gz -C /usr/local

[root@pxc02 opt]# cd /usr/local/socat-2.0.0-b9

[root@pxc02 socat-2.0.0-b9]# ./configure

[root@pxc02 socat-2.0.0-b9]# make

[root@pxc02 socat-2.0.0-b9]# make install

[root@pxc02 socat-2.0.0-b9]# ln -s /usr/local/bin/socat /usr/bin/

 

2.1.2.2.2、安裝libev

[root@PXC01 opt]# tar -zxvf libev-4.22.tar.gz -C /usr/local

[root@PXC01 libev-4.22]# chmod 755 ./*

[root@PXC01 libev-4.22]# ./configure

[root@PXC01 libev-4.22]# make

[root@PXC01 libev-4.22]# make install

 

2.1.2.2.3、安裝lzlib

[root@PXC01 opt]# tar -zxvf lzlib-1.7.tar.gz -C /usr/local

[root@PXC01 opt]# cd /usr/local/lzlib-1.7/

[root@PXC01 lzlib-1.8-rc3]#./configure

[root@PXC01 lzlib-1.8-rc3]# make

[root@PXC01 lzlib-1.8-rc3]# make install

2.1.2.2.4、安裝sphinx

[root@PXC01 opt]# tar -zxvf sphinx-2.2.8-release.tar.gz -C /usr/local

[root@PXC01 local]# cd /usr/localsphinx-2.2.8-release/

[root@PXC01sphinx-2.2.8-release]# ./configure--prefix=/usr/local/sphinx/  --with-mysql  --enable-id64

 

注意:

如果mysql沒有安裝到/usr/local/下,使用一下命令:

 ./configure--prefix=/usr/local/sphinx/ --with-mysql=/mysoft  --with-mysql-includes=/mysoft/include--enable-id64

 

 

[root@PXC01sphinx-2.2.8-release]#make

[root@PXC01sphinx-2.2.8-release]#make install

 

2.1.2.2.5、安裝xtrabackup

[root@PXC01 opt]# tar -zxvfpercona-xtrabackup_2.3.4.orig.tar.gz

[root@PXC01 opt]#cd percona-xtrabackup-2.3.4

[root@PXC01percona-xtrabackup-2.3.4]# cmake -DBUILD_CONFIG=xtrabackup_release-DWITH_MAN_PAGES=OFF

[root@PXC01percona-xtrabackup-2.3.4]#make

[root@PXC01percona-xtrabackup-2.3.4]#make install

 

 

 

 

默認安裝到/usr/local/xtrabackup

 

注意:如果編譯安裝出錯、需要重新安裝需要清除舊的對象和緩存信息

make clean

rm -fCMakeCache.txt

 

重新安裝需要xtrabackup

rm -rf /usr/bin/innobackupex

rm -rf /usr/bin/xtrabackup

Percona XtraDB Cluster規劃實施

在編譯時可以添加如下兩個參數:

-DDOWNLOAD_BOOST=1 -DWITH_BOOST=/usr/local

2.1.2.5.1、建立軟連接

[root@PXC01xtrabackup]#ln -s/usr/local/xtrabackup/bin/innobackupex /usr/bin/innobackupex

[root@PXC01xtrabackup]#ln -s/usr/local/xtrabackup/bin/xbcrypt /usr/bin/xbcrypt

[root@PXC01xtrabackup]#ln -s/usr/local/xtrabackup/bin/xbstream /usr/bin/xbstream

[root@PXC01xtrabackup]#ln -s /usr/local/xtrabackup/bin/xtrabackup/usr/bin/xtrabackup

[root@PXC01xtrabackup]#ln -s/usr/local/xtrabackup/bin/xbcloud_osenv /usr/bin/xbcloud_osenv

[root@PXC01 xtrabackup]#ln -s /usr/local/xtrabackup/bin/xbcloud/usr/bin/xbcloud

 

 

ln -s/usr/local/xtrabackup/bin/innobackupex /usr/bin/innobackupex

ln -s /usr/local/xtrabackup/bin/xbcrypt /usr/bin/xbcrypt

ln -s /usr/local/xtrabackup/bin/xbstream /usr/bin/xbstream

ln -s /usr/local/xtrabackup/bin/xbcloud_osenv/usr/bin/xbcloud_osenv

ln -s /usr/local/xtrabackup/bin/xbcloud/usr/bin/xbcloud

ln –s /usr/local/xtrabackup/bin/xtrabackup/usr/bin/xtrabackup

   

2.1.2.5.2、驗證xtrabackup

[root@PXC01 xtrabackup]# xtrabackup-version

xtrabackup version 2.3.4 based on MySQLserver 5.6.24 Linux (x86_64) (revision id: e80c779)

 

2.1.3、安裝galera
2.1.3.1、編譯galera

[root@pxc01 opt]#tar –zxvf /opt/ galera-3-25.3.16.tar.gz–C /usr/local

[root@pxc01 opt]# cd/usr/local/galera-3-25.3.16/

[root@pxc01 galera-3-25.3.16]#cd scripts

[root@pxc01 galera-3-25.3.16]#./build.sh

[root@PXC01 galera-3-25.3.16]# cplibgalera_smm.so/usr/lib64

[root@PXC01 galera-3-25.3.16]# chmod +x libgalera_smm.so

執行上面腳本./build.sh時報錯解決如:

Percona XtraDB Cluster規劃實施

yum install boost* openssl* check* -y
yum -y install gcc

yum -y install scons  

然后可以不執行腳本執行scons進行編譯即可:

[root@pxc01 opt]# cd/usr/local/galera-3-25.3.16/

#scons

可以以正常模式啟動主節點mysql(/usr/local/mysql/bin/mysqld_safe--wsrep_cluster_address=gcomm://>/dev/null &)


2.2、從節點安裝

其余2個節點按照主節點步驟安裝,

從節點安裝完mysql以后不需要初始化數據,可以直接啟動mysqlmysql啟動以后會自動加入到集群節點,并從主節點拷貝數據文件到存放數據文件的位置。

chown -R mysql.mysql /usr/local/mysql/

從節點啟動:

/usr/local/mysql/bin/mysqld_safe--wsrep_cluster_address=gcomm://192.168.20.11:4567>/dev/null&

 

/usr/local/mysql/bin/mysqld_safe--wsrep_cluster_address=gcomm://192.168.20.22:4567 >/dev/null & 


四、配置PXC集群

4.1、添加PXC參數

4.1.1、添加集群復制賬號

[mysql@VM-172-31-102-133 ~]#mysql

mysql>GRANT PROCESS, RELOAD, LOCKTABLES, REPLICATION CLIENT ON *.* TO 'sstuser'@'localhost' identified by'sstuser';

mysql>FLUSH PRIVILEGES;

 

4.1.2、編輯my.cnf文件

編輯my.cnf文件,添加以下參數:

 

server-id = 1

# Path to Galera library

wsrep_provider=/usr/lib64/libgalera_smm.so   ---注意編譯galera軟件時的存放目錄

 

# Cluster connection URL contains the IPsof node#1, node#2 and node#3

wsrep_cluster_address=gcomm://172.31.102.133,172.31.102.139,172.31.102.167  --節點IP地址,不添加端口會使用默認端口

 

# In order for Galera to work correctlybinlog format should be ROW

binlog_format=ROW

 

# MyISAM storage engine has onlyexperimental support

default_storage_engine=InnoDB

 

# This changes how InnoDB autoincrementlocks are managed and is a requirement for Galera

innodb_autoinc_lock_mode=2

 

# Node #1 address

wsrep_node_address=172.31.102.133   ---主機IP

 

# SST method

wsrep_sst_method=xtrabackup-v2

 

# Cluster name

wsrep_cluster_name=my_centos_cluster

 

# Authentication for SST method

wsrep_sst_auth="sstuser:s3cret"

 

[root@pxc01 ]#cat /etc/my.cnf

[mysqld]

basedir = /usr/local/mysql

datadir = /data/mysql

port = 3306

server-id = 238

#socket = /data/mysql/mysql.sock

pid-file = /tmp/mysql.pid

 

# replication settings #

sync_binlog = 0

binlog_format = row

 

# log settings #

log-error = /data/log/3306.err

log-bin=/data/binlog/mysql-bin

 

# connection #

interactive_timeout = 1800

wait_timeout = 1800

lock_wait_timeout = 1800

skip_name_resolve = 1

max_connections = 2000

max_connect_errors = 1000000

 

default-storage-engine = innodb

skip-name-resolve

skip-host-cache

explicit_defaults_for_timestamp

sql_mode =STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER

expire_logs_days = 7

collation_server=utf8_general_ci

init_connect='SET NAMES utf8'

transaction_isolation = READ-COMMITTED

max_allowed_packet = 16M

max_heap_table_size = 64M

 

# session memory settings #

sort_buffer_size = 33M

join_buffer_size = 134M

query_cache_size = 0

query_cache_limit = 0

read_buffer_size= 8M

 

# table cache performance settings

table_open_cache = 4096

table_definition_cache = 4096

table_open_cache_instances = 64

 

# innodb settings #

innodb_undo_directory = /data/undolog/

innodb_undo_logs = 128

innodb_undo_tablespaces = 3

innodb_buffer_pool_instances = 8

innodb_online_alter_log_max_size = 1G

innodb_data_file_path = ibdata1:1G:autoextend

innodb_buffer_pool_size = 12G

innodb_file_per_table = 1

innodb_flush_method = O_DIRECT

innodb_flush_log_at_trx_commit = 2

innodb_log_buffer_size = 64M

innodb_log_file_size = 256M

innodb_log_files_in_group = 3

innodb_io_capacity = 600

innodb_max_dirty_pages_pct = 75

innodb_autoinc_lock_mode = 2

innodb_locks_unsafe_for_binlog = 1

innodb_doublewrite = 0

innodb_open_files = 4096

innodb_page_size = 16k

innodb_purge_threads = 4

innodb_large_prefix = 1

innodb_thread_concurrency = 64

innodb_print_all_deadlocks = 1

innodb_strict_mode = 1

innodb_sort_buffer_size = 60M

innodb_online_alter_log_max_size = 1G

 

# wsrep settings #

wsrep_provider=/usr/lib64/libgalera_smm.so

wsrep_cluster_address=gcomm://192.168.10.238,192.168.10.239,192.168.10.240

wsrep_sst_auth=sstuser:sstuser

wsrep_provider_options="gcache.size=2G"

wsrep_cluster_name=Percona_cluster

wsrep_sst_method=xtrabackup-v2

wsrep_node_address=192.168.10.238

wsrep_node_name=pxc01

wsrep_slave_threads=8

4.1.3、啟動mysql

PXC(初始化)模式啟動mysql,只有主節點可以這么啟動,從節點必須按照正常啟動方式啟動mysql

[mysql@VM-172-31-102-133 ~]#/etc/init.d/mysqldbootstrap-pxc

Bootstrapping PXC (Percona XtraDBCluster)Starting MySQL (Percona XtraDB Cluster). SUCCESS!

 

 

 

4.1.3、配置第二個節點

server-id = 2

配置my.cnf文件,添加以下參數:

# Path to Galera library

wsrep_provider=/usr/lib64/libgalera_smm.so

 

# Cluster connection URL contains the IPsof node#1, node#2 and node#3

wsrep_cluster_address=gcomm://172.31.102.133,172.31.102.139,172.31.102.167

 

# In order for Galera to work correctlybinlog format should be ROW

binlog_format=ROW

 

# MyISAM storage engine has onlyexperimental support

default_storage_engine=InnoDB

 

# This changes how InnoDB autoincrementlocks are managed and is a requirement for Galera

innodb_autoinc_lock_mode=2

 

# Node #1 address

wsrep_node_address=172.31.102.139

 

# SST method

wsrep_sst_method=xtrabackup-v2

 

# Cluster name

wsrep_cluster_name=my_centos_cluster

 

# Authentication for SST method

wsrep_sst_auth="sstuser:s3cret"

 

4.1.4、配置第三個節點

server-id = 3

配置my.cnf文件,添加以下參數:

# Path to Galera library

wsrep_provider=/usr/lib64/libgalera_smm.so

 

# Cluster connection URL contains the IPsof node#1, node#2 and node#3

wsrep_cluster_address=gcomm://172.31.102.133,172.31.102.139,172.31.102.167

 

# In order for Galera to work correctlybinlog format should be ROW

binlog_format=ROW

 

# MyISAM storage engine has onlyexperimental support

default_storage_engine=InnoDB

 

# This changes how InnoDB autoincrementlocks are managed and is a requirement for Galera

innodb_autoinc_lock_mode=2

 

# Node #1 address

wsrep_node_address=172.31.102.167

 

# SST method

wsrep_sst_method=xtrabackup-v2

 

# Cluster name

wsrep_cluster_name=my_centos_cluster

 

# Authentication for SST method

wsrep_sst_auth="sstuser:s3cret"

 

4.1.4、啟動從節點mysql

以次下列命令啟動

Service mysql start

查看日志:


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

西安市| 彰化县| 威宁| 民权县| 广元市| 抚远县| 安阳县| 如东县| 威信县| 翼城县| 永城市| 石渠县| 吴旗县| 文水县| 扎赉特旗| 雅安市| 奇台县| 苏尼特右旗| 临湘市| 远安县| 镇平县| 佛山市| 射阳县| 沭阳县| 沙雅县| 达日县| 诏安县| 彰化市| 合山市| 利辛县| 囊谦县| 依兰县| 北海市| 柏乡县| 济源市| 五寨县| 平原县| 富顺县| 泽州县| 巢湖市| 乐业县|