成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

MySQL數據庫Raid存儲方案

存儲 存儲軟件
作為一名 DBA,選擇自己的數據存儲在什么上面,應該是最基本的事情了。但是很多 DBA 卻容易忽略了這一點,我就是其中一個。之前對 raid 了解的并不多,本文就記錄下學習的 raid 相關知識。

作為一名 DBA,選擇自己的數據存儲在什么上面,應該是最基本的事情了。但是很多 DBA 卻容易忽略了這一點,我就是其中一個。之前對 raid 了解的并不多,本文就記錄下學習的 raid 相關知識。

一、RAID 的基礎知識

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

1、為什么要使用 RAID?

我們知道,單塊磁盤無論是從性能上、容量上、還是安全上都存在單點問題,如果把多塊硬盤組成一個 group,當成一個邏輯驅動器,從而實現同時從多塊硬盤存取數據,那樣可以提高了存儲的吞吐量,同時也提高了存取速度和擴大存儲容量。

[[227745]]

RAID(Redundant Array of Independent Disk 獨立冗余磁盤陣列) 技術就是專門干這事的。RAID 就是一種由多塊廉價磁盤構成的冗余陣列,在操作系統下是作為一個獨立的大型存儲設備出現。RAID 可以充分發揮出多塊硬盤的優勢,可以提升硬盤速度,增大容量, 提供容錯功能夠確保數據安全性,易于管理的優點,在任何一塊硬盤出現問題的情況下都可以繼續工作,不會受到損壞硬盤的影響,這對于數據庫存儲領域是非常必要的。

2、RAID 的幾種工作級別

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

RAID-0

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

RAID-1

RAID-1 采用鏡像(Mirroring)的方式冗余數據。RAID-1 要求至少兩個或 2xN 個磁盤,每次寫數據時會同時寫入鏡像盤。這種陣列可靠性很高,但其有效容量減小到總容量的一半,同時這些磁盤的大小應該相等,否則總容量只具有最小磁盤的大小。RAID-1 的數據安全性在所有的 RAID 級別上來說是最好的。但是其磁盤的利用率卻只有 50%,是所有 RAID 級別中最低的。

RAID-10

由于 RAID-0 和 RAID-1 都存在明顯的優點和缺點,為了結合兩者的優點、避免兩者的缺點,從而產生了 RAID-10,RAID-10 適合用在速度需求高,又要完全容錯,當然成本也很多的應用。不過在做 RAID-10 時需要注意的是先做 RAID-1,再做 RAID-0 還是先做 RAID-0,再做 RAID-1,二者還是有區別的。舉個栗子,假如現在有四塊磁盤:

先做 RAID-0,再做 RAID-1:每兩塊磁盤先做 RAID-0,在此基礎上,再把兩個 RAID-0 做成 RAID-1。這時如果 A 類或者 B 類磁盤同時有一個故障,整個 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:每兩塊磁盤先做 RAID-1,在此基礎上,再把兩個 RAID-1 做成 RAID-0。這時只有 A 類或者 B 類磁盤兩個都故障時,整個 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. ​ 

綜合上面來看,先做 RAID-1,再做 RAID-0 相對更安全,建議這種方式,所以我們平時說的 RAID-10 就是先做 RAID-1,再做 RAID-0。

RAID-5

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

3、RAID 的幾種工作級別優缺點

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

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

 1、判斷 RAID 級別: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. ​ 

網上有人僅僅通過 RAID Level 列中的 Primary-1, Secondary-0, RAID Level Qualifier-0 來判斷,我認為不是很準確。先來了解下 Primary、Secondary、RAID Level Qualifier 啥意思?

Primary 字段:基本上可以確定 RAID 的級別,但是無法區分是 RAID-1 和 RAID-10,因為有情況下他們的 Primary 值都是 Primary-1, Secondary-0, RAID Level Qualifier-0

在這種情況下如何區分 RAID-1 和 RAID-10?我認為還得結合另外兩列進行判斷:

Number Of Drives per span   : 2    #每個區段有2塊磁盤

Span Depth                  : 3    #一共三個區段

結合primary-1,該RAID表示一共六塊磁盤,每兩個做RAID-1,最后將三個RAID-1做RAID-0

【總結:如何判斷 RAID 級別】:

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

2) 至于 RAID-1 和 RAID-10,還需要結合 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 寫入策略和電池狀態

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

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

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

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(回寫)策略,如果電池壞了也強制寫入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. ​ 

  如果是這個,表示采用 WriteThrough 策略

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

復制代碼

2.2)查看電池狀態

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

三、MySQL 適合的 RAID 存儲方案

 通過上面對 RAID 的了解,我們已經知道各級別 RAID 的優缺點,對于 MySQL 數據庫的存儲,如何選擇 RAID 級別呢?

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

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

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

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

 

責任編輯:武曉燕 來源: ITPUB
相關推薦

2019-04-16 15:43:21

CheckSumRAID存儲

2011-03-04 14:59:16

Raidoracle數據庫

2018-11-12 15:15:32

MySQL數據庫命令

2010-06-30 16:48:19

SQL Server數

2011-03-07 16:42:05

MySQL數據庫安全

2018-08-24 13:58:13

數據庫MySQL備份

2019-06-20 15:25:14

MySQLL數據庫存儲

2019-08-27 15:00:09

MySQL數據庫存儲

2011-03-09 08:53:02

MySQL優化集群

2010-04-16 13:34:00

Oracle Java

2011-08-29 16:27:16

MySQL時間類型

2011-07-06 10:49:50

MySQL優化

2010-05-11 13:50:56

MySQL數據庫

2010-05-14 11:04:17

連接MySQL

2011-07-06 14:12:20

MySQLPercona

2010-10-14 13:18:55

MySQL存儲過程

2011-08-01 23:08:33

MySQL存儲引擎

2010-05-27 18:24:09

MySQL數據庫密碼

2010-06-12 13:47:30

連接MySQL 數據庫

2010-06-01 09:22:35

MySQL數據庫
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 久久久久久国产精品三区 | 精品免费在线 | 91精品久久久久久综合五月天 | 精产国产伦理一二三区 | 欧美性久久| 黄色成人亚洲 | 99这里只有精品 | 黄色一级片在线播放 | 免费看a | 免费成人午夜 | 99精品一区二区三区 | 国产农村妇女毛片精品久久麻豆 | 午夜激情影院 | 91精品国产综合久久婷婷香蕉 | 亚洲成人福利在线观看 | 亚洲一区二区久久 | 91在线观看视频 | 欧美aⅴ | 国产精品久久99 | 久久99精品国产 | 久草免费电影 | a级在线| 激情a| 久久国产精品一区 | 欧美日韩福利视频 | 国产精品美女www爽爽爽视频 | 欧美激情视频一区二区三区在线播放 | 欧美中文字幕一区二区三区亚洲 | www.4虎影院 国产999精品久久久影片官网 | 一区二区三区视频在线 | 国产精品黄色 | 国产999精品久久久影片官网 | 国产精品三级 | 日韩在线观看视频一区 | 亚洲精品视 | 成人av网站在线观看 | 亚洲一区电影 | 欧美a在线看 | 亚洲精品一区二三区不卡 | 日韩亚洲一区二区 | 久久精品国产一区二区三区 |