中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

MySQL 中怎么配置Cluster 7.2.4集群

發布時間:2021-08-06 11:42:47 來源:億速云 閱讀:126 作者:Leah 欄目:數據庫

MySQL 中怎么配置Cluster 7.2.4集群,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。


準備 32位和64位版本  3臺服務器 
202.38.128.153 dbs2 64位
202.122.32.68 dbs1 64位
192.168.32.22 erpdbtest 32位
管理節點(ndb_mgmd) 192.168.32.22 erpdbtest 32位
數據節點(ndbd)    202.122.32.68 dbs1 64位   202.38.128.153 dbs2 64位
SQL節點(mysqld) 202.122.32.68  dbs1 64位  202.38.128.153 dbs2 64位
wget http://dev.mysql.com/get/Downloads/MySQL-Cluster-7.2/mysql-cluster-gpl-7.2.4-linux2.6-i686.tar.gz/from/http://gd.tuwien.ac.at/db/mysql/
   www.2cto.com  
卸載Mysql 
rpm –qa | grep SQL
rpm –e mysql...
刪除/etc/my.cnf   /var/lib/mysql
 
關閉防火墻
Iptables是一個包含在絕大多數發行版中的防火墻。在默認安裝的RHEL中,防火墻是打開的,且隨機啟動,如果要關閉防火墻,可以使用以下命令:
service iptables stop
以上命令執行完畢之后效果只能保持到下次重啟。重啟后的配置就還原了,如果希望能夠在重啟之后還能夠保持防火墻的關閉狀態,可以使用以下命令:
chkconfig –level 35 iptables off
 
關閉SELinux
SELinux的全稱是Security-EnhancedLinux,是由美國國家安全局NSA開發的訪問控制體制。SELinux可以最大限度地保證Linux系統的安全。
在默認安裝的Linux系統中,SELinux默認是開啟的,配置文件是/etc/selinux/config,一般測試過程中使用“permissive”模式,這樣僅會在違反SELinux規則時發出警告,然后修改規則,最后由用戶覺得是否執行嚴格“enforcing”的策略,禁止違反規則策略的行為。規則決定SELinux的工作行為和方式,策略決定具體的安全細節如文件系統,文件一致性。在安裝過程中,可以選擇“激活”、“警告”或者“關閉”SELinux。默認設置為“激活”。
 
為了避免SELinux影響到群集功能,需要關閉SELinux系統的功能
1、    安裝管理節點(192.168.32.22) 
解壓文件   www.2cto.com  
tar -zvxf mysql-cluster-gpl-7.2.4-linux2.6-i686.tar.gz
創建安裝目錄 
mkdir -p /usr/local/mysql/bin 
mkdir -p /usr/local/mysql/ndbdata 
添加執行文件路徑 
vi ~/.bash_profile 
PATH=$PATH:$HOME/bin:/usr/local/mysql/bin 
拷貝執行文件 
cd mysql-cluster-gpl-7.2.4-linux2.6-i686
cp bin/ndb_mgmd /usr/local/mysql/bin
cp bin/ndb_mgm /usr/local/mysql/bin
創建日志文件存儲目錄 
mkdir /var/lib/mysql-cluster 
創建配置文件目錄及文件 
mkdir /usr/local/mysql/cluster-conf 
vi /usr/local/mysql/cluster-conf/config.ini 
編輯配置文件: 
########################以下為配置文件內容################# 
 
[ndbd default] 
NoOfReplicas=2 #復制成員個數
DataMemory=80M  #數據存儲可以分配的內存
IndexMemory=18M #索引存儲可以分配的內存 
 
[ndb_mgmd] #定義管理節點的IP地址或主機名
id=1
hostname=192.168.32.22 
DataDir=/var/lib/mysql-cluster 
 
[ndbd]  #定義數據節點
id=11 
HostName=202.122.32.68 
DataDir=/usr/local/mysql/ndbdata  
[ndbd]   www.2cto.com  
id=12 
HostName=202.38.128.153
DataDir=/usr/local/mysql/ndbdata 
 
[mysqld]#定義SQL節點
id=21 
HostName=202.122.32.68 
[mysqld]
id=22 
HostName=202.38.128.153
 
[mysqld]
id=23
 
########################以上為配置文件內容#################
2、    安裝數據節點 ( 202.122.32.68 dbs1  202.38.128.153 dbs2 )
 
解壓文件
 tar -zxvf mysql-cluster-gpl-7.2.4-linux2.6-x86_64.tar.gz 
創建安裝目錄
mkdir -p /usr/local/mysql/bin
mkdir -p /usr/local/mysql/ndbdata
拷貝執行文件
cp mysql-cluster-gpl-7.2.4-linux2.6-x86_64/bin/ndbd /usr/local/mysql/bin
添加執行文件路徑
vi ~/.bash_profile
PATH=$PATH:$HOME/bin:/usr/local/mysql/bin
創建配置文件:
vi /etc/my.cnf
分別在主機添加如下內容:
[mysql_cluster] #配置數據節點連接管理節點
ndb-connectstring=192.168.32.22
3、安裝SQL節點(202.122.32.68 dbs1  202.38.128.153 dbs2):
  www.2cto.com  
解壓文件
 tar -zxvf mysql-cluster-gpl-7.2.4-linux2.6-x86_64.tar.gz 
拷貝安裝文件
mv mysql-cluster-gpl-7.2.4-linux2.6-x86_64 /usr/local/mysql
添加mysql用戶
groupadd mysql
useradd -g mysql mysql
添加權限
chown -R mysql:mysql /usr/local/mysql
拷貝配置文件
cp /usr/local/mysql/support-files/my-large.cnf /etc/my.cnf
初始化
cd /usr/local/
scripts/mysql_install_db --user=mysql
拷貝守護進程所需文件
cp /usr/local/mysql/support-files/mysql.server /etc/rc.d/init.d/mysqld
配置守護進程
chkconfig –add mysqld
chkconfig –level 35 mysqld on
添加執行文件路徑
vi ~/.bash_profile
PATH=$PATH:$HOME/bin:/usr/local/mysql/bin
更改配置文件
vi /etc/my.cnf
分別編輯如下信息:
[mysqld]  #配置SQL節點與管理節點連接
port            = 3306
socket          = /tmp/mysql.sock
ndbcluster
ndb-connectstring=192.168.32.22
4、啟動及關閉mysql cluster
  www.2cto.com  
啟動順序:管理服務器->存儲節點->SQL節點
a、啟動管理節點
rm mysql/mysql-cluster/ndb_1_config.bin.1 #不是必須的,如果config.ini有改動則要加上
ndb_mgmd -f /usr/local/mysql/cluster-conf/config.ini
b、啟動存儲節點
ndbd –initial #(第一次啟動必須添加選項,另外備份/恢復,修改配置文件也需要執行)
ndbd    #不是第一次啟動需要執行的命令
c、啟動SQL節點
/etc/rc.d/init.d/mysqld start 或service mysqld start
啟動后可以用mysql -uroot -p 驗證mysql服務狀態
關閉順序:SQL節點->管理節點
a、關閉SQL節點
/etc/rc.d/init.d/mysqld stop 或service mysqld stop
b、關閉管理節點
ndb_mgm〉 shutdown
 
5、驗證配置的正確性
要先啟動管理節點 再啟動數據節點 等啟動完后 再起sql節點 否則會出錯
1、在管理節點執行:ndb_mgm -> show
 
ndb_mgm> show
Cluster Configuration
---------------------
[ndbd(NDB)]     2 node(s)
id=11   @202.122.32.68  (mysql-5.5.19 ndb-7.2.4, Nodegroup: 0, Master)   啟動完
id=12   @202.38.128.153  (mysql-5.5.19 ndb-7.2.4, starting, Nodegroup: 0)  正在起
 
[ndb_mgmd(MGM)] 1 node(s)
id=1    @192.168.32.22  (mysql-5.5.19 ndb-7.2.4)
 
[mysqld(API)]   3 node(s)
id=21   @202.122.32.68  (mysql-5.5.19 ndb-7.2.4)
id=22   @202.38.128.153  (mysql-5.5.19 ndb-7.2.4)
id=23 (not connected, accepting connect from any host)
  www.2cto.com  
正常狀態
 
ndb_mgm> show
Cluster Configuration
---------------------
[ndbd(NDB)]     2 node(s)
id=11   @202.122.32.68  (mysql-5.5.19 ndb-7.2.4, Nodegroup: 0, Master)
id=12   @202.38.128.153  (mysql-5.5.19 ndb-7.2.4, Nodegroup: 0)
 
[ndb_mgmd(MGM)] 1 node(s)
id=1    @192.168.32.22  (mysql-5.5.19 ndb-7.2.4)
 
[mysqld(API)]   3 node(s)
id=21   @202.122.32.68  (mysql-5.5.19 ndb-7.2.4)
id=22   @202.38.128.153  (mysql-5.5.19 ndb-7.2.4)
id=23 (not connected, accepting connect from any host)
 
2、在其中一個SQL節點創建數據庫,添加數據。要等啟動完再操作。
 
mysql -uroot -p
create database ndbtest;
use ndbtest;
CREATE TABLE `t1` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  PRIMARY KEY (`id`)
) ENGINE=ndbcluster  DEFAULT CHARSET=gbk;
 
NDB: Could not acquire global schema lock (266)Time-out in NDB,  
啟動完成前 如果在一個節點執行添加數據庫的操作,不能同步到其他節點。
 
3、在另一個SQL節點,如果能夠存在添加的數據庫和數據,則說明配置成功
進入sql節點,在test數據庫創建表
CREATE TABLE `t1` (  www.2cto.com  
  `id` int(11) NOT NULL AUTO_INCREMENT,
  PRIMARY KEY (`id`)
) ENGINE=ndbcluster  DEFAULT CHARSET=gbk
切換到2臺數據節點服務器~/mysql/data/ndb_2_fs和~/mysql/data/ndb_3_fs看看,
或者直接去數據庫查,數據已經同步了!
 關閉集群服務
關閉sql節點等同于停止mysql服務,此時外界數據不將再進來。然后關閉管理節點
~/mysql/bin/ndb_mgm -e shutdown
rm ~/mysql/mysql-cluster/ndb_1_config.bin.1 #不是必須的,如果config.ini有改動則要加上
這樣操作后,管理節點和數據節點都將停止服務
Notes:
1:如果發現關閉一臺機器的ndbd進程,另一臺機器的ndbd的進程也關閉,則需要修改參數NoOfReplicas。
2:./ndbd --initial 不能同時在所有數據節點機器上執行,如執行,會刪除所有數據
3:可以像操作非簇類型的數據庫那樣,操作mysqld節點
4:每次修改config.ini文件,重啟ndb_mgmd時,需要刪除mysql-cluster文件下的ndb_1_config.bin.1文件,
因為他默認調用此文件 
 
5:NDB 簇不支持自動發現數據庫的功能,這點很重要,一旦在一個數據節點上創建了世界(world)數據庫和它的表,在簇中的每個SQL節點上還需要發出命令 CREATE DATABASE world,后跟FLUSH TABLES。這樣,節點就能識別數據庫并讀取其表定義。(在本版本MySQL Cluster 7.1.5下數據庫也會自動同步的)
6:如果在相關節點服務器啟動時,注意查看~/mysql/mysql-cluster目錄內的相關日志文件以獲取錯誤信息.
7:在管理節點的配置文件里各[mysqld],[ndbd]和[ndb_mgmd]配置的選項值順序應該如下:
[mysqld]
Id=4
HostName=192.168.208.3
Id在頂端緊跟其后的是HostName,如果順序錯了,當SQL或數據節點連接管理節點時,管理節點無法正確的定位
到其對應的節點配置上.
因為無法定位到對應的節點配置,當沒有剩余的[空節點]時,客戶端節點啟動時(./mysqld or ./ndbd)
還會報:
Configuration error: Error : Could not alloc node id at 192.168.0.231 port 1186: No free   www.2cto.com  
node id found for mysqld 
(API).Failed to initialize consumers 
8:[空節點]是沒有指定HostName選項的節點配置均為空節點,空節點可以用來動態配置一些動態IP的節點,
一般管理節點的 配置文件要預留3個以上的空節點,因為備份時需要連接一個節點,如下:
[mysqld]
Id=6
# ps -ef|grep mysql
root     13882     1  0 15:25 pts/5    00:00:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/usr/local/mysql/data --pid-file=/usr/local/mysql/data/dbs1.pid
mysql    14185 13882  0 15:25 pts/5    00:00:00 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=/usr/local/mysql/data/dbs1.err --pid-file=/usr/local/mysql/data/dbs1.pid --socket=/tmp/mysql.sock --port=3306

看完上述內容,你們掌握MySQL 中怎么配置Cluster 7.2.4集群的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

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

AI

儋州市| 勐海县| 阳曲县| 新田县| 石嘴山市| 宜州市| 涟源市| 寻乌县| 霍城县| 漾濞| 南丹县| 海原县| 垣曲县| 中方县| 年辖:市辖区| 宣城市| 长顺县| 惠安县| 贵港市| 华阴市| 望江县| 堆龙德庆县| 普陀区| 乡宁县| 赤峰市| 尼勒克县| 林芝县| 宁明县| 苍山县| 新巴尔虎左旗| 临邑县| 西青区| 九寨沟县| 胶南市| 新竹市| 黔西县| 左权县| 扶风县| 阿拉尔市| 黑河市| 辉县市|