[發明專利]基于共享存儲的MySQL數據庫高可用系統及其高可用方法有效
| 申請號: | 202010015995.4 | 申請日: | 2020-01-08 |
| 公開(公告)號: | CN110825763B | 公開(公告)日: | 2020-05-19 |
| 發明(設計)人: | 黃炎;李恒 | 申請(專利權)人: | 上海愛可生信息技術股份有限公司 |
| 主分類號: | G06F16/23 | 分類號: | G06F16/23;G06F16/27;G06F11/14 |
| 代理公司: | 上海思捷知識產權代理有限公司 31295 | 代理人: | 王宏婧 |
| 地址: | 201203 上海市浦東新區中國(上海)自由貿*** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 共享 存儲 mysql 數據庫 可用 系統 及其 方法 | ||
1.一種基于共享存儲的MySQL數據庫高可用系統,其特征在于,包括:主數據庫、從數據庫、數據庫運維中心和共享存儲服務器,其中,
所述主數據庫和所述從數據庫在所述數據庫運維中心的控制下,直接復制數據;
所述共享存儲服務器只用于保存binlog文件,其中設有與所述主數據庫和所述從數據庫一一對應的分區,所述分區用于存儲相應數據庫的binlog文件;在切換主、從數據庫時,所述從數據庫接受所述數據庫運維中推送的所述主數據庫的binlog文件并執行,生成的從數據庫binlog文件寫入與所述從數據庫相對應的分區中。
2.如權利要求1所述的基于共享存儲的MySQL數據庫高可用系統,其特征在于,一主一從的數據庫系統進行主從切換時,將主數據庫的binlog文件推送給從數據庫,所述從數據庫根據所述主數據庫的binlog文件補齊本地數據,并升級為新的主數據庫。
3.如權利要求1所述的基于共享存儲的MySQL數據庫高可用系統,其特征在于,一主多從的數據庫系統進行主從切換時,將主數據庫的binlog文件推送給一從數據庫,所述從數據庫根據所述主數據庫的binlog文件補齊本地文件,并升級為新的主數據庫;其余從數據庫在所述數據庫運維中心的控制下,直接復制所述新的主數據庫中的數據。
4.一種基于如權利要求1-3任一項所述的高可用系統的高可用方法,其特征在于,所述數據庫系統正常運行時,包括如下步驟:
所述主數據庫與所述從數據庫分別將自己的binlog文件存儲在所述共享存儲服務器的相應分區中;
在所述主數據庫和所述從數據庫之間直接復制數據。
5.如權利要求4所述的高可用方法,其特征在于,所述主、從數據庫之間的復制方法包括同步復制/半同步復制/異步復制。
6.一種基于如權利要求2所述的高可用系統的fence方法,其特征在于,在主從切換過程中,結合數據庫心跳和一fence狀態字調整切換的流程,包括如下步驟:
A1、在所述主、從數據庫中分別設置一個fence狀態字,并初始化為不可fence對方;
A2、當所述高可用系統正常運行后,所述的fence狀態字均更新為可fence對方;
A3、當所述主數據庫檢測到所述從數據庫的心跳異常且狀態無法確定時,若所述主數據庫的fence狀態字為可fence對方,則對所述從數據庫進行fence操作,然后所述主數據庫的fence狀態字自動更新為不可fence對方;
A4、當所述從數據庫檢測到所述主數據庫的心跳異常且狀態無法確定時,若所述從數據庫的fence狀態字為可fence對方,則對所述主數據庫進行fence操作,當所述從數據庫提升為新的主數據庫后,將所述新的主數據庫的fence狀態字更新為不可fence對方。
7.如權利要求6所述的fence方法,其特征在于,被fence的數據庫將自身的fence狀態持久化在磁盤中,使其不因重啟而改變。
8.如權利要求7所述的fence方法,其特征在于,在步驟A3或A4之后,當心跳恢復正常后,所述被fence的數據庫退出持久化狀態,同時,對端數據庫中的fence狀態字再次更新為可fence對方。
9.如權利要求6所述的fence方法,其特征在于,同時還疊加對小型計算機系統接口SCSI操作的保留權的搶奪,包括如下步驟:
B1、主、從數據庫分別以標識自身的標識key M和key S注冊對方的分區;
B2、主、從數據庫分別檢查各自分區中是否有對方的key S或key M;
B3、若B2的檢查結果為否,則搶奪對方分區的保留權PR,進而讀取對方的binlog文件,實現主從切換;
B4、若B2的檢查結果為是,則進一步檢查本分區中的保留權PR顯示的標識是否已不是自身的標識;
B5、若B4的檢查結果為是,則說明已經發生了競態,進一步判斷,
若連續14次維持B4的檢查結果為否,則睡眠隨機時間后執行B1;
若連續14次維持B4的檢查結果為是,則執行B6;
B6、若B4的檢查結果為否,則說明本數據庫已進入被fence狀態。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于上海愛可生信息技術股份有限公司,未經上海愛可生信息技術股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010015995.4/1.html,轉載請聲明來源鉆瓜專利網。





