自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

MySQL數(shù)據(jù)庫(kù)Raid存儲(chǔ)方案

存儲(chǔ) 存儲(chǔ)軟件
作為一名 DBA,選擇自己的數(shù)據(jù)存儲(chǔ)在什么上面,應(yīng)該是最基本的事情了。但是很多 DBA 卻容易忽略了這一點(diǎn),我就是其中一個(gè)。之前對(duì) raid 了解的并不多,本文就記錄下學(xué)習(xí)的 raid 相關(guān)知識(shí)。

作為一名 DBA,選擇自己的數(shù)據(jù)存儲(chǔ)在什么上面,應(yīng)該是最基本的事情了。但是很多 DBA 卻容易忽略了這一點(diǎn),我就是其中一個(gè)。之前對(duì) raid 了解的并不多,本文就記錄下學(xué)習(xí)的 raid 相關(guān)知識(shí)。

一、RAID 的基礎(chǔ)知識(shí)

【定義】RAID(Redundant Array of Independent Disk) 是一種獨(dú)立冗余磁盤陣列。

1、為什么要使用 RAID?

我們知道,單塊磁盤無(wú)論是從性能上、容量上、還是安全上都存在單點(diǎn)問(wèn)題,如果把多塊硬盤組成一個(gè) group,當(dāng)成一個(gè)邏輯驅(qū)動(dòng)器,從而實(shí)現(xiàn)同時(shí)從多塊硬盤存取數(shù)據(jù),那樣可以提高了存儲(chǔ)的吞吐量,同時(shí)也提高了存取速度和擴(kuò)大存儲(chǔ)容量。

[[227745]]

RAID(Redundant Array of Independent Disk 獨(dú)立冗余磁盤陣列) 技術(shù)就是專門干這事的。RAID 就是一種由多塊廉價(jià)磁盤構(gòu)成的冗余陣列,在操作系統(tǒng)下是作為一個(gè)獨(dú)立的大型存儲(chǔ)設(shè)備出現(xiàn)。RAID 可以充分發(fā)揮出多塊硬盤的優(yōu)勢(shì),可以提升硬盤速度,增大容量, 提供容錯(cuò)功能夠確保數(shù)據(jù)安全性,易于管理的優(yōu)點(diǎn),在任何一塊硬盤出現(xiàn)問(wèn)題的情況下都可以繼續(xù)工作,不會(huì)受到損壞硬盤的影響,這對(duì)于數(shù)據(jù)庫(kù)存儲(chǔ)領(lǐng)域是非常必要的。

2、RAID 的幾種工作級(jí)別

我們比較常用的 RAID 級(jí)別有 RAID-0、RAID-1、RAID-10/RAID-01、RAID-5,其他的如 RAID-3、RAID-4、RAID-6 就不在此介紹了。

RAID-0

RAID-0 采用數(shù)據(jù)分條技術(shù)(Striped)把多塊磁盤串聯(lián)成一個(gè)更為龐大的磁盤組,可以提高磁盤的性能和吞吐量。它讀寫數(shù)據(jù)的速度是最快的,要求比較低,要求兩個(gè)磁盤即可做 RAID-0,相對(duì)成本是最低的,但是 RAID-0 不提供冗余或奇偶校驗(yàn)數(shù)據(jù)的功能,如果驅(qū)動(dòng)器出現(xiàn)故障,數(shù)據(jù)將無(wú)法恢復(fù),安全性最弱。一般只是在那些對(duì)性能要求高、數(shù)據(jù)安全性要求不高的情況下才被使用,不適合數(shù)據(jù)庫(kù)的存儲(chǔ)。

RAID-1

RAID-1 采用鏡像(Mirroring)的方式冗余數(shù)據(jù)。RAID-1 要求至少兩個(gè)或 2xN 個(gè)磁盤,每次寫數(shù)據(jù)時(shí)會(huì)同時(shí)寫入鏡像盤。這種陣列可靠性很高,但其有效容量減小到總?cè)萘康囊话耄瑫r(shí)這些磁盤的大小應(yīng)該相等,否則總?cè)萘恐痪哂凶钚〈疟P的大小。RAID-1 的數(shù)據(jù)安全性在所有的 RAID 級(jí)別上來(lái)說(shuō)是最好的。但是其磁盤的利用率卻只有 50%,是所有 RAID 級(jí)別中最低的。

RAID-10

由于 RAID-0 和 RAID-1 都存在明顯的優(yōu)點(diǎn)和缺點(diǎn),為了結(jié)合兩者的優(yōu)點(diǎn)、避免兩者的缺點(diǎn),從而產(chǎn)生了 RAID-10,RAID-10 適合用在速度需求高,又要完全容錯(cuò),當(dāng)然成本也很多的應(yīng)用。不過(guò)在做 RAID-10 時(shí)需要注意的是先做 RAID-1,再做 RAID-0 還是先做 RAID-0,再做 RAID-1,二者還是有區(qū)別的。舉個(gè)栗子,假如現(xiàn)在有四塊磁盤:

先做 RAID-0,再做 RAID-1:每?jī)蓧K磁盤先做 RAID-0,在此基礎(chǔ)上,再把兩個(gè) RAID-0 做成 RAID-1。這時(shí)如果 A 類或者 B 類磁盤同時(shí)有一個(gè)故障,整個(gè) RAID 將不可用。

  1. (RAID 0) A = (Drive A1 + Drive A2) (Striped) 
  2. (RAID 0) B = (Drive B1 + Drive B2) (Striped) 
  3. (RAID-1)AB = (A +  B) (Mirrored) 

先做 RAID-1,再做 RAID-0:每?jī)蓧K磁盤先做 RAID-1,在此基礎(chǔ)上,再把兩個(gè) RAID-1 做成 RAID-0。這時(shí)只有 A 類或者 B 類磁盤兩個(gè)都故障時(shí),整個(gè) RAID 才不可用。

  1. (RAID-1) A = (Drive A1 + Drive A2) (Mirrored) 
  2. (RAID-1) B = (Drive B1 + Drive B2) (Mirrored) 
  3. (RAID-0)AB = (A +  B) (Striped) 
  4. ​ 

綜合上面來(lái)看,先做 RAID-1,再做 RAID-0 相對(duì)更安全,建議這種方式,所以我們平時(shí)說(shuō)的 RAID-10 就是先做 RAID-1,再做 RAID-0。

RAID-5

RAID-5 應(yīng)該處于 RAID-0 和 RAID-1 之間的一種工作模式,它盡量平衡 RAID-0 和 RAID-1 的優(yōu)點(diǎn)和缺點(diǎn),是我們平時(shí)使用比較多的一種模式。做 RAID-5 至少需要三塊磁盤,它采用校驗(yàn)碼冗余數(shù)據(jù),校驗(yàn)信息分布在多個(gè)磁盤上,當(dāng)數(shù)據(jù)每次寫入到磁盤上,同時(shí)還需要寫入校驗(yàn)信息,因此寫入性能相對(duì)不如 RAID-0。當(dāng)某個(gè)磁盤出現(xiàn)故障,可以使用其他磁盤上校驗(yàn)信息來(lái)恢復(fù)數(shù)據(jù)。相對(duì) RAID-1,它磁盤空間利用率為 (N-1)/N

3、RAID 的幾種工作級(jí)別優(yōu)缺點(diǎn)

【注】以上的高、中、低只是相對(duì)于 RAID-0、RAID-1、RAID-10、RAID-5 而言。

二、如何判斷 RAID 級(jí)別、寫入策略、電池狀況

 1、判斷 RAID 級(jí)別:MegaCli64 工具輸入磁盤信息如下:

  1. [root()@xxxx ~]# MegaCli64 -LdInfo -lAll -aALL 
  2. Adapter 0 -- Virtual Drive Information: 
  3. Virtual Drive: 0 (Target Id: 0) 
  4. Name                : 
  5. RAID Level          : Primary-1, Secondary-0, RAID Level Qualifier-0 
  6. Size                : 278.875 GB 
  7. Is VD emulated      : No 
  8. Mirror Data         : 278.875 GB 
  9. State               : Optimal 
  10. Strip Size          : 64 KB 
  11. Number Of Drives    : 2 
  12. Span Depth          : 1 
  13. Default Cache Policy: WriteBack, ReadAhead, Direct, No Write Cache if Bad BBU 
  14. Current Cache Policy: WriteBack, ReadAhead, Direct, No Write Cache if Bad BBU 
  15. Default Access Policy: Read/Write 
  16. Current Access Policy: Read/Write 
  17. Disk Cache Policy   : Disabled 
  18. Encryption Type     : None 
  19. Default Power Savings Policy: Controller Defined 
  20. Current Power Savings Policy: None 
  21. Can spin up in 1 minute: Yes 
  22. LD has drives that support T10 power conditions: Yes 
  23. LD's IO profile supports MAX power savings with cached writes: No 
  24. Bad Blocks Exist: No 
  25. PI type: No PI 
  26. Is VD Cached: No 
  27. Virtual Drive: 1 (Target Id: 1) 
  28. Name                : 
  29. RAID Level          : Primary-1, Secondary-0, RAID Level Qualifier-0 
  30. Size                : 2.180 TB 
  31. Is VD emulated      : Yes 
  32. Mirror Data         : 2.180 TB 
  33. State               : Optimal 
  34. Strip Size          : 64 KB 
  35. Number Of Drives per span   : 2 
  36. Span Depth          : 3 
  37. Default Cache Policy: WriteBack, ReadAhead, Direct, No Write Cache if Bad BBU 
  38. Current Cache Policy: WriteBack, ReadAhead, Direct, No Write Cache if Bad BBU 
  39. Default Access Policy: Read/Write 
  40. Current Access Policy: Read/Write 
  41. Disk Cache Policy   : Disabled 
  42. Encryption Type     : None 
  43. Default Power Savings Policy: Controller Defined 
  44. Current Power Savings Policy: None 
  45. Can spin up in 1 minuteNo 
  46. LD has drives that support T10 power conditions: No 
  47. LD's IO profile supports MAX power savings with cached writes: No 
  48. Bad Blocks Exist: No 
  49. PI type: No PI 
  50. Is VD Cached: No 
  51. ​ 

網(wǎng)上有人僅僅通過(guò) RAID Level 列中的 Primary-1, Secondary-0, RAID Level Qualifier-0 來(lái)判斷,我認(rèn)為不是很準(zhǔn)確。先來(lái)了解下 Primary、Secondary、RAID Level Qualifier 啥意思?

Primary 字段:基本上可以確定 RAID 的級(jí)別,但是無(wú)法區(qū)分是 RAID-1 和 RAID-10,因?yàn)橛星闆r下他們的 Primary 值都是 Primary-1, Secondary-0, RAID Level Qualifier-0

在這種情況下如何區(qū)分 RAID-1 和 RAID-10?我認(rèn)為還得結(jié)合另外兩列進(jìn)行判斷:

Number Of Drives per span   : 2    #每個(gè)區(qū)段有2塊磁盤

Span Depth                  : 3    #一共三個(gè)區(qū)段

結(jié)合primary-1,該RAID表示一共六塊磁盤,每?jī)蓚€(gè)做RAID-1,最后將三個(gè)RAID-1做RAID-0

【總結(jié):如何判斷 RAID 級(jí)別】:

1)  除了 RAID-1 和 RAID-10,其他級(jí)別通過(guò) Primary 字段值就可以判斷;

2) 至于 RAID-1 和 RAID-10,還需要結(jié)合 Number Of Drives (per span)、Span Depth 兩列的值,如果 Span Depth 值為 1 表示為 RAID-1,不為 1 表示 RAID-10; 還有一種情況:Primary-1, Secondary-3, RAID Level Qualifier-0 也是表示 RAID-10;

2、判斷 RAID 寫入策略和電池狀態(tài)

RAID 的寫入策略對(duì) IO 性能有很大影響,有兩種寫入策略:

WriteBack:表示寫入到磁盤緩存上,寫入性能好,如果采用此策略,RAID必須支持電池可用,否則一旦斷點(diǎn),數(shù)據(jù)將丟失。

WriteThrough:表示直接寫入到硬盤上,寫入性能沒(méi)有WriteBack好,一般沒(méi)有電池時(shí)采用此策略.

2.1)查看 RAID 的寫入策略

  1. [root()@xxxx ~]# MegaCli64 -LDInfo -Lall -aALL|grep 'Cache Policy' 
  2. ********************************************************************************** 
  3. Default Cache Policy: WriteBack, ReadAdaptive, Direct, Write Cache OK if Bad BBU 
  4. Current Cache Policy: WriteBack, ReadAdaptive, Direct, Write Cache OK if Bad BBU 
  5. 以上表示采用WriteBack(回寫)策略,如果電池壞了也強(qiáng)制寫入cache 
  6.  Default Cache Policy: WriteThrough, ReadAheadNone, Direct, No Write Cache if Bad BBU 
  7.  Current Cache Policy: WriteThrough, ReadAheadNone, Direct, No Write Cache if Bad BBU 
  8. ​ 

  如果是這個(gè),表示采用 WriteThrough 策略

Disk Cache Policy   : Disabled     #表示硬盤的cache,一般這里禁用,防止丟失數(shù)據(jù)

復(fù)制代碼

2.2)查看電池狀態(tài)

  1. [root()@xxxx ~]# MegaCli64 -adpbbucmd -aall |grep -E  'Battery State|Charger Status|isSOHGood|Relative State of Charge'                         
  2. Battery State     : Operational  #電池狀態(tài),operational表示正在運(yùn)行 
  3. Relative State of Charge: 98 %   #電池電量,如果低于15%,那么寫入策略會(huì)由WB轉(zhuǎn)變?yōu)閃C,IO性能下降,需要關(guān)注 
  4. Charger Status: Complete         #充電情況,表示已完成 
  5. isSOHGood: Yes                   #不是Yes需要關(guān)注 
  6. ​ 

三、MySQL 適合的 RAID 存儲(chǔ)方案

 通過(guò)上面對(duì) RAID 的了解,我們已經(jīng)知道各級(jí)別 RAID 的優(yōu)缺點(diǎn),對(duì)于 MySQL 數(shù)據(jù)庫(kù)的存儲(chǔ),如何選擇 RAID 級(jí)別呢?

 我們可以根據(jù) MySQL 各種文件類型分別選擇,MySQL 數(shù)據(jù)庫(kù)重要的文件類型有:

1、數(shù)據(jù)文件(frm,ibd):存儲(chǔ)核心的數(shù)據(jù),非常重要,安全性要求高,同時(shí)需要頻繁的寫入、更新數(shù)據(jù),磁盤性能要求也比較高,首先建議物理磁盤是SSD,對(duì)于RAID的選擇,如果預(yù)算足夠,建議RAID-10,其次是RAID-5

2、二進(jìn)制日志文件:寫入非常頻繁,寫性能要求高,由于從庫(kù)依賴該文件,安全性也很重要,綜合成本考慮,可以用兩塊SATA硬盤,做成RAID-1即可。

3、redo文件,共享表空間文件:安全性要求高,如果預(yù)算足夠,RAID-10,通常RAID-1也是可以的,一般而言,redo文件和共享表空間和數(shù)據(jù)文件存儲(chǔ)在一起即可。

 

責(zé)任編輯:武曉燕 來(lái)源: ITPUB
相關(guān)推薦

2019-04-16 15:43:21

CheckSumRAID存儲(chǔ)

2011-03-04 14:59:16

Raidoracle數(shù)據(jù)庫(kù)

2018-11-12 15:15:32

MySQL數(shù)據(jù)庫(kù)命令

2010-06-30 16:48:19

SQL Server數(shù)

2011-03-07 16:42:05

MySQL數(shù)據(jù)庫(kù)安全

2019-06-20 15:25:14

MySQLL數(shù)據(jù)庫(kù)存儲(chǔ)

2018-08-24 13:58:13

數(shù)據(jù)庫(kù)MySQL備份

2011-03-09 08:53:02

MySQL優(yōu)化集群

2019-08-27 15:00:09

MySQL數(shù)據(jù)庫(kù)存儲(chǔ)

2011-08-29 16:27:16

MySQL時(shí)間類型

2010-04-16 13:34:00

Oracle Java

2011-07-06 10:49:50

MySQL優(yōu)化

2010-10-14 13:18:55

MySQL存儲(chǔ)過(guò)程

2010-05-11 13:50:56

MySQL數(shù)據(jù)庫(kù)

2010-05-14 11:04:17

連接MySQL

2011-07-06 14:12:20

MySQLPercona

2011-08-01 23:08:33

MySQL存儲(chǔ)引擎

2010-05-27 18:24:09

MySQL數(shù)據(jù)庫(kù)密碼

2010-06-12 13:47:30

連接MySQL 數(shù)據(jù)庫(kù)

2010-05-20 18:12:37

MySQL數(shù)據(jù)庫(kù)查詢
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)