[發(fā)明專利]維護(hù)數(shù)據(jù)庫(kù)集群的方法、裝置及計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)有效
| 申請(qǐng)?zhí)枺?/td> | 201810769874.1 | 申請(qǐng)日: | 2018-07-13 |
| 公開(公告)號(hào): | CN108959604B | 公開(公告)日: | 2020-11-10 |
| 發(fā)明(設(shè)計(jì))人: | 羅貴東;張少炳 | 申請(qǐng)(專利權(quán))人: | 浙江彩虹魚科技有限公司 |
| 主分類號(hào): | G06F16/21 | 分類號(hào): | G06F16/21;G06F16/23 |
| 代理公司: | 中國(guó)貿(mào)促會(huì)專利商標(biāo)事務(wù)所有限公司 11038 | 代理人: | 姜雍;方亮 |
| 地址: | 310024 浙*** | 國(guó)省代碼: | 浙江;33 |
| 權(quán)利要求書: | 查看更多 | 說(shuō)明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 維護(hù) 數(shù)據(jù)庫(kù) 集群 方法 裝置 計(jì)算機(jī) 可讀 存儲(chǔ) 介質(zhì) | ||
本公開提供了一種維護(hù)數(shù)據(jù)庫(kù)集群的方法、裝置及計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),涉及數(shù)據(jù)庫(kù)技術(shù)領(lǐng)域。維護(hù)數(shù)據(jù)庫(kù)集群的方法包括:探測(cè)數(shù)據(jù)庫(kù)集群中各個(gè)數(shù)據(jù)庫(kù)的成員狀態(tài);探測(cè)數(shù)據(jù)庫(kù)集群中各個(gè)數(shù)據(jù)庫(kù)的讀寫狀態(tài);將成員狀態(tài)為在線狀態(tài)、讀寫狀態(tài)為只讀狀態(tài)的數(shù)據(jù)庫(kù)關(guān)閉。本公開能夠?qū)⒊蓡T狀態(tài)處于在線狀態(tài)、讀寫狀態(tài)處于只讀狀態(tài)的數(shù)據(jù)庫(kù)從數(shù)據(jù)庫(kù)集群中剔除,從而保證數(shù)據(jù)庫(kù)集群中數(shù)據(jù)的一致性。
技術(shù)領(lǐng)域
本公開涉及數(shù)據(jù)庫(kù)技術(shù)領(lǐng)域,特別涉及一種維護(hù)數(shù)據(jù)庫(kù)集群的方法、裝置及計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)。
背景技術(shù)
MySQL是一種開源的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),存儲(chǔ)引擎是一種用于數(shù)據(jù)高效存儲(chǔ)和檢索的機(jī)制和軟件,數(shù)據(jù)庫(kù)集群是由多個(gè)數(shù)據(jù)庫(kù)實(shí)例組成的數(shù)據(jù)庫(kù)實(shí)例組。
在開源數(shù)據(jù)存儲(chǔ)方案中,MIC(MySQL Innodb Cluster,MySQL Innodb存儲(chǔ)引擎數(shù)據(jù)庫(kù)集群)作為目前MySQL官方支持的高可靠、低延遲數(shù)據(jù)存儲(chǔ)解決方案,其工作原理為使用多個(gè)MySQL數(shù)據(jù)庫(kù)組成一個(gè)數(shù)據(jù)庫(kù)集群,每個(gè)數(shù)據(jù)庫(kù)保存一份相同的數(shù)據(jù)副本,當(dāng)數(shù)據(jù)庫(kù)集群中某個(gè)數(shù)據(jù)庫(kù)發(fā)生故障離線時(shí),由其它的數(shù)據(jù)庫(kù)接替它工作。
由于數(shù)據(jù)不斷更新,為保證同一條件下從數(shù)據(jù)庫(kù)集群中的任何一個(gè)數(shù)據(jù)庫(kù)中得到相同的數(shù)據(jù),持續(xù)保持各數(shù)據(jù)庫(kù)實(shí)例中數(shù)據(jù)副本一致是關(guān)鍵。
發(fā)明內(nèi)容
本公開解決的一個(gè)技術(shù)問(wèn)題是,如何保證數(shù)據(jù)庫(kù)集群中數(shù)據(jù)的一致性。
根據(jù)本公開實(shí)施例的一個(gè)方面,提供了一種維護(hù)數(shù)據(jù)庫(kù)集群的方法,包括:探測(cè)數(shù)據(jù)庫(kù)集群中各個(gè)數(shù)據(jù)庫(kù)的成員狀態(tài);探測(cè)數(shù)據(jù)庫(kù)集群中各個(gè)數(shù)據(jù)庫(kù)的讀寫狀態(tài);將成員狀態(tài)為在線狀態(tài)、讀寫狀態(tài)為只讀狀態(tài)的數(shù)據(jù)庫(kù)關(guān)閉。
在一些實(shí)施例中,探測(cè)數(shù)據(jù)庫(kù)集群中各個(gè)數(shù)據(jù)庫(kù)的成員狀態(tài)包括:利用數(shù)據(jù)庫(kù)集群中各個(gè)MySQL數(shù)據(jù)庫(kù)的IP地址,查詢復(fù)制集群成員表replication_group_members;若查詢結(jié)果為online在線,則確定數(shù)據(jù)庫(kù)集群中相應(yīng)MySQL數(shù)據(jù)庫(kù)的成員狀態(tài)為在線狀態(tài)。
在一些實(shí)施例中,復(fù)制集群成員表位于性能參數(shù)表performance_schema中;性能參數(shù)表為存儲(chǔ)MySQL數(shù)據(jù)庫(kù)狀態(tài)信息的數(shù)據(jù)庫(kù)。
在一些實(shí)施例中,探測(cè)數(shù)據(jù)庫(kù)集群中各個(gè)數(shù)據(jù)庫(kù)的讀寫狀態(tài)包括:查詢性能參數(shù)數(shù)據(jù)庫(kù)performance_schema,確定數(shù)據(jù)庫(kù)集群中各個(gè)MySQL數(shù)據(jù)庫(kù)的讀寫狀態(tài)是否為只讀。
在一些實(shí)施例中,查詢性能參數(shù)數(shù)據(jù)庫(kù)performance_schema,確定數(shù)據(jù)庫(kù)集群中各個(gè)MySQL數(shù)據(jù)庫(kù)的讀寫狀態(tài)是否為只讀包括:查詢性能參數(shù)數(shù)據(jù)庫(kù)中全局變量只讀read_only以及全局變量超級(jí)只讀super_read_only的變量值;若全局變量只讀或全局變量超級(jí)只讀的變量值為開啟on,則確定數(shù)據(jù)庫(kù)集群中相應(yīng)MySQL數(shù)據(jù)庫(kù)的讀寫狀態(tài)為只讀狀態(tài)。
在一些實(shí)施例中,通過(guò)部署在數(shù)據(jù)庫(kù)集群中各個(gè)數(shù)據(jù)庫(kù)所在服務(wù)器上的探測(cè)工具,探測(cè)數(shù)據(jù)庫(kù)集群中各個(gè)數(shù)據(jù)庫(kù)的成員狀態(tài)以及讀寫狀態(tài)。
在一些實(shí)施例中,將成員狀態(tài)為在線狀態(tài)、讀寫狀態(tài)為只讀狀態(tài)的數(shù)據(jù)庫(kù)關(guān)閉包括:關(guān)閉成員狀態(tài)為在線狀態(tài)、讀寫狀態(tài)為只讀狀態(tài)的MySQL數(shù)據(jù)庫(kù)進(jìn)程,以便從MySQLInnodb Cluster存儲(chǔ)引擎數(shù)據(jù)庫(kù)集群中剔除MySQL數(shù)據(jù)庫(kù)。
在一些實(shí)施例中,該方法還包括:將訪問(wèn)關(guān)閉數(shù)據(jù)庫(kù)的外部請(qǐng)求分派至數(shù)據(jù)庫(kù)集群中未關(guān)閉的數(shù)據(jù)庫(kù)上。
根據(jù)本公開實(shí)施例的另一個(gè)方面,提供了一種維護(hù)數(shù)據(jù)庫(kù)集群的裝置,包括:成員狀態(tài)探測(cè)模塊,被配置為探測(cè)數(shù)據(jù)庫(kù)集群中各個(gè)數(shù)據(jù)庫(kù)的成員狀態(tài);讀寫狀態(tài)探測(cè)模塊,被配置為探測(cè)數(shù)據(jù)庫(kù)集群中各個(gè)數(shù)據(jù)庫(kù)的讀寫狀態(tài);數(shù)據(jù)庫(kù)控制模塊,被配置為將成員狀態(tài)為在線狀態(tài)、讀寫狀態(tài)為只讀狀態(tài)的數(shù)據(jù)庫(kù)關(guān)閉。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于浙江彩虹魚科技有限公司,未經(jīng)浙江彩虹魚科技有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810769874.1/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。
- 維護(hù)控制器、維護(hù)方法以及維護(hù)系統(tǒng)
- 維護(hù)輔助系統(tǒng)、維護(hù)輔助裝置及維護(hù)輔助方法
- 維護(hù)液和維護(hù)方法
- 儀器維護(hù)裝置、儀器維護(hù)系統(tǒng)、儀器維護(hù)方法、儀器維護(hù)程序以及記錄介質(zhì)
- 裝置維護(hù)設(shè)備、裝置維護(hù)方法、裝置維護(hù)程序和記錄介質(zhì)
- 電池維護(hù)儀和電池維護(hù)方法
- 設(shè)備維護(hù)系統(tǒng)及維護(hù)方法
- 維護(hù)系統(tǒng)以及維護(hù)方法
- 基站維護(hù)方法和基站維護(hù)裝置
- 維護(hù)支援裝置、作業(yè)機(jī)械、維護(hù)支援系統(tǒng)及維護(hù)支援方法
- 數(shù)據(jù)庫(kù)
- 數(shù)據(jù)庫(kù)管理系統(tǒng)及數(shù)據(jù)庫(kù)
- 數(shù)據(jù)庫(kù)構(gòu)筑裝置、數(shù)據(jù)庫(kù)檢索裝置、數(shù)據(jù)庫(kù)裝置、數(shù)據(jù)庫(kù)構(gòu)筑方法、以及數(shù)據(jù)庫(kù)檢索方法
- 數(shù)據(jù)庫(kù)和數(shù)據(jù)庫(kù)處理方法
- 數(shù)據(jù)庫(kù)系統(tǒng)、數(shù)據(jù)庫(kù)更新方法、數(shù)據(jù)庫(kù)以及數(shù)據(jù)庫(kù)更新程序
- 容器數(shù)據(jù)庫(kù)
- 數(shù)據(jù)庫(kù)同步方法及數(shù)據(jù)庫(kù)
- 一種MongoDB數(shù)據(jù)庫(kù)對(duì)象復(fù)制延遲監(jiān)控方法和裝置
- 數(shù)據(jù)分布式存儲(chǔ)方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì)
- 數(shù)據(jù)庫(kù)語(yǔ)句執(zhí)行方法及裝置
- 一種集群調(diào)度呼叫業(yè)務(wù)中主叫終端信息顯示方法
- 更新網(wǎng)絡(luò)流量管理設(shè)備同時(shí)維持有效性
- 與集群調(diào)度系統(tǒng)進(jìn)行通信的方法、群集接入網(wǎng)關(guān)及系統(tǒng)
- 一種管理集群通信系統(tǒng)資源的方法
- 基于Kubernetes和OpenStack容器云平臺(tái)多集群構(gòu)建方法、介質(zhì)、設(shè)備
- 一種容災(zāi)系統(tǒng)、容災(zāi)處理方法、監(jiān)控節(jié)點(diǎn)和備份集群
- 一種ETCD集群恢復(fù)方法、系統(tǒng)、設(shè)備及計(jì)算機(jī)介質(zhì)
- 混合云場(chǎng)景下保證可用集群數(shù)量的方法、裝置及系統(tǒng)
- 一種集群拓?fù)涓路椒ā⑾到y(tǒng)、設(shè)備及計(jì)算機(jī)存儲(chǔ)介質(zhì)
- 集群切換方法、集群切換裝置、電子設(shè)備及可讀存儲(chǔ)介質(zhì)
- 一種數(shù)據(jù)庫(kù)讀寫分離的方法和裝置
- 一種手機(jī)動(dòng)漫人物及背景創(chuàng)作方法
- 一種通訊綜合測(cè)試終端的測(cè)試方法
- 一種服裝用人體測(cè)量基準(zhǔn)點(diǎn)的獲取方法
- 系統(tǒng)升級(jí)方法及裝置
- 用于虛擬和接口方法調(diào)用的裝置和方法
- 線程狀態(tài)監(jiān)控方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 一種JAVA智能卡及其虛擬機(jī)組件優(yōu)化方法
- 檢測(cè)程序中方法耗時(shí)的方法、裝置及存儲(chǔ)介質(zhì)
- 函數(shù)的執(zhí)行方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)





