欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

mysql中如何快速搭建PXC集群以及Mycat分片-創(chuàng)新互聯(lián)

mysql中如何快速搭建PXC集群以及Mycat分片,相信很多沒有經(jīng)驗的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。

創(chuàng)新互聯(lián)專注于企業(yè)營銷型網(wǎng)站建設(shè)、網(wǎng)站重做改版、岑溪網(wǎng)站定制設(shè)計、自適應(yīng)品牌網(wǎng)站建設(shè)、H5高端網(wǎng)站建設(shè)商城系統(tǒng)網(wǎng)站開發(fā)、集團(tuán)公司官網(wǎng)建設(shè)、外貿(mào)網(wǎng)站制作、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計等建站業(yè)務(wù),價格優(yōu)惠性價比高,為岑溪等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。

 搭建PXC集群

mysql中如何快速搭建PXC集群以及Mycat分片

參考percona官方文檔:

https://www.percona.com/doc/percona-xtradb-cluster/5.7/index.html

1 準(zhǔn)備工作

1.1 下載軟件

https://www.percona.com/downloads/Percona-XtraDB-Cluster-LATEST/
mysql中如何快速搭建PXC集群以及Mycat分片

另外單獨下載一個軟件包:qpress-11-1.el7.x86_64.rpm
mysql中如何快速搭建PXC集群以及Mycat分片

1.2 刪除MariaDB

yum -y remove mari*

1.3 開放端口

firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --zone=public --add-port=4444/tcp --permanent
firewall-cmd --zone=public --add-port=4567/tcp --permanent
firewall-cmd --zone=public --add-port=4568/tcp --permanent
firewall-cmd --reload

mysql中如何快速搭建PXC集群以及Mycat分片

1.4 關(guān)閉SELinux

vi /etc/selinux/config
#把SELINUX屬性值設(shè)置成disabled
reboot

2 安裝軟件(install PXC)

2.1 在線安裝

$ sudo yum install Percona-XtraDB-Cluster-57

2.2本地安裝

解壓下載好的安裝包,并將 qpress 包放入一起,然后進(jìn)入目錄,進(jìn)行如下命令

$sudo yum localinstall  *.rpm

[^說明]: You need to have root access on the node where you will be installing Percona XtraDB Cluster (either logged in as a user with root privileges or be able to run commands with sudo

2.3 禁止開機(jī)自啟動

chkconfig mysqld off

2.4 數(shù)據(jù)庫初始化

  1. 啟動服務(wù)

$sudo service mysql start
  1. 查看MySQL初始密碼

cat /var/log/mysqld.log | grep "A temporary password"
  1. 用root賬號登錄

mysql -u root -p
  1. 修改密碼

mysql_secure_installation
  1. 創(chuàng)建遠(yuǎn)程管理員賬號

CREATE USER 'YXC_admin'@'%' IDENTIFIED BY 'Yxc_123456';
GRANT all privileges ON *.* TO 'YXC_admin'@'%';
FLUSH PRIVILEGES;
#或者如下:
CREATE USER 'YXC'@'localhost' IDENTIFIED BY 'passw0rd';
GRANT RELOAD, LOCK TABLES, PROCESS, REPLICATION CLIENT ON
* . * TO 'YXC'@'localhost';
mysql> FLUSH PRIVILEGES;
  1. 停止服務(wù)

$sudo service mysql stop

3 配置文件

Configure all nodes,配置文件內(nèi)容:

# vim /etc/my.cnf
[client]
socket=/var/lib/mysql/mysql.sock
[mysqld]
server-id=31
#server-id=1 #PXC集群中MySQL實例的唯一ID,不能重復(fù),必須是數(shù)字
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
character_set_server = utf8
bind-address = 0.0.0.0
#跳過DNS解析
skip-name-resolve
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
##集群部分
wsrep_provider=/usr/lib64/galera3/libgalera_smm.so
wsrep_cluster_name=pxc3-cluster #PXC集群的名稱
wsrep_cluster_address=gcomm://192.168.56.31,192.168.56.32,192.168.56.33
wsrep_node_name=pxc31 #當(dāng)前節(jié)點的名稱
wsrep_node_address=192.168.56.31 #當(dāng)前節(jié)點的IP
wsrep_sst_method=xtrabackup-v2 #同步方法(mysqldump、rsync、xtrabackup)
wsrep_sst_auth= YXC_admin:Yxc_123456 #同步使用的帳戶
#SST means State Snapshot Transfer
pxc_strict_mode=ENFORCING #同步嚴(yán)厲模式
binlog_format=ROW #基于ROW復(fù)制(安全可靠)
default_storage_engine=InnoDB #默認(rèn)引擎
innodb_autoinc_lock_mode=2 #主鍵自增長不鎖表

4 節(jié)點啟停

引導(dǎo)節(jié)點啟停(Bootstrap the first node)

systemctl start mysql@bootstrap.service
systemctl stop mysql@bootstrap.service
systemctl restart mysql@bootstrap.service

非引導(dǎo)節(jié)點啟停(add other nodes)

service start mysql
service stop mysql
service restart mysql

判斷引導(dǎo)節(jié)點

##cat /var/lib/mysql/grastate.dat
# GALERA saved state
version: 2.1
uuid:    4580a102-bd96-11e9-a653-2a1e935fbf67
seqno:   -1
safe_to_bootstrap: 0
#safe_to_bootstrap: 1,則為引導(dǎo)啟動節(jié)點

如果最后關(guān)閉的PXC節(jié)點是安全退出的,那么下次啟動要最先啟動這個節(jié)點,而且要以引導(dǎo)節(jié)點啟動
如最后關(guān)閉的PXC節(jié)點不是安全退出,要先修改/var/lib/mysql/grastate.dat 文件,把其中的 safe_to_bootstrap 屬性值設(shè)置為1,再按照引導(dǎo)節(jié)點啟動

5 狀態(tài)信息

5.1 確認(rèn)狀態(tài)

show status like '%wsrep%';
## wsrep:write set replication
#Percona XtraDB Cluster is based on Percona Server running with the XtraDB storage engine. It uses the Galera library, which is an implementation of the write set replication (wsrep) API developed by Codership Oy. The default and recommended data transfer method is via Percona XtraBackup.

mysql中如何快速搭建PXC集群以及Mycat分片

5.2 狀態(tài)描述(圖片來自網(wǎng)上,僅供參考)

mysql中如何快速搭建PXC集群以及Mycat分片

mysql中如何快速搭建PXC集群以及Mycat分片

mysql中如何快速搭建PXC集群以及Mycat分片

mysql中如何快速搭建PXC集群以及Mycat分片

mysql中如何快速搭建PXC集群以及Mycat分片

mysql中如何快速搭建PXC集群以及Mycat分片

mysql中如何快速搭建PXC集群以及Mycat分片

mysql中如何快速搭建PXC集群以及Mycat分片

6 同步原理(圖片來自網(wǎng)上,僅供參考)

mysql中如何快速搭建PXC集群以及Mycat分片

7. Mycat 分片

7.1 Mycat 安裝

(1)安裝JDK

#搜索JDK版本
yum search jdk 
#安裝JDK1.8開發(fā)版
yum install java-1.8.0-openjdk-devel.x86_64

(2)配置環(huán)境變量

#查看JDK安裝路徑
ls -lrt /etc/alternatives/java
vi /etc/profile
#在文件結(jié)尾加上JDK路徑,例如export  JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.171-8.b10.el7_5.x86_64/
source  /etc/profile

(3)下載MyCat

http://dl.mycat.io/1.6.5/Mycat-server-1.6.5-release-20180122220033-linux.tar. gz

(4)上傳MyCat壓縮包到虛擬機(jī)

(5)安裝unzip程序包,解壓縮MyCat

yum install unzip
unzip MyCAT壓縮包名稱

(6) 開放防火墻8066和9066端口,關(guān)閉SELINUX

(7) 修改MyCat的bin目錄中的權(quán)限

chmod -R 777 ./*.sh

(8) MyCat啟動與關(guān)閉

#cd MyCat的bin目錄
./startup_nowrap.sh #啟動MyCat
ps -aux #查看系統(tǒng)進(jìn)程
kill -9 MyCat進(jìn)程編號

7.2 Mycat  配置

7.2.1 schema.xml

mysql中如何快速搭建PXC集群以及Mycat分片
mysql中如何快速搭建PXC集群以及Mycat分片

<?xml version="1.0"?>
<!DOCTYPE mycat:schema SYSTEM "schema.dtd">
<mycat:schema xmlns:mycat="http://io.mycat/">
        <!--配置數(shù)據(jù)表-->
          <schema name="ecs" checkSQLschema="false" sqlMaxLimit="100">
              <table name="t_user" dataNode="dn1,dn2"  rule="mod-long" />
              <table name="t_customer" dataNode="dn1,dn2"  rule="sharding-customer" >
                <childTable name="t_orders" primaryKey="ID"
                    joinKey="customer_id" parentKey="id">
                </childTable>
              </table>
         </schema>
        <!--配置分片關(guān)系-->
          <dataNode name="dn1" dataHost="cluster1" database="ecs" />
          <dataNode name="dn2" dataHost="cluster2" database="ecs" />
        <!--配置連接信息-->
        <dataHost name="cluster1" maxCon="1000" minCon="10" balance="2"
                          writeType="1" dbType="mysql" dbDriver="native" switchType="1"  slaveThreshold="100">
                <heartbeat>select user()</heartbeat>
                <!-- can have multi write hosts -->
                <writeHost host="w1" url="192.168.56.21:3306" user="admin"  password="Abc_123456">
                        <!-- can have multi read hosts -->
                        <readHost host="w1r1" url="192.168.56.22:3306" user="admin" password="Abc_123456" />
                        <readHost host="w1r2" url="192.168.56.23:3306" user="admin" password="Abc_123456" />
                </writeHost>
                <writeHost host="w2" url="192.168.56.22:3306" user="admin"  password="Abc_123456">
                        <!-- can have multi read hosts -->
                        <readHost host="w2r1" url="192.168.56.21:3306" user="admin" password="Abc_123456" />
                        <readHost host="w2r2" url="192.168.56.23:3306" user="admin" password="Abc_123456" />
                </writeHost>
        </dataHost>
            <dataHost name="cluster2" maxCon="1000" minCon="10" balance="2"
                          writeType="1" dbType="mysql" dbDriver="native" switchType="1"  slaveThreshold="100">
                <heartbeat>select user()</heartbeat>
                <!-- can have multi write hosts -->
                <writeHost host="w1" url="192.168.56.31:3306" user="admin"  password="Abc_123456">
                        <!-- can have multi read hosts -->
                        <readHost host="w1r1" url="192.168.56.32:3306" user="admin" password="Abc_123456" />
                        <readHost host="w1r2" url="192.168.56.33:3306" user="admin" password="Abc_123456" />
                </writeHost>
                <writeHost host="w2" url="192.168.56.32:3306" user="admin"  password="Abc_123456">
                        <!-- can have multi read hosts -->
                        <readHost host="w2r1" url="192.168.56.31:3306" user="admin" password="Abc_123456" />
                        <readHost host="w2r2" url="192.168.56.33:3306" user="admin" password="Abc_123456" />
                </writeHost>
        </dataHost>
</mycat:schema>

7.2.2 server.xml

 <user name="YXC_admin" defaultAccount="true">
                <property      name="password">Yxc_123456</property>
                <property name="schemas">ecs</property>
                <!-- 表級 DML 權(quán)限設(shè)置 -->
                <!--
                <privileges check="false">
                        <schema name="TESTDB" dml="0110" >
                                <table name="tb01" dml="0000"></table>
                                <table name="tb02" dml="1111"></table>
                        </schema>
                </privileges>
                 -->
        </user>

7.2.3 rule.xml

 <tableRule name="sharding-customer">
                <rule>
                        <columns>sharding_id</columns>
                        <algorithm>customer-hash-int</algorithm>
                </rule>
 </tableRule>
<function name="customer-hash-int"
                class="io.mycat.route.function.PartitionByFileMap">
                <property name="mapFile">customer-hash-int.txt</property>
</function>

8. Haproxy +keepalived負(fù)載均衡

  1. 用一個虛擬機(jī)實例部署Haproxy

    • 安裝Haproxy

      yum install -y haproxy
    • 編輯配置文件

      vi /etc/haproxy/haproxy.cfg
      global
          log         127.0.0.1 local2
          chroot      /var/lib/haproxy
          pidfile     /var/run/haproxy.pid
          maxconn     4000
          user        haproxy
          group       haproxy
          daemon
          # turn on stats unix socket
          stats socket /var/lib/haproxy/stats
      defaults
          mode                    http
          log                     global
          option                  httplog
          option                  dontlognull
          option http-server-close
          option forwardfor       except 127.0.0.0/8
          option                  redispatch
          retries                 3
          timeout http-request    10s
          timeout queue           1m
          timeout connect         10s
          timeout client          1m
          timeout server          1m
          timeout http-keep-alive 10s
          timeout check           10s
          maxconn                 3000
      listen   admin_stats  
          bind    0.0.0.0:4001
          mode  http
          stats uri       /dbs
          stats realm  Global\ statistics
          stats auth    admin:abc123456
      listen   proxy-mysql
          bind    0.0.0.0:3306  
          mode  tcp 
          balance  roundrobin
          option  tcplog       #日志格式
          server   mycat_1  192.168.99.131:3306  check  port  8066  maxconn  2000  
          server   mycat_2  192.168.99.132:3306  check  port  8066  maxconn  2000  
          option  tcpka        #使用keepalive檢測死鏈
    • 啟動Haproxy

      service haproxy start
    • 訪問Haproxy監(jiān)控畫面

      http://192.168.99.131:4001/dbs

  2. 用另外一個虛擬機(jī)同樣按照上述操作安裝Haproxy

  3. 在某個Haproxy虛擬機(jī)實例上部署Keepalived

    • 開啟防火墻的VRRP協(xié)議

      #開啟VRRP
      firewall-cmd --direct --permanent --add-rule ipv4 filter INPUT 0 --protocol  vrrp -j ACCEPT
      #應(yīng)用設(shè)置
      firewall-cmd --reload
    • 安裝Keepalived

      yum install -y keepalived
    • 編輯配置文件

      vim /etc/keepalived/keepalived.conf
      vrrp_instance  VI_1 {
          state  MASTER
          interface  ens33
          virtual_router_id  51
          priority  100
          advert_int  1
          authentication {
              auth_type  PASS
              auth_pass  123456
          }
          virtual_ipaddress {
              192.168.99.133
          }
      }
    • 啟動Keepalived

      service keepalived start
    • ping 192.168.99.133

  4. 在另外一個Haproxy虛擬機(jī)上,按照上述方法部署Keepalived

  5. 使用MySQL客戶端連接192.168.99.133

看完上述內(nèi)容,你們掌握mysql中如何快速搭建PXC集群以及Mycat分片的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道,感謝各位的閱讀!

文章標(biāo)題:mysql中如何快速搭建PXC集群以及Mycat分片-創(chuàng)新互聯(lián)
網(wǎng)站網(wǎng)址:http://aaarwkj.com/article24/ccdhce.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站建設(shè)Google、電子商務(wù)、移動網(wǎng)站建設(shè)、外貿(mào)網(wǎng)站建設(shè)、靜態(tài)網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)
熟妇人妻精品一区二区三区颏| 久久精品国产亚洲av不丁香| 欧美人妻精品一区二区| 五月婷婷六月丁香激情视频| 亚洲欧美一级二级三级| 九九九视频精品免费九九| 超碰av之男人的天堂| 欧美在线观看日韩精品| 一区二区三区亚洲精品在线| 久久se精品人妻一区二区三区| 亚洲精品一品区二品区三| 未满十八禁止免费在线观看| 亚洲中文无码亚洲人vr在线| 一本在线不卡中文字幕| 亚洲国产欧美日韩综合| 亚洲av综合色区一区| 亚洲精品中文字幕久久| 人妻的秘密一区二区三区| 国产精品美女自拍视频| 国内一级片内射视频播放| 国产精品国产成人免费看| 日本欧美二区在线看| 久久精品国产亚洲av热老太| 中文色婷婷国产精品视频| 99精品久久久中文字幕日本| 亚洲精品一区二区三区pp| 日本高清不卡在线播放| 国产亚洲精品视频中文字幕| 少妇互射视频免费视频| 在线看日本十八禁网站| 人妻少妇精品视频二区| 伊人久久亚洲福利精品| 日韩高清视频 一区二区| 亚洲综合中文字幕精品| 亚洲人的av在线播放| 亚洲免费av一区二区| 欧美一区二区三区爽| 最新在线中文字幕av不卡| 成年人免费观看黄色片| 日本少妇人妻中文字幕| 日韩精品在线观看一二三区|