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

云上MySQL的這八個要點,運維要了解一下

數據庫 MySQL
使用云上的 MySQL 時,會遇到很多人詢問 CDB 的 為了更好的了解云上的 MySQL,本文將介紹一些重要的知識點。

 [[435899]]

使用云上的 MySQL 時,會遇到很多人詢問 CDB 的 為了更好的了解云上的 MySQL,本文將介紹一些重要的知識點。

實例類型

目前云數據庫 MySQL 支持三種架構:基礎版、高可用版、單節點高 IO 版。

  •  基礎版是單個節點部署,價格低,性價比非常高,由于是單節點,數據安全性以及可用性不能保證,不建議生產環境使用
  •  高可用版采用一主 N 從的高可用模式,實時熱備,提供宕機自動檢測和故障自動轉移。主從復制方式有三種:異步、半同步、強同步。高可用版默認一主一從異步復制方式,可以通過購買和升級遷移到一主二從強同步模式。
  •  單節點高 IO 版采用單個物理節點部署,性價比高;底層存儲使用本地 NVMe SSD 硬盤,提供強大的 IO 性能。目前應用于只讀實例,幫助業務分攤讀壓力,適用于有讀寫分離需求的各個行業應用。

數據庫實例復制方式

異步復制

應用發起數據更新(含 insert、update、delete 等操作)請求,Master 在執行完更新操作后立即向應用程序返回響應,然后 Master 再向 Slave 復制數據。

數據更新過程中 Master 不需要等待 Slave 的響應,因此異步復制的數據庫實例通常具有較高的性能,且 Slave 不可用并不影響 Master 對外提供服務。但因數據并非實時同步到 Slave,而 Master 在 Slave 有延遲的情況下發生故障則有較小概率會引起數據不一致。

騰訊云數據庫 MySQL 異步復制采用一主一從的架構。

半同步復制

應用發起數據更新(含 insert、update、delete 操作)請求,Master 在執行完更新操作后立即向 Slave 復制數據,Slave 接收到數據并寫到 relay log 中(無需執行) 后才向 Master 返回成功信息,Master 必須在接受到 Slave 的成功信息后再向應用程序返回響應。

僅在數據復制發生異常(Slave 節點不可用或者數據復制所用網絡發生異常)的情況下,Master 會暫停(MySQL 默認 10 秒左右)對應用的響應,將復制方式降為異步復制。當數據復制恢復正常,將恢復為半同步復制。

騰訊云數據庫 MySQL 半同步復制采用一主一從的架構。

強同步復制

應用發起數據更新(含 insert、update、delete 操作)請求,Master 在執行完更新操作后立即向 Slave 復制數據,Slave 接收到數據并執行完 后才向 Master 返回成功信息,Master 必須在接受到 Slave 的成功信息后再向應用程序返回響應。

因 Master 向 Slave 復制數據是同步進行的,Master 每次更新操作都需要同時保證 Slave 也成功執行,因此強同步復制能最大限度的保障主從數據的一致性。但因每次 Master 更新請求都強依賴于 Slave 的返回,因此 Slave 如果僅有單臺,它不可用將會極大影響 Master 上的操作。

騰訊云數據庫 MySQL 強同步復制采用一主兩從的架構,僅需其中一臺 Slave 成功執行即可返回,避免了單臺 Slave 不可用影響 Master 上操作的問題,提高了強同步復制集群的可用性。

高可用實現原理

目前使用最多的就是高可用版本的一主一從架構,正常情況下,客戶通過 VIP:Port 的方式鏈接到主庫上,從庫通過 binlog 和主進行同步。云上 MySQL 在數據庫所在的物理機發生硬件故障時是如何保證高可用呢?

主所在物理機發生故障

  •  正常情況下,客戶端通過 VIP:Port 的方式鏈接到主庫上,從庫通過 binlog 和主進行同步。如下圖中的步驟 1
  •  當主庫所在的宿主機發生異常宕機,此時客戶端的鏈接就會被切換到從庫(客戶端具有斷線重連幾乎不受影響),此時從庫進行讀寫。主庫故障后,云平臺會自動生成一個新的主從高可用實例,將最近一天的冷備導入到新實例對,在和當前的舊的從庫進行 binlog 的同步。如下圖中的步驟 2
  •  binlog 增量同步完成后,舊的從庫會和新的實例對一直進行同步狀態,直至維護時間再次進行主動切換,切換時存在秒級閃斷,業務有重連可以忽略閃斷。此時客戶端直接通過 VIP+Port 的方式連接到新建的實例對。舊實例就會被刪除。詳細的步驟如下圖步驟 3

MySQL 主庫故障切換示意圖

從所在的物理機發生故障

從庫所在的物理機發生故障是,對客戶端來說業務是完全不受影響,在從庫所在物理機異常后,云平臺會自動發起重建從庫的流程,在健康的物理機上新建一個從庫,導入冷備數據后和主庫進行同步,同步完畢后,此時數據庫又恢復了主從高可用狀態。

實例升級

數據庫的升級不僅包含數據庫版本升級,還包括硬件升配,當然硬件的降配具體的原理也是一樣的。

  •  在控制臺發起實例升級的任務后,云平臺會自動創建一個新的實例對,該新實例對的配置是需要調整到的配置。先將最近一次的備份導出到新建實例對內,在和主實例進行 binlog 同步。如下圖步驟 1
  •  主實例和新建實例對同步完成后,用戶可以自行選擇立即切換或在維護期內切換。整個切換過程秒級即可完成,完成后嗎,客戶端連接數據庫請求都會到目標實例對,源實例對則會被自動回收。如下圖步驟 2

從上面的步驟我們可以看到升級實例時,完全不影響數據庫的正常使用。升級主要花費的時間是導入冷備和追 binlog 這兩個步驟,而這兩個環節的所需的時間取決于客戶的數據量大小和產生的 binlog 的大小。一般導入冷備的速度是 50G/h(理論值僅供參考)。

數據庫實例升級示意圖

binlog 介紹

binlog 日志用于記錄所有更改數據的語句,俗稱二進制日志,主要用于復制和即時點恢復。主從復制也是依賴于 binlog 的。類似于 Oracle 的 archivelog,Mongodb的oplog,所有和寫有關或者可能有關的語句,都會記錄在 binlog 文件中。云上的 MySQL 數據庫的 binlog 文件都是每 1G 自動生成一個(新購實例也可能 256M 做一次切割),除非做了 flush logs 的操作。

MySQL 的 binlog 默認保留 5 天,所以如果需要回檔的話,只能恢復到 5 天內的任意時間點。

另外控制臺下載的 binlog 日志,需要在本地解析的話,須確保客戶端的 MySQL 版本與 CDB for MySQL 的版本一致,否則會出現解析出亂碼的情況,建議使用 3.4 或以上版本的 mysqlbinlog。

回檔介紹

回檔是將數據庫通過冷備和 binlog 恢復到之前的某個時間點的一種操作。CDB 的回檔分為普通回檔、快速回檔以及極速回檔:

  • 普通回檔:導入該實例的全量備份,再在對選中的庫、表進行回檔。該回檔模式無限制,但回檔速度較慢。
  •  快速回檔:僅導入所選中庫級別的備份和 binlog,如有跨庫操作,且關聯庫未被同時選中,將會導致回檔失敗。
  •  極速回檔:僅導入所選中表級別的備份和 binlog,如有跨表操作,且關聯表未被同時選中,將會導致回檔失敗。極速模式下,請手動選擇需要回檔的表。如果表已經被刪除,需要客戶自行創建表在進行回檔操作。

慢查詢

慢查詢就是執行數據庫查詢時消耗時間比較大的 SQL 語句。MySQL CPU 利用率過高,大部分原因與低效 SQL 有關系,通過優化低效 SQL 基本可以解決大部分問題。MySQL 慢查詢時間的默認值是 10s,在遇到性能問題時,若發現沒有慢查詢,建議將其參數調成 1s ,再觀察業務周期內的慢查詢,進而對其慢查詢進行優化。

如果出現全表掃描較高的情況,可以打開 log_queries_not_using_indexes 參數,此時未使用索引的全表掃描也可以記錄到慢查詢里面。這個參數并不建議一直打開,會對數據庫的磁盤造成較大影響。

MySQL 空間

用戶使用查詢語句得到的 MySQL 空間和控制臺看到的已使用空間相比有很大出入,為什么?

MySQL 的空洞效應導致,使用過程中的一些碎片沒有得到合理釋放因此查詢語句查出來的空間和控制臺統計的實際已使用空間相比少了許多,這部分是碎片,徹底解決需要在夜深人靜的時候執行 optimize table。 

 

責任編輯:龐桂玉 來源: 運維派
相關推薦

2021-08-12 10:05:06

MySQL數據庫MySQL

2021-07-27 11:31:29

運維架構技術

2021-10-27 10:48:49

架構運維技術

2018-09-17 09:00:00

測試工具網絡分析

2023-07-13 14:44:52

new Date()構造函數開發

2014-02-12 09:39:09

2022-03-14 13:47:06

零信任網絡安全

2018-11-13 12:13:56

運維災備硬盤

2017-03-30 11:20:59

云存儲服務供應商

2021-07-07 17:53:06

教育行業人工智能AI

2016-01-13 10:09:49

自動化運維運維思想

2012-10-18 09:32:06

2016-06-17 10:35:20

云計算運維

2014-06-17 09:51:57

Docker

2014-02-12 09:32:02

2023-04-18 10:20:56

2025-02-17 16:45:40

2022-12-07 12:33:22

云計算

2025-02-13 12:52:27

JavaScrip代碼開發

2022-04-07 11:04:31

RocketMQBrokerConsumer
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 久久久久国产一区二区三区 | 久国产 | 欧美videosex性极品hd | 日本小电影在线 | 天堂一区二区三区 | 国产激情三区 | 日韩成人免费视频 | 久久国产精品一区二区三区 | 男女网站在线观看 | 久久青青 | 精品国产乱码久久久久久88av | 国产亚洲精品精品国产亚洲综合 | 婷婷丁香激情 | 在线观看免费av网 | 欧美日韩黄色一级片 | 亚洲欧美bt| 成人毛片在线视频 | 91久久国产 | 国产超碰人人爽人人做人人爱 | 国产精品成人一区二区 | 国产麻豆乱码精品一区二区三区 | 成人免费小视频 | 久久久久久久久久久久91 | 91久久久久久久久久久久久 | 久草精品视频 | 国产精品毛片 | 精品久久影院 | 青青久久 | 91精品国产综合久久婷婷香蕉 | 国产激情网| 中文字幕国产视频 | 欧美精品在线播放 | 亚洲福利一区 | 国产日韩欧美另类 | 精品一区二区三区不卡 | 国产欧美一区二区三区久久 | 午夜网站视频 | 黄色片网站国产 | 麻豆国产一区二区三区四区 | 午夜天堂精品久久久久 | 欧美精品一区免费 |