當前位置:首頁 » 編程語言 » sql群集節點

sql群集節點

發布時間: 2022-08-12 16:08:27

❶ 如何在Windows系統中配置Mysql群集

MySQL 群集是一種技術,該技術允許在無共享的系統中部署「內存中」和「磁碟中」資料庫的 Cluster 。通過無共享體系結構,系統能夠使用廉價的硬體,而且對軟硬體無特殊要求。此外,由於每個組件有自己的內存和磁碟,不存在單點故障。MySQL Cluster 由一組計算機構成,每台計算機上均運行著多種進程,包括 MySQL 伺服器,NDB Cluster 的數據節點,管理伺服器,以及(可能存在的)專門的數據訪問程序。

管理伺服器(MGM節點)負責管理 Cluster 配置文件和 Cluster 日誌。Cluster 中的每個節點從管理伺服器檢索配置數據。當數據節點內出現新的事件時,節點將關於這類事件的信息傳輸到管理伺服器,然後,將這類信息寫入 Cluster 日誌。

目前能夠運行 MySQL Cluster 的操作系統有 Linux、Mac OS X 和 Solaris,最新的版本已經支持 Windows 操作系統。

MySQL 群集的數據節點之間的通信是不加密的,並且需要高速的帶寬,所以建議把群集建立在一個高速區域網內,不建議跨網段、跨公網的部署這種系統體系。

MySQL 群集分為三種節點:管理節點,數據節點和SQL節點。

管理節點:主要用於管理各個節點,能夠通過命令對某個節點進行重啟、關閉、啟動等操作。也能夠監視全部節點的工作狀態。
數據節點:主要是對數據的存儲,不提供其他的服務。
SQL節點:主要是對外提供SQL功能,類似一台普通的 MySQL Server。

而SQL節點和數據節點可以是同一台機器,也就是說這台機器即是SQL節點也是數據節點。它們只是邏輯關繫上的劃分,實際部署時,甚至所有的階段都可以位於同一台物理機器上,只是配置較復雜些。

一、軟體下載機器操作環境

配置 MySQL 群集必需使用其群集版本,注意和 MySQL Server 版本的區別。本文以 Windows 平台下的 MySQL 群集版本 MySQL Cluster 7.1.3 為例(截至2010年6月初的最高版本),這是 MySQL Server 5.1 系列版本之一,添加了群集的功能。下載地址為:http://dev.mysql.com/downloads/cluster,選擇 mysql-cluster-gpl-noinstall-7.1.3-win32.zip 文件,這是一個 for Windows 32位版本的、免安裝的二進製版本。

根據自己的操作系統的位數,也可以選擇 64 位版本的。還有一個 27.2M 的 Windows(x86, 32-bit) 版本,下載下來需要自己編譯,有經驗的高級用戶可以選用。

本實驗在 2 台安裝 Windows Server 2003(sp2) 的機器上進行。節點分配及 IP 配置如下:

第一台機器,IP 為 10.0.0.201,作為管理節點(MGM),SQL節點1(SQL1),數據節點1(NDBD1)。
第二台機器,IP 為 10.0.0.202,作為SQL節點2(SQL2),數據節點2(NDBD2)。

管理節點最好不要與數據節點部署在同一台伺服器上,否則可能會因為該數據節點伺服器的當機,而導致管理節點伺服器的問題,從而導致整個群集系統的崩潰。

二,配置管理節點:

在第一台機器上,建文件夾 D:\mysql-cluster,在其下建立文件 config.ini,內容如下:

[NDBD DEFAULT]
NoOfReplicas=1

[MYSQLD DEFAULT]

[NDB_MGMD DEFAULT]

[TCP DEFAULT]

# Managment Server
[NDB_MGMD]
hostname=10.0.0.201

# Storage Engines
[NDBD]
hostname=10.0.0.201
datadir= D:\data

[NDBD]
hostname=10.0.0.202
datadir= D:\data

# SQL Engines
[MYSQLD]
hostname=10.0.0.201

[MYSQLD]
hostname=10.0.0.202

Cluster 管理節點的默認埠是1186,數據節點的默認埠是 2202。從 MySQL 5.0.3開始,該限制已被放寬,Cluster 能夠根據空閑的埠自動地為數據節點分配埠。如果你的版本低於5.0.22,請注意這個細節。

Cluster 管理節點作為一個服務端(通過運行 db_mgmd.exe 程序讀取本配置文件來啟動),通過本機上的客戶端 ndb_mgm.exe 來連接和操作。

三、配置 MySQL 資料庫伺服器:

在2台機器上,分別依次操作。

解壓 mysql-cluster-gpl-noinstall-7.1.3-win32.zip 文件到 D:\mysql-cluster-gpl-noinstall-7.1.3-win32 文件夾下,把 D:\mysql-cluster-gpl-noinstall-7.1.3-win32\bin 加到 Windows 的系統 path 中。

打開DOS命令行窗口(配置完系統path後,在再次打開新的命令行窗口),執行以下語句,讓 MySQL 作為 Windows 服務運行:

mysqld.exe -install mysql

再在 Windows 服務管理界面里,配置 mysql 服務,手動啟動(不要自動啟動)。

把 D:\mysql-cluster-gpl-noinstall-7.1.3-win32 下的某個備用的配置文件(例如my-small.ini)復制為 my.ini 文件。

建立 D:\tmp 文件夾。

四、配置SQL節點和數據節點:

在2台機器上,分別依次操作。

建立文件夾 D:\data。

編輯 NySQL 配置文件 D:\mysql-cluster-gpl-noinstall-7.1.3-win32\my.ini,在 [mysqld] 節末尾加語句:

#SQL群集節點
ndbcluster
ndb-connectstring=10.0.0.201

有了 ndbcluster 語句,mysql 服務將作為群集的 SQL 節點啟動。mysqld.exe 命令帶參數 –ndbcluster 運行是一樣的效果。
mysql 服務連接到數據節點的 2202 默認埠,或自動分配的別的可用埠。
(問題:SQL節點如何獲得數據節點的IP地址?是否通過連接管理節點,取得所有數據節點的IP地址的列表?)
這里的連接字元串的值在 MySQL 服務啟動時使用,用於連接到管理節點。

在末尾加語句:

#NDB集群節點
[mysql_cluster]
ndb-connectstring=10.0.0.201

註:好像以下形式也可:
[ndbd]
ndb-connectstring=10.0.0.201

這里的連接字元串的值在數據節點啟動時使用,用於連接到管理節點。

五,啟動群集各伺服器

啟動順序依次是:管理節點、數據節點、SQL節點。

1,啟動管理節點

在第一台伺服器的DOS窗口,運行命令:

C:\>ndb_mgmd.exe -f d:\mysql-cluster.conf\config.ini –configdir=d:\mysql-cluster

註:如果不帶 –configdir=d:\mysql-cluster 參數,將默認為 C:\mysql\mysql-cluster 文件夾。

屏幕顯示:

C:\>ndb_mgmd.exe -f d:\mysql-cluster.conf\config.ini –configdir=d:\mysql-cluster
2010-06-10 01:16:57 [MgmtSrvr] INFO — NDB Cluster Management Server. mysql-5.1.44 ndb-7.1.3
2010-06-10 01:16:57 [MgmtSrvr] INFO — Reading cluster configuration from 『d:\mysql-cluster.conf\config.ini'
2010-06-10 01:16:57 [MgmtSrvr] INFO — Got initial configuration from 『d:\mysql-cluster.conf\config.ini', will try to set it when all ndb_mgmd(s) started
2010-06-10 01:16:57 [MgmtSrvr] INFO — Mgmt server state: nodeid 1 reserved for ip 10.0.0.201, m_reserved_nodes 1.
2010-06-10 01:16:57 [MgmtSrvr] INFO — Id: 1, Command port: *:1186
==INITIAL==
2010-06-10 01:16:57 [MgmtSrvr] INFO — Starting initial configuration change
2010-06-10 01:16:57 [MgmtSrvr] INFO — Configuration 1 commited
2010-06-10 01:16:57 [MgmtSrvr] INFO — Config change completed! New generation: 1
==CONFIRMED==

2,啟動數據節點

分別在2台伺服器的DOS窗口運行命令。

第一次,或初始化群集節點時,運行命令:

ndbd.exe –initial

初始化之後,只運行 ndbd.exe 即可。若帶參數 –initial 運行,將使正常運行的群集系統中,數據節點的數據全部丟失。

數據節點依賴管理節點伺服器,進行數據的自動復制和同步,使各個數據節點的數據保持一致,並在某個數據節點意外關閉又恢復後,進行數據的恢復重建。

3,啟動SQL節點

有了 ndbcluster 語句,啟動 mysql 服務,就啟動了SQL節點。應在前2種節點啟動後,分別在2台伺服器上進行。

六、群集管理

在所有的數據節點和SQL節點未啟動之前,運行群集管理節點服務的客戶端 ndb_mgm.exe,只能獲得以下信息:

C:\>ndb_mgm.exe
— NDB Cluster — Management Client –
ndb_mgm> show
Cluster Configuration
———————
[ndbd(NDB)] 2 node(s)
id=2 (not connected, accepting connect from 10.0.0.201)
id=3 (not connected, accepting connect from 10.0.0.202)

[ndb_mgmd(MGM)] 1 node(s)
id=1 @10.0.0.201 (mysql-5.1.44 ndb-7.1.3)

[mysqld(API)] 2 node(s)
id=4 (not connected, accepting connect from 10.0.0.201)
id=5 (not connected, accepting connect from 10.0.0.202)

ndb_mgm>

說明數據節點、SQL節點均未連接到管理節點服務。

在所有的數據節點和SQL節點正確啟動之後,將獲得以下信息:

ndb_mgm> show
Cluster Configuration
———————
[ndbd(NDB)] 2 node(s)
id=2 @10.0.0.201 (mysql-5.1.44 ndb-7.1.3, Nodegroup: 0, Master)
id=3 @10.0.0.202 (mysql-5.1.44 ndb-7.1.3, Nodegroup: 1)

[ndb_mgmd(MGM)] 1 node(s)
id=1 @10.0.0.201 (mysql-5.1.44 ndb-7.1.3)

[mysqld(API)] 2 node(s)
id=4 @10.0.0.201 (mysql-5.1.44 ndb-7.1.3)
id=5 @10.0.0.202 (mysql-5.1.44 ndb-7.1.3)

ndb_mgm>

關閉群集的DOS命令:

ndb_mgm -e shutdown

或在 ndb_mgm 環境下執行 shutdown 命令。

以上命令或關閉管理節點服務和所有的數據節點。隨意、強行關閉群集系統(關機或關閉進程),會導致數據沒有全部寫回磁碟而導致的數據丟失。

關閉SQL節點的 mysqld 服務:

C:\>net stop mysql,或:

C:\>mysqladmin -u root shutdown

七、測試

正常運行的 MySQL 群集系統,通過SQL節點可以對數據節點進行資料庫操作,各數據節點可以自動進行數據同步。某一個數據節點關閉後,不影響SQL節點的使用。某些數據節點出錯後,可以進行恢復。需要注意的是,SQL節點建立資料庫時,必須選擇「ndbcluster」資料庫引擎。如果不選擇「ndbcluster」引擎,建立的資料庫將不會進入MySQL群集系統中,但是可以獨立使用。

另外,每個 NDB 表必須有一個主鍵。如果在創建表時未定義主鍵,NDB Cluster 存儲引擎將自動生成隱含的主鍵。該隱含的鍵也將佔用空間,就像任何其他的表索引一樣。由於沒有足夠的內存來容納這些自動創建的鍵,出現問題並不罕見。

❷ SQL群集需要幾台應急

集群最少要求有3台計算機。
在復制系統中,一個MySQL主伺服器會更新一個或多個從伺服器。事務是順序地提交的,因此一個慢事務就可能導致從伺服器比主伺服器落後一段時間.這也意味著,如果主伺服器出錯失敗了,那麼從伺服器可能會缺少記錄最後的那一小部分事務日誌。如果使用的是事務安全存儲引擎的話,例如InnoDB,那麼事務日誌則會完全記錄到從伺服器上去或者完全不記錄,但是復制不能保證主和從伺服器上的數據總是保持一致性。在MySQL集群中,所有的數據總是保持同步,在任何數據節點上提交的事務都同步到所有其他的數據節點上了。如果有一個數據節點失敗了,其他正常的數據節點照樣能保持數據的一致性。
集群最少要求有3台計算機,不過我們建議最好是4台。有2台分別運行管理節點和SQL節點,另外2台作為數據節點。採取2台數據節點的目的是提高數據的冗餘度,管理節點放在一個獨立的主機上是為了能夠保證在萬一有一台數據節點失敗的情況下提供仲裁服務。

❸ 如何創建新的 SQL Server 故障轉移群集

若要安裝
SQL
Server
故障轉移群集,必須在故障轉移群集的每個節點上運行安裝程序。若要向現有的
SQL
Server
故障轉移群集添加節點,則必須在要添加至
SQL
Server
故障轉移群集實例的節點上運行
SQL
Server
安裝程序。不要在活動節點上運行安裝...

❹ 有沒有大佬知道安裝sqlserver2008時,顯示群集節點失敗怎麼解決啊




操作系統:Windows Server 2008 R2 Enterprise Edition (x64)

群集軟體:OS自帶的「故障轉移群集」

資料庫:SQL Server 2008 R2 Enterprise Edition (x64)

共享存儲:IBM DS4300 ,8x300GB SAS,劃完共4塊磁碟,共1.6TB,RAID 5,陣列卡交換速率4G,雙通單控


主要遇到過的問題:
1、存儲劃錯,重劃時由於採用另一台電腦劃分,群集重啟後無法認到,於時MSCS破壞群集不正常,2台節點只好重裝

2、不能採用DC作為群集節點,故安裝雙節點群集至少需要3台主機,另有1台充當DC,操作步驟為:
.在第3台主機上安裝現有域的第3台DC,確認與其他2台DC都可以進行復制操作
.將根域DC上的5個FSMO角色傳送到第3台DC,確認第3台DC同時為GC
.運行dcpromo命令在原先2台DC上反安裝DC,在反安裝時不要選中「這是最後一台域控制器」
.檢測域DNS和AD的正確性
.檢測MSCS的正確性

3、安裝SQL2008RTM群集時出錯,提示RequireKerberos=1超出范圍錯誤(這是SQL2008RTM在群集安裝時會出現的1個BUG,必須採用slipstream方式附帶SP1一塊安裝),不得已反安裝,但由於手動將MSCS中失敗的SQL資源刪除,使得SQL反安裝失敗,手動刪除注冊表均未果,只好重裝節點1,重裝時的正確步驟為:
.破壞群集(由於存儲正常,很快完成)
.將節點1退出域(此時在DC中顯示該節點帳號為禁用狀態,不要刪除它)
.重新安裝節點1操作系統,配置存儲陣列盤、配置IP地址與域DNS,加入域
.刪除域中有關原群集的信息,包括群集名稱在AD資料庫中的內容(在Computer容器下),檢查DNS中無群集節點解析

❺ 如何在 SQL Server 2005 故障轉移群集中添加或刪除節點

任意選擇一台群集裝SQL Server的時候選擇新的故障轉移群集安裝。
在其它群集節點安裝SQL Server的時候選擇向故障轉移群集添加節點。

❻ sql server群集主節點怎麼看

方法如下:
重要提示若要更新或刪除 SQL Server 故障轉移群集,您必須是一名本地管理員,且具有作為服務登錄到故障轉移群集的所有節點的許可權。
對於本地安裝,必須以管理員身份運行安裝程序。

❼ 請教各位高手,安裝SQL 2012群集問題:第一個接點安裝完成,第二選擇:向SQL Server故障轉移群集添加節點

如果您在使用 Windows Vista SP2 或 Windows Server 2008 SP2 操作系統的計算機上安裝 SQL Server 2012,則可以從此處獲得所需更新。
如果您在使用 Windows 7 SP1 或 Windows Server 2008 R2 SP1 或 Windows Server 2012 或 Windows 8 操作系統的計算機上安裝 SQL Server 2012,則已包含此更新。

❽ 如何在 SQL Server 故障轉移群集中添加或刪除節點(安裝程序)

重要提示若要更新或刪除 SQL Server 故障轉移群集,您必須是一名本地管理員,且具有作為服務登錄到故障轉移群集的所有節點的許可權。對於本地安裝,必須以管理員身份運行安裝程序。如果從遠程共享安裝 SQL Server,則必須使用對遠程共享具有讀取和執行許可權的域帳戶。安裝程序不會將 .NET Framework 3.5 SP1 安裝在群集操作系統上。必須先安裝 .NET Framework 3.5 SP1,才能運行安裝程序。如果受到安裝程序中的已知問題的影響,可能需要在安裝 SQL Server 2008 之前對原始媒體應用累積更新。有關已知問題和詳細說明的詳細信息,請參閱。請注意,SQL Server 故障轉移群集的安裝操作在此版本中已進行了更改。若要安裝或升級 SQL Server 故障轉移群集,則必須在故障轉移群集的每個節點上運行安裝程序。若要向現有的 SQL Server 故障轉移群集添加節點,則必須在要添加至 SQL Server 故障轉移群集實例的節點上運行 SQL Server 安裝程序。不要在活動節點上運行安裝程序。若要從現有的 SQL Server 故障轉移群集中刪除節點,則必須在要從 SQL Server 故障轉移群集實例中刪除的節點上運行 SQL Server 安裝程序。

❾ 如何在 SQL Server 故障轉移群集中添加或刪除節點(安裝程序)求解答

重要提示若要更新或刪除 SQL Server 故障轉移群集,您必須是一名本地管理員,且具有作為服務登錄到故障轉移群集的所有節點的許可權。對於本地安裝,必須以管理員身份運行安裝程序。如果從遠程共享安裝 SQL Server,則必須使用對遠程共享具有讀取和執行許可權的域帳戶。安裝程序不會將 .NET Framework 3.5 SP1 安裝在群集操作系統上。必須先安裝 .NET Framework 3.5 SP1,才能運行安裝程序。如果受到安裝程序中的已知問題的影響,可能需要在安裝 SQL Server 2008 R2 之前對原始介質應用累積更新。有關已知問題和詳細說明的詳情,請參閱如何通過運行 SQL Server 2008 R2 安裝支持文件的較新版本更新 SQL Server 2008 R2 安裝程序。請注意,SQL Server 故障轉移群集的安裝操作在此版本中已進行了更改。若要安裝或升級 SQL Server 故障轉移群集,則必須在故障轉移群集的每個節點上運行安裝程序。若要向現有的 SQL Server 故障轉移群集添加節點,則必須在要添加至 SQL Server 故障轉移群集實例的節點上運行 SQL Server 安裝程序。不要在活動節點上運行安裝程序。若要從現有 SQL Server 故障轉移群集中刪除一個節點,必須在要從 SQL Server 故障轉移群集實例中刪除的節點上運行 SQL Server 安裝程序。

❿ 如何創建SQL Server 2000故障轉移群集

1. 在"Microsoft SQL Server 安裝向導的「歡迎」屏幕中,單擊「下一步」按鈕。
2.在「計算機名稱」屏幕上,單擊「虛擬伺服器」並輸入虛擬伺服器名稱。如果安裝程序檢測到 MSCS 正在運行,則將默認為「虛擬伺服器」,單擊「下一步」按鈕。
3. 在「用戶信息」屏幕上,輸入用戶名和公司名。單擊「下一步」按鈕。
4. 在「軟體許可協議」屏幕上,單擊「是」按鈕。
5. 在「故障轉移群集」屏幕上,輸入為客戶端訪問配置的每個網路的一個 IP 地址。也就是為每個虛擬伺服器可由公共(或混合)網路上的客戶端使用的網路輸入一個 IP 地址,選擇要輸入 IP 地址的網路,然後輸入 IP 地址,單擊「添加」按鈕。
顯示 IP 地址和子網,子網由 MSCS 提供,繼續為每個已安裝的網路輸入 IP 地址,直到所有需要的網路都填充了 IP 地址,單擊「下一步」按鈕。

6. 在「群集磁碟選擇」屏幕中,選擇在默認情況下用於放置數據文件的群集磁碟組。單擊「下一步」按鈕。
7.在「群集管理」屏幕中,查看 SQL Server 2000 所提供的群集定義。默認情況下,選定所有可用節點。刪除不屬於正創建的虛擬伺服器群集定義的任何節點,單擊「下一步」按鈕。
8.在「遠程信息」屏幕中,輸入遠程群集節點的登錄憑據,該登錄憑據必須在群集的遠程節點上有管理員特權,單擊「下一步」按鈕。
9.在「實例名稱」屏幕中,選擇默認實例或指定命名實例。若要指定命名實例,請先清除「默認」復選框,然後輸入命名實例的名稱,單擊「下一步」按鈕。

10.在「安裝類型」屏幕中選擇要安裝的安裝類型,安裝程序自動默認為來自先前所選的組中的第一個可用群集磁碟資源。不過,如果需要指定另一個群集驅動器資源,可在「數據文件」下單擊「瀏覽」按鈕,然後指定群集驅動器資源的路徑。安裝程序將要求選擇群集驅動器資源,該資源為正在運行安裝程序的節點所擁有,該驅動器也必須是先前所選的群集組成員,單擊「下一步」按鈕。
11.在「服務帳戶」屏幕上,選擇要在故障轉移群集中運行的服務帳戶,單擊「下一步」按鈕。
12.在「身份驗證模式」對話框中,選擇要使用的身份驗證模式。如果將選擇內容從「Windows 身份驗證模式」變為「混合模式(Windows 身份驗證和 SQL Server 身份驗證)」,則需要輸入並確認 sa 登錄密碼,在「開始復制文件」屏幕上,單擊「下一步」按鈕。
13.在「安裝完成」屏幕上,單擊「完成」按鈕。

熱點內容
垃圾壓縮價格 發布:2025-01-20 22:14:05 瀏覽:421
溫十系統如何看處理器配置 發布:2025-01-20 21:59:47 瀏覽:302
米號源碼 發布:2025-01-20 21:55:30 瀏覽:893
電信四川dns伺服器ip 發布:2025-01-20 21:54:51 瀏覽:92
電腦彈出腳本錯誤還能繼續使用嗎 發布:2025-01-20 21:42:29 瀏覽:586
安卓私密照片在哪裡 發布:2025-01-20 21:41:05 瀏覽:5
同濟復試編譯原理 發布:2025-01-20 21:33:54 瀏覽:310
c語言判斷字母 發布:2025-01-20 21:31:09 瀏覽:424
ftp伺服器搭建linux 發布:2025-01-20 21:26:05 瀏覽:335
安卓手機瀏覽器如何翻譯英文網頁 發布:2025-01-20 21:21:01 瀏覽:423