日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

【Data Cluster】真机环境下MySQL数据库集群搭建

發布時間:2023/11/29 数据库 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【Data Cluster】真机环境下MySQL数据库集群搭建 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

? ? ? ? ? ?? 真機環境下MySQL-Cluster搭建文檔


MySQL Cluster簡介

????? MySQL cluster 和 Oracle RAC 完全不同,它采用 無共享架構Shared nothing(shared nothing architecture)。整個集群由管理節點(ndb_mgmd),處理節點(mysqld)和存儲節點(ndbd)組 成,不存在一個共享的存儲設備。MySQL cluster 主要利用了 NDB 存儲引擎來實現,NDB 存儲引擎是一個內存式存儲引擎,要求數據必須全部加載到內存之中。數據被自動分布在集群中的不同存 儲節點上,每個存儲節點只保存完整數據的一個分片(fragment)。同時,用戶可以設置同一份數據保存在多個不同的存儲節點上,以保證單點故障不會造 成數據丟失。MySQL cluster 主要由 3 各部分組成:

  • SQL 服務器節點
  • NDB 數據存儲節點
  • 監控和管理節點

這樣的分層也是與 MySQL 本身把 SQL 處理和存儲分開的架構相關系的。MySQL cluster 的優點在于其是一個分布式的數據庫集群,處理節點和存儲節點都可以線性增加,整個集群沒有單點故障,可用性和擴展性都可以做到很高,更適合 OLTP 應用。但是它的問題在于:

  • ?NDB(“NDB” 是一種“內存中”的存儲引擎,它具有可用性高和數據一致性好的特點。) 存儲引擎必須要求數據全部加載到內存之中,限制比較大,但是目前 NDB 新版本對此做了改進,允許只在內存中加 載索引數據,數據可以保存在磁盤上。
  • ?目前的 MySQL cluster 的性能還不理想,因為數據是按照主鍵 hash 分布到不同的存儲節點上,如果應用不是通過主鍵去獲取數據的話,必須在所有的存儲節點上掃描, 返回結果到處理節點上去處理。而且,寫操作需要同時寫多份數據到不同的存儲節點上, 對?節點間的網絡要求很高。

雖然 MySQL cluster 目前性能還不理想,但是 share nothing 的架構一定是未來的趨勢,Oracle 接手 MySQL之后,也在大力發展 MySQL cluster,我對 MySQL cluster 的前景抱有很大的期待。

回到頂部

mysql-cluster構造

安裝mysql-cluster首先要了解cluster的構造,Cluster大體上是由管理節點(mgmd)、數據節點(ndbd)、sql節點(mysqld)組成的。

? ? ? ? ? ? ? ? ? ? ?

回到頂部

虛擬機安裝centos6.6

系統要求:

內存:4G(最少4G)

CPU:需要支持VT

如果你是筆記本用戶那么cpu虛擬化可能是關閉的,請在BIOS下設置virtualization 為enable

?

新建虛擬機,選擇典型安裝,點擊下一步

?

點擊下一步

?

這里用戶名最好是mysql因為后面要用到。設置成其他用戶也可以。

下一步

?

位置就是保存這個虛擬centos系統的位置

下一步

?

選擇如圖所示,下一步

?

選擇自定義硬件,建議最好每個虛擬機分配1G的內存。每個cent最少分配512M內存。

點擊完成就可以了。

虛擬機安裝完成后,用root權限進入。密碼和mysql賬戶的密碼相同。

回到頂部

mysql-cluster下載

www.mysql.com/downloads/cluster??選擇linux-generic下的版本 根據你的cent的系統選擇32or64

回到頂部

centos6.6搭建環境配置

首先進入linux終端,右鍵桌面如圖所示

?

Open in terminal(終端)

安裝mysql-cluster前首先要卸載原有系統自帶的mysql

聯網卸載(終端下執行命令)

#yum remove mysql

手動清理(終端下執行命令)

#rpm –qa|grep mysql*?(這條是查詢系統中存在的mysql)

#rpm –e –nodeps mysql-libs-5.1.71-1.el6.x86_64?(不同版本的centos這個版本也不同)

回到頂部

mysql-cluster安裝包導入cent中

首先查詢需要導入的cent的ip地址,終端下輸入

#ifconfig

?

如圖所示其中inet addr:192.168.191.129就是這個cent的ip地址。

?

下載軟件winscp

?

打開軟件

?

新建站點,主機名就是cent 的ip ,用戶名使用root

點擊登錄,輸入密碼,連接成功

?

左邊是windows右邊是cent

Cent下進入目錄/usr/local/src 把你的mysql-cluster安裝文件放在這個目錄下

打開cent終端

添加mysql用戶和組(如果前面安裝虛擬機的時候使用的用戶是mysql則跳過此步驟

添加mysql用戶

1.????? # groupadd mysql?

2.????? # useradd mysql -g mysql

安裝mysql-cluster 7.4.4-linux

1.????? # cd /usr/local/src/(已下載好集群版)?

2.????? # tar -xvf mysql-cluster-gpl-7.4.4-linux-glibc2.5-x86_64.tar.gz??

3.????? # mv mysql-cluster-gpl-7.4.4-linux-glibc2.5-x86_64 ../mysql?

4.????? # cd ..?

5.????? # chown -R mysql:mysql mysql/?

6.????? # cd mysql?

7.????? # scripts/mysql_install_db --user=mysql??

?

?

當出現這個頁面則mysql-cluster安裝成功

以上步驟是安裝mysql-cluster必須步驟,所有機器都要進行以上的步驟

回到頂部

集群配置

首先進行管理節點的配置(終端輸入)

# vi? /var/lib/mysql-cluster/config.ini?(目錄和文件沒有請新建,添加以下內容)

1.????? [NDBD DEFAULT] 2.????? NoOfReplicas=2 3.????? [TCP DEFAULT] 4.????? portnumber=3306 5.?????? 6.????? [NDB_MGMD] 7.????? #設置管理節點服務器? 8.????? nodeid=1 9.????? HostName=192.168.191.132 (管理節點服務器ip地址) 10.?? DataDir=/var/mysql/data 11.??? 12.?? [NDBD] 13.?? nodeid=2 14.?? HostName=192.168.191.130 (ndbd點ip地址) 15.?? DataDir=/var/mysql/data 16.??? 17.?? [MYSQLD] 18.?? nodeid=3 19.?? HostName=192.168.191.131? (mysqld節點ip地址) 20.?? [MYSQLD] 21.?? nodeid=4 22.?? HostName=192.168.191.133? (mysqld節點ip地址) 23.??? 24.?? #必須有空的mysqld節點,不然數據節點斷開后啟動有報錯 25.?? [MYSQLD] 26.?? nodeid=5 27.?? [mysqld] 28.?? nodeid=6

?

以上內容輸入完畢后,按ESC,輸入:wq即可保存退出

?

拷貝ndb_mgm、ndb_mgmd、config.ini到bin目錄。

# cd /usr/local/mysql/bin?

# cp ./ndb_mgm /usr/local/bin/?

# cp ./ndb_mgmd /usr/local/bin/

# cp /var/lib/mysql-cluster/config.ini /usr/local/bin/

?

?

數據節點配置(終端輸入)

# vi /etc/my.cnf?(添加以下內容)

[mysqld]?

datadir=/var/mysql/data?

socket=/var/mysql/mysql.sock?

user=mysql?

# Disabling symbolic-links is recommended to prevent assorted security risks?

symbolic-links=0?

?

#運行NDB存儲引擎?

ndbcluster??

#指定管理節點?

ndb-connectstring=192.168.191.132??(管理節點ip)

[MYSQL_CLUSTER]?

ndb-connectstring=192.168.191.132???(管理節點ip)

[NDB_MGM]?

connect-string=192.168.191.132???(管理節點ip)

?

[mysqld_safe]?

log-error=/var/mysql/log/mysqld.log?

pid-file=/var/run/mysqld/mysqld.pid

?

Sql節點配置(終端輸入)

# cd /usr/local/mysql/

?

設置mysql服務為開機自啟動

# cp support-files/mysql.server /etc/rc.d/init.d/mysqld?

# chmod +x /etc/rc.d/init.d/mysqld?

# chkconfig --add mysqld

?

# vi /etc/my.cnf (添加以下內容)

[mysqld]? ??

datadir=/var/mysql/data?

socket=/var/mysql/mysql.sock?

user=mysql?

# Disabling symbolic-links is recommended to prevent assorted security risks?

symbolic-links=0?

log-bin = /var/mysql/log/mysql-bin.log?

max_connections=1000?

?

#以下為mysql 主主模式的配置文件?

# 忽略mysql數據庫復制?

binlog-ignore-db=mysql?

# 每次增長2?

auto-increment-increment=2?

# 設置自動增長的字段的偏移量,即初始值為2?

auto-increment-offset=1?

ndbcluster?

ndb-connectstring=192.168.191.132 (管理節點ip)

?

[MYSQL_CLUSTER]?

ndb-connectstring=192.168.191.132? (管理節點ip)

[NDB_MGM]?

connect-string=192.168.191.132? (管理節點ip)

?

[mysqld_safe]?

log-error=/var/mysql/log/mysqld.log?

pid-file=/var/run/mysqld/mysqld.pid?

?

這里要注意,在var目錄下新建mysql目錄,在新建的mysql目錄下建立log和data目錄

另外要給這兩個目錄授權代碼如下

# cd /var

# chown –R mysql:mysql mysql/

下面兩個命令是對mysql命令的一個link,否則無法使用mysql命令

# Ln –s /usr/local/mysql/bin/mysql /usr/bin

# Ln –s /var/mysql/mysql.sock /tmp/mysql.sock

回到頂部

運行mysql-cluster

mysql集群的啟動順序為:管理節點->數據節點->SQL節點

mysql集群的關閉順序為,管理節點->數據節點->SQL節點

?

打開服務的時候注意防火墻問題

注意把管理節點的防火墻關閉 命令如下:

# /etc/init.d/iptables stop

?

首先打開管理節點服務

# ndb_mgmd -f /var/lib/mysql-cluster/config.ini --initial(注意第一次或者對config文件進行修改后,打開服務一定要加上initial否則新增加的內容不會被使用)

然后打開ndbd節點服務

# /usr/local/mysql/bin/ndbd --initial(此處同上)

出現一下信息表示ndbd節點啟動成功.

?

2012-03-28 02:01:38 [ndbd] INFO -- Angel connected to '10.32.33.120:1186'

2012-03-28 02:01:38 [ndbd] INFO -- Angel allocated nodeid: 36

?

最后打開兩個sql節點131和133

#service mysqld start

出現mysql success表示服務啟動成功

?

打開管理節點,終端輸入

# ndb_mgm

#ndb_mgm> show

顯示以下信息,則mysql-cluster安裝部署成功

Cluster Configuration

---------------------

[ndbd(NDB)] 2 node(s)

id=2 @192.168.191.130 (mysql-5.5.20 ndb-7.4.4, Nodegroup: 0)

[ndb_mgmd(MGM)] 1 node(s)

id=1 @192.168.191.132 (mysql-5.5.20 ndb-7.4.4)

[mysqld(API)] 4 node(s)

id=3 @192.168.191.131 (mysql-5.5.20 ndb-7.4.4)

id=4 @192.168.191.133 (mysql-5.5.20 ndb-7.4.4)

id=5 (not connected, accepting connect from any host)

id=6 (not connected, accepting connect from any host)

可以看到各個節點已經連接上了。

?

以下是關于mgm相關的命令

# ndb_mgm

# ndb_mgm> show?查看各節點情況。??

# ndb_mgm> all report memory?查看各數據節點使用情況??

# ndb_mgm>create nodegroup 3創建數據節點分組???

# mysql> alter online table data_house reorganize partition;?調整分區數據

# ndb_mgm>shutdown關閉節點

# ndb_mgm>exit退出

回到頂部

常見問題

Mysqld端服務無法啟動

[root@localhost Desktop]#service mysqld start

Starting mysql.the service quit without updating PID file (/[FAILED]/var/mysql/log/localhost.localdomain.pid).

先去查看日志

#cd /var/mysql/data

#less localhost.localdomain.err

如果錯誤是

Fatal error:can’t open and lock privilege tables:Table’mysql.user’ doesn’t exist

解決方法:

終端輸入

到mysql目錄下/usr/local/mysql

輸入

Scripts/mysql_install_db –user=mysql(初始化數據庫即可)

其他問題請注意查看問題所在的文件夾權限問題

回到頂部

測試

1、從SQL節點131登錄,創建數據庫和表,進行簡單測試。

mysql> create database tltest ;

mysql> use tltest;

Database changed

mysql> create table test1(id int,name varchar(10)) engine=ndb ;

mysql> insert into test1 values(1,'tl');

mysql> select * from test1 ;

+------+---------+

| id?? | name? |

+------+---------+

|? 1 |??? tl?? |

+------+---------+

登陸133節點,查看效果,庫,表和數據已經同步。

從133節點插入一條數據,同樣登陸131,也能看到數據已經同步。


總結

以上是生活随笔為你收集整理的【Data Cluster】真机环境下MySQL数据库集群搭建的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: av日韩一区二区三区 | 精品国产人妻一区二区三区 | 特大黑人巨交吊性xxxx视频 | 天堂999 | 草草影院在线 | www.四虎在线观看 | 少妇姐姐 | 二级黄色大片 | 成人羞羞在线观看网站 | 亚洲日本天堂 | 一级网站在线观看 | 国产又粗又黄的视频 | 欧美精品99 | 久久综合导航 | 免费裸体视频女性 | 男人把女人捅爽 | 国产成人资源 | 自拍偷拍视频在线观看 | 欧美激情五月 | 日本少妇裸体做爰 | 精品少妇人妻一区二区黑料社区 | 波多野av在线 | av先锋在线 | 日韩精品一二 | 五月天在线观看 | 图片区视频区小说区 | 中文在线字幕免费观 | 青青草.com| 色婷婷国产精品视频 | 成年女人色毛片 | 91免费视频播放 | 女性裸体下面张开 | 国产h视频 | 日本高潮视频 | 成人性生活免费看 | 一区二区日韩在线观看 | 国产成人亚洲综合 | 尤物av无码色av无码 | 国产乱仑视频 | 黄色小网站在线观看 | 久久91精品国产 | 91精选视频| 免费毛片a| 在线播放亚洲精品 | 国产精品老牛影视 | 一区二区网| 激情综合图区 | 青青青视频在线 | 国产日韩欧美精品在线 | 国产高清自拍一区 | 男人天堂网站 | 国产午夜精品一区二区理论影院 | 午夜av网址 | 在线观看黄色av网站 | 免费99精品国产自在在线 | 国产精品综合视频 | av免| 永久免费AV无码网站韩国毛片 | 在线免费观看a级片 | 欧美爽妇 | 欧美日韩一区二区在线观看视频 | 69精品久久久久久 | 雨宫琴音一区二区三区 | 国产在线18 | 老头糟蹋新婚少妇系列小说 | 日韩av网址在线观看 | 免费a级黄色片 | 久久深夜福利 | 国产的av| 人禽高h交 | 中文文字幕一区二区三三 | 人妻一区二区在线 | 午夜福利三级理论电影 | 久久人人艹 | 九色在线观看视频 | xxx日本黄色 | 日韩色图在线观看 | 台湾swag在线播放 | 亚洲欧美字幕 | 欧美一级免费黄色片 | 美女大黄网站 | 少妇又色又紧又黄又刺激免费 | 日韩在线黄色 | 欧美午夜精品一区二区三区 | 97超碰人人澡| 小萝莉末成年一区二区 | 啪免费| 午夜精品久久久久久久99 | 中文字幕在线观看视频www | 插我舔内射18免费视频 | 日韩福利一区二区 | 最新福利在线 | 国产精品久久av无码一区二区 | 麻豆久久久9性大片 | 乱子伦一区二区 | 91av视频在线 | 国产黄色在线网站 | 亚洲视频你懂的 | 天天干狠狠插 |