日韩天天综合网_野战两个奶头被亲到高潮_亚洲日韩欧美精品综合_av女人天堂污污污_视频一区**字幕无弹窗_国产亚洲欧美小视频_国内性爱精品在线免费视频_国产一级电影在线播放_日韩欧美内地福利_亚洲一二三不卡片区

Windows Server 2003 下配置 MySQL 集群(Cluster)教程_MySQL教程

編輯Tag賺U幣
教程Tag:暫無Tag,歡迎添加,賺取U幣!

推薦:在CentOS上安裝phpMyAdmin的教程
這篇文章主要介紹了在CentOS上安裝phpMyAdmin的教程,phpMyAdmin是一款借助PHP腳本來操作MySQL的工具,非常具有人氣,需要的朋友可以參考下 前提 在CentOS上安裝phpMyAdmin,你第一步需要架設一臺Web服務器(如Apache或nginx),安裝好MySQL/MariaDB數(shù)據(jù)庫和PHP。根據(jù)你的偏

   這篇文章主要介紹了Windows Server 2003 下配置 MySQL 集群(Cluster)教程,本文先是講解了原理知識,然后給出詳細配置步驟和操作方法,需要的朋友可以參考下

  MySQL 群集是 MySQL 適合于分布式計算環(huán)境的高可用、高冗余版本。它采用了 NDB Cluster 存儲引擎,允許在 1 個群集中運行多個 MySQL 服務器。在 MySQL 5.0 及以上的二進制版本中,以及與最新的 Linux 版本兼容的 RPM 包中提供了該存儲引擎。

  MySQL 群集是一種技術,該技術允許在無共享的系統(tǒng)中部署“內(nèi)存中”和“磁盤中”數(shù)據(jù)庫的 Cluster 。通過無共享體系結(jié)構(gòu),系統(tǒng)能夠使用廉價的硬件,而且對軟硬件無特殊要求。此外,由于每個組件有自己的內(nèi)存和磁盤,不存在單點故障。MySQL Cluster 由一組計算機構(gòu)成,每臺計算機上均運行著多種進程,包括 MySQL 服務器,NDB Cluster 的數(shù)據(jù)節(jié)點,管理服務器,以及(可能存在的)專門的數(shù)據(jù)訪問程序。

  管理服務器(MGM節(jié)點)負責管理 Cluster 配置文件和 Cluster 日志。Cluster 中的每個節(jié)點從管理服務器檢索配置數(shù)據(jù)。當數(shù)據(jù)節(jié)點內(nèi)出現(xiàn)新的事件時,節(jié)點將關于這類事件的信息傳輸?shù)焦芾矸⻊掌鳎缓�,將這類信息寫入 Cluster 日志。

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

  MySQL 群集的數(shù)據(jù)節(jié)點之間的通信是不加密的,并且需要高速的帶寬,所以建議把群集建立在一個高速局域網(wǎng)內(nèi),不建議跨網(wǎng)段、跨公網(wǎng)的部署這種系統(tǒng)體系。

  MySQL 群集分為三種節(jié)點:管理節(jié)點,數(shù)據(jù)節(jié)點和SQL節(jié)點。

  管理節(jié)點:主要用于管理各個節(jié)點,能夠通過命令對某個節(jié)點進行重啟、關閉、啟動等操作。也能夠監(jiān)視全部節(jié)點的工作狀態(tài)。

  數(shù)據(jù)節(jié)點:主要是對數(shù)據(jù)的存儲,不提供其他的服務。

  SQL節(jié)點:主要是對外提供SQL功能,類似一臺普通的 MySQL Server。

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

Windows Server 2003 下配置 MySQL 集群(Cluster)教程

  一、軟件下載機器操作環(huán)境

  配置 MySQL 群集必需使用其群集版本,注意和 MySQL Server 版本的區(qū)別。本文以 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位版本的、免安裝的二進制版本。

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

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

  第一臺機器,IP 為 10.0.0.201,作為管理節(jié)點(MGM),SQL節(jié)點1(SQL1),數(shù)據(jù)節(jié)點1(NDBD1)。

  第二臺機器,IP 為 10.0.0.202,作為SQL節(jié)點2(SQL2),數(shù)據(jù)節(jié)點2(NDBD2)。

  管理節(jié)點最好不要與數(shù)據(jù)節(jié)點部署在同一臺服務器上,否則可能會因為該數(shù)據(jù)節(jié)點服務器的當機,而導致管理節(jié)點服務器的問題,從而導致整個群集系統(tǒng)的崩潰。

  二,配置管理節(jié)點:

  在第一臺機器上,建文件夾 D:\mysql-cluster,在其下建立文件 config.ini,內(nèi)容如下:

   代碼如下:

  [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 管理節(jié)點的默認端口是1186,數(shù)據(jù)節(jié)點的默認端口是 2202。從 MySQL 5.0.3開始,該限制已被放寬,Cluster 能夠根據(jù)空閑的端口自動地為數(shù)據(jù)節(jié)點分配端口。如果你的版本低于5.0.22,請注意這個細節(jié)。

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

  三、配置 MySQL 數(shù)據(jù)庫服務器:

  在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 的系統(tǒng) path 中。

  打開DOS命令行窗口(配置完系統(tǒng)path后,在再次打開新的命令行窗口),執(zhí)行以下語句,讓 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節(jié)點和數(shù)據(jù)節(jié)點:

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

  建立文件夾 D:\data。

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

   代碼如下:

  #SQL群集節(jié)點

  ndbcluster

  ndb-connectstring=10.0.0.201

  有了 ndbcluster 語句,mysql 服務將作為群集的 SQL 節(jié)點啟動。mysqld.exe 命令帶參數(shù) –ndbcluster 運行是一樣的效果。

  mysql 服務連接到數(shù)據(jù)節(jié)點的 2202 默認端口,或自動分配的別的可用端口。

  (問題:SQL節(jié)點如何獲得數(shù)據(jù)節(jié)點的IP地址?是否通過連接管理節(jié)點,取得所有數(shù)據(jù)節(jié)點的IP地址的列表?)

  這里的連接字符串的值在 MySQL 服務啟動時使用,用于連接到管理節(jié)點。

  在末尾加語句:

   代碼如下:

  #NDB集群節(jié)點

  [mysql_cluster]

  ndb-connectstring=10.0.0.201

  注:好像以下形式也可:

  代碼如下:

  [ndbd]

  ndb-connectstring=10.0.0.201

  這里的連接字符串的值在數(shù)據(jù)節(jié)點啟動時使用,用于連接到管理節(jié)點。

  五,啟動群集各服務器

  啟動順序依次是:管理節(jié)點、數(shù)據(jù)節(jié)點、SQL節(jié)點。

  1,啟動管理節(jié)點

  在第一臺服務器的DOS窗口,運行命令:

  代碼如下:

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

  注:如果不帶 –configdir=d:\mysql-cluster 參數(shù),將默認為 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,啟動數(shù)據(jù)節(jié)點

  分別在2臺服務器的DOS窗口運行命令。

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

  代碼如下:

  ndbd.exe –initial

  初始化之后,只運行 ndbd.exe 即可。若帶參數(shù) –initial 運行,將使正常運行的群集系統(tǒng)中,數(shù)據(jù)節(jié)點的數(shù)據(jù)全部丟失。

  數(shù)據(jù)節(jié)點依賴管理節(jié)點服務器,進行數(shù)據(jù)的自動復制和同步,使各個數(shù)據(jù)節(jié)點的數(shù)據(jù)保持一致,并在某個數(shù)據(jù)節(jié)點意外關閉又恢復后,進行數(shù)據(jù)的恢復重建。

  3,啟動SQL節(jié)點

  有了 ndbcluster 語句,啟動 mysql 服務,就啟動了SQL節(jié)點。應在前2種節(jié)點啟動后,分別在2臺服務器上進行。

  六、群集管理

  在所有的數(shù)據(jù)節(jié)點和SQL節(jié)點未啟動之前,運行群集管理節(jié)點服務的客戶端 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>

  說明數(shù)據(jù)節(jié)點、SQL節(jié)點均未連接到管理節(jié)點服務。

  在所有的數(shù)據(jù)節(jié)點和SQL節(jié)點正確啟動之后,將獲得以下信息:

  代碼如下:

  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 環(huán)境下執(zhí)行 shutdown 命令。

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

  關閉SQL節(jié)點的 mysqld 服務:

   代碼如下:

  C:\>net stop mysql,或:

  C:\>mysqladmin -u root shutdown

  七、測試

分享:防止服務器宕機時MySQL數(shù)據(jù)丟失的幾種方案
這篇文章主要介紹了防止服務器宕機時MySQL數(shù)據(jù)丟失的幾種方案,結(jié)合實踐介紹了Replication和Monitor以及Failover這三個項目的應用,需要的朋友可以參考下 對于多數(shù)應用來說,MySQL都是作為最關鍵的數(shù)據(jù)存儲中心的,所以,如何讓MySQL提供HA服務,是我們不得不面對的一個

共3頁上一頁123下一頁
來源:模板無憂//所屬分類:MySQL教程/更新時間:2015-06-22
相關MySQL教程