版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
數(shù)據(jù)庫運(yùn)維與管理項(xiàng)目10數(shù)據(jù)庫自動(dòng)化運(yùn)維教學(xué)目標(biāo)知識(shí)目標(biāo)掌握數(shù)據(jù)庫運(yùn)維的發(fā)展趨勢(shì)了解數(shù)據(jù)庫自動(dòng)化運(yùn)維了解數(shù)據(jù)庫智能運(yùn)維了解常用開源數(shù)據(jù)庫運(yùn)維平臺(tái)了解商用數(shù)據(jù)庫運(yùn)維平臺(tái)能力目標(biāo)能使用goInception開源運(yùn)維平臺(tái)完成簡單運(yùn)維能實(shí)現(xiàn)簡單自動(dòng)化運(yùn)維平臺(tái)的構(gòu)建能使用第三方商用數(shù)據(jù)庫運(yùn)維平臺(tái)完成運(yùn)維工作素養(yǎng)目標(biāo)培養(yǎng)自主學(xué)習(xí)能力提高解決問題能力提高角色轉(zhuǎn)換能力思政目標(biāo)民族自豪感國產(chǎn)軟件振興的使命擔(dān)當(dāng)項(xiàng)目知識(shí)導(dǎo)入項(xiàng)目場(chǎng)景:隨著業(yè)務(wù)的不斷發(fā)展,天天電器商場(chǎng)向綜合商場(chǎng)成功轉(zhuǎn)型,其涉及電器、服飾、餐飲等眾多領(lǐng)域,業(yè)務(wù)規(guī)模和訪問量呈“爆發(fā)式”增長,服務(wù)器數(shù)量和數(shù)據(jù)庫實(shí)例的數(shù)據(jù)量成倍增加。各種業(yè)務(wù)需求(如快速交付實(shí)例、慢查詢優(yōu)化及備份恢復(fù)管理等)都對(duì)數(shù)據(jù)庫管理員的日常運(yùn)維提出了更高的要求。另外,隨著新的業(yè)務(wù)系統(tǒng)中不斷出現(xiàn)的非關(guān)系型數(shù)據(jù)庫存儲(chǔ),原來通過執(zhí)行命令管理數(shù)據(jù)庫的操作方式早已捉襟見肘。天天電器商場(chǎng)急需有效地提升部署和管理數(shù)據(jù)庫實(shí)例的效率,讓數(shù)據(jù)庫管理員以最快的速度響應(yīng)并處理報(bào)警信息,為此信息部門決定采取自動(dòng)化運(yùn)維措施。項(xiàng)目知識(shí)導(dǎo)入一、數(shù)據(jù)庫運(yùn)維的演進(jìn)1.早期的“人工”運(yùn)維
人工運(yùn)維,數(shù)據(jù)庫的部署、監(jiān)控、SQL上線以及故障處理等操作均由人工完成,即數(shù)據(jù)庫管理員利用各種命令完成數(shù)據(jù)庫的整體支撐和運(yùn)維工作。項(xiàng)目知識(shí)導(dǎo)入2.“工具”運(yùn)維
隨著數(shù)據(jù)庫規(guī)模日益龐大,普通的人工運(yùn)維已不足以支撐起整體數(shù)據(jù)庫運(yùn)維工作,數(shù)據(jù)庫運(yùn)維向“工具時(shí)代”邁進(jìn),數(shù)據(jù)庫運(yùn)維專家開始嘗試將使用頻次高的流程性腳本結(jié)合自身經(jīng)驗(yàn)包裝成常用運(yùn)維工具,這些工具在一定程度上弱化了數(shù)據(jù)庫管理員在數(shù)據(jù)庫運(yùn)維中的角色作用,但工具并沒有很好地形成統(tǒng)一、有序的部署頁面,自動(dòng)化程度依然比較低。項(xiàng)目知識(shí)導(dǎo)入3.
“產(chǎn)品”運(yùn)維
隨著數(shù)據(jù)庫自動(dòng)化運(yùn)維需求愈加迫切,數(shù)據(jù)庫運(yùn)維平臺(tái)產(chǎn)品由此出現(xiàn)(一般稱這個(gè)時(shí)代為數(shù)據(jù)庫運(yùn)維的“產(chǎn)品時(shí)代”)。這是數(shù)據(jù)庫運(yùn)維的高級(jí)自動(dòng)化時(shí)期。此時(shí),數(shù)據(jù)庫運(yùn)維平臺(tái)已經(jīng)具備了基礎(chǔ)管控及分析、診斷的能力。數(shù)據(jù)庫運(yùn)維向高效、有序、流程化演進(jìn),大幅減少了運(yùn)維的成本,可以說是成功地將專家經(jīng)驗(yàn)轉(zhuǎn)化為永久生產(chǎn)力。項(xiàng)目知識(shí)導(dǎo)入4.
“智能”運(yùn)維
由于當(dāng)今數(shù)據(jù)庫快速發(fā)展,業(yè)務(wù)越來越復(fù)雜,因此數(shù)據(jù)庫運(yùn)維對(duì)整個(gè)IT架構(gòu)和智能化要求越來越高。早在很多年前,Oracle公司就提出了“自治數(shù)據(jù)庫”的概念,旨在實(shí)現(xiàn)數(shù)據(jù)庫的智能運(yùn)維,為企業(yè)提供更高效、更智能的數(shù)據(jù)庫運(yùn)維服務(wù)。國產(chǎn)數(shù)據(jù)庫方面,阿里云、騰訊云等在云端已有自治數(shù)據(jù)庫領(lǐng)域的相關(guān)研究和服務(wù)探索??梢詫⒆灾螖?shù)據(jù)庫想象成自動(dòng)駕駛,在沒有自動(dòng)駕駛之前,駕駛員要開一輛車從A地到B地,需要先考取駕照,還需要學(xué)習(xí)很多技巧,并且在開車的過程中需要集中精力,否則容易出差錯(cuò)。但是有了自動(dòng)駕駛,就不再需要駕駛員,乘客只需要告訴車輛要從A地到B地,車輛就會(huì)自動(dòng)尋找最佳路線并自動(dòng)行駛,在這個(gè)過程中,乘客完全不需要學(xué)習(xí)任何駕駛技巧。在“智能化的數(shù)據(jù)庫運(yùn)維時(shí)代”,傳統(tǒng)的數(shù)據(jù)庫管理員也不再需要了,數(shù)據(jù)庫管理員已轉(zhuǎn)型成智能運(yùn)維平臺(tái)的構(gòu)建者。數(shù)據(jù)庫的智能運(yùn)維集成了實(shí)用的機(jī)器學(xué)習(xí)算法,最終實(shí)現(xiàn)數(shù)據(jù)庫的自我管理、自動(dòng)感知、自動(dòng)決策、自動(dòng)執(zhí)行、自動(dòng)閉環(huán),無須人為干預(yù),最大限度地提升了資源利用率、安全性和可靠性。項(xiàng)目知識(shí)導(dǎo)入二、數(shù)據(jù)庫自動(dòng)化運(yùn)維
通常,數(shù)據(jù)庫自動(dòng)化運(yùn)維平臺(tái)應(yīng)用于資產(chǎn)管理、管理排障、智能巡檢、診斷優(yōu)化、風(fēng)險(xiǎn)可視五大功能場(chǎng)景,其架構(gòu)如右圖所示。項(xiàng)目知識(shí)導(dǎo)入常見運(yùn)維場(chǎng)景主要訴求如下。
●
數(shù)據(jù)庫資產(chǎn)分布狀況的掌握。
●
數(shù)據(jù)庫當(dāng)前運(yùn)行健康狀態(tài)的感知。
●
大量數(shù)據(jù)庫的日常巡檢。
●
安全監(jiān)管考核要求的資產(chǎn)用戶定期更改密碼。
●
數(shù)據(jù)庫的快速標(biāo)準(zhǔn)部署。
●
數(shù)據(jù)庫性能瓶頸的快速定位和診斷。
●
不同數(shù)據(jù)庫資產(chǎn)數(shù)據(jù)交互訪問連接狀態(tài)的獲取。
●
鎖處理、容量監(jiān)控?cái)U(kuò)容、日志清理等常見運(yùn)維工作的快速處理。數(shù)據(jù)庫自動(dòng)化運(yùn)維實(shí)現(xiàn)了對(duì)數(shù)據(jù)庫運(yùn)行狀態(tài)的實(shí)時(shí)監(jiān)控、對(duì)運(yùn)行風(fēng)險(xiǎn)的提前感知、對(duì)問題的智能定位,利用基礎(chǔ)工具快速解決故障,很大程度上實(shí)現(xiàn)了主動(dòng)運(yùn)維,保障了業(yè)務(wù)運(yùn)行的連續(xù)性和穩(wěn)定性。項(xiàng)目知識(shí)導(dǎo)入三、數(shù)據(jù)庫智能運(yùn)維
在業(yè)務(wù)應(yīng)用層面,數(shù)據(jù)庫背后的關(guān)系和架構(gòu)不那么重要,往往需要更加關(guān)注數(shù)據(jù)的安全和完整性、業(yè)務(wù)的一致性和連續(xù)性、故障發(fā)生時(shí)應(yīng)急與恢復(fù)速度等。傳統(tǒng)意義上的數(shù)據(jù)庫自動(dòng)化運(yùn)維平臺(tái)雖然在廣義上實(shí)現(xiàn)了數(shù)據(jù)庫的集中展示與管理,并通常可以在故障發(fā)生時(shí)進(jìn)行及時(shí)的通知與告警、粗略定位問題發(fā)生點(diǎn),但并不提供故障的未來預(yù)測(cè)及自主決策和執(zhí)行功能。傳統(tǒng)運(yùn)維在故障發(fā)生時(shí)通過第一時(shí)間告警,借助數(shù)據(jù)庫管理員親臨事故現(xiàn)場(chǎng)來解決問題,這是一個(gè)被動(dòng)接受的過程。其實(shí)時(shí)性相對(duì)較差,在問題堆積和內(nèi)部反映消耗的過程中,業(yè)務(wù)受到了一定的影響。傳統(tǒng)運(yùn)維與智能運(yùn)維的比較如圖10-5所示。項(xiàng)目知識(shí)導(dǎo)入
數(shù)據(jù)庫智能運(yùn)維體現(xiàn)在超級(jí)自動(dòng)化(Hyperautomation)、人工智能工程化(AIEngineering)、云融合(CloudIntegration)、多源協(xié)同(PaaS+SaaS)等方面。智能運(yùn)維的核心理念是:讓平臺(tái)能夠自己發(fā)現(xiàn)問題、自己定位問題、自主決策,并智能地解決問題,即所謂自我感知、自我決策、自我執(zhí)行,從而達(dá)到自動(dòng)閉環(huán)的目標(biāo)。項(xiàng)目知識(shí)導(dǎo)入四、開源數(shù)據(jù)庫運(yùn)維平臺(tái)介紹1.Inception作為數(shù)據(jù)庫管理員,審核SQL是日常工作中很重要的一部分內(nèi)容,審核好SQL對(duì)于后期項(xiàng)目以及數(shù)據(jù)庫維護(hù)起著至關(guān)重要的作用。Inception是“去哪兒網(wǎng)”開源的一個(gè)數(shù)據(jù)庫運(yùn)維工具。它是一個(gè)集審核、執(zhí)行、備份及生成回滾語句等功能于一身的MySQL自動(dòng)化運(yùn)維工具。Inception通過對(duì)SQL語句的語法解析,返回基于自定義規(guī)則的審核結(jié)果,并提供執(zhí)行、備份和生成回滾語句的功能,其架構(gòu)如圖10-6所示。項(xiàng)目知識(shí)導(dǎo)入
SQL語句提交到Inception,由于Inception是根據(jù)MySQL代碼修改而來的,因此可以很明確、詳細(xì)、準(zhǔn)確地審核MySQL的SQL語句,它的工作模式與MySQL完全相同,可以直接使用MySQL客戶端來連接,但不需要驗(yàn)證權(quán)限。Inception類似一個(gè)中間性質(zhì)的服務(wù)。Inception調(diào)用示例如下Inception內(nèi)部的操作分為3個(gè)階段,分別是審核階段、執(zhí)行階段和備份階段。項(xiàng)目知識(shí)導(dǎo)入1)審核階段
(1)Inception在收到SQL語句后,先會(huì)解析注釋中的遠(yuǎn)程數(shù)據(jù)庫配置,并建立連接。(2)如果開啟了備份功能,則會(huì)檢查二進(jìn)制日志是否開啟(log_bin=ON)。(3)判斷語法開始位置,必須以inception_magic_start開始。(4)開始逐行解析,并進(jìn)行語法樹解析,失敗時(shí)返回。
(5)解析到“usetest;”時(shí),會(huì)通過showdatabases判斷數(shù)據(jù)庫是否存在。
(6)解析到“createtablet1(idintprimarykey);”時(shí),進(jìn)行建表的校驗(yàn)。(7)解析到“inception_magic_commit;”,判斷所有的審核是否成功,如果有錯(cuò)誤則直接返回,而有警告時(shí)會(huì)判斷是否設(shè)置了忽略警告的參數(shù),以判斷是否進(jìn)行下一步。項(xiàng)目知識(shí)導(dǎo)入2)執(zhí)行階段只有審核階段完成(或有警告但忽略了警告)后,才會(huì)進(jìn)入執(zhí)行階段。
(1)在執(zhí)行階段,DDL語句和DML語句處理方式不同,其中DML通過二進(jìn)制日志解析實(shí)現(xiàn)回滾,而DDL語句根據(jù)語法樹規(guī)則直接生成逆向SQL。
(2)DML:在開始執(zhí)行和執(zhí)行完成時(shí),記錄二進(jìn)制日志位置。
(3)DDL和DML:開始執(zhí)行,在執(zhí)行失敗時(shí)記錄失敗原因并結(jié)束執(zhí)行操作,在執(zhí)行成功時(shí)記錄受影響的行數(shù)。
(4)執(zhí)行中可能需要執(zhí)行KILL命令以終止執(zhí)行。項(xiàng)目知識(shí)導(dǎo)入3)備份階段(1)到達(dá)備份階段有兩種情況,可能執(zhí)行全部成功也可能部分成功,此時(shí)會(huì)進(jìn)行判斷,只備份執(zhí)行成功的語句。
(2)DDL的備份是保存自動(dòng)生成的逆向SQL語句。
(3)DML的備份是根據(jù)執(zhí)行前后記錄的二進(jìn)制日志位置和線程號(hào),以模擬從庫的形式獲取二進(jìn)制日志信息,并做事件解析。
(4)解析二進(jìn)制日志要求二進(jìn)制日志必須為ROW模式,該模式也會(huì)有備份前檢查和自動(dòng)設(shè)置,因此可能需要SUPER權(quán)限。
(5)在解析過二進(jìn)制日志后,會(huì)生成逆向的SQL語句,并異步批量寫入備份庫。
(6)在回滾語句寫入完成后,所有操作執(zhí)行完成,并返回結(jié)果給客戶端。項(xiàng)目知識(shí)導(dǎo)入2.Yearning
Yearning是面向SQL語句的審核開源平臺(tái),提供查詢審計(jì)、SQL審核、SQL回滾、自定義工作流等多種功能,并提供可視化界面。其早期版本以Inception作為SQL審核工具,最新發(fā)布的Yearning版本不依賴任何第三方SQL審核工具,其內(nèi)部已實(shí)現(xiàn)審核/回滾相關(guān)邏輯。Yearning擁有以下功能:
●
自動(dòng)審核SQL語句,可對(duì)SQL語句進(jìn)行自動(dòng)檢測(cè)并執(zhí)行。
●
DDL/DML語句執(zhí)行后自動(dòng)生成回滾語句。
●
審核/查詢、審計(jì)功能。
●支持LDAP(LightweightDirectoryAccessProtocol,輕量目錄訪問協(xié)議)登錄釘釘和郵件消息推送。
●
支持自定義審核工作流。
●
支持細(xì)粒度權(quán)限分配。項(xiàng)目知識(shí)導(dǎo)入五、商用數(shù)據(jù)庫運(yùn)維平臺(tái)功能概覽
面對(duì)日益復(fù)雜的數(shù)據(jù)庫運(yùn)維需求,數(shù)據(jù)庫運(yùn)維人員急需一個(gè)具有豐富功能的數(shù)據(jù)庫運(yùn)維平臺(tái)。數(shù)據(jù)庫運(yùn)維平臺(tái)不僅能夠幫助運(yùn)維人員7×24小時(shí)實(shí)時(shí)監(jiān)控?cái)?shù)據(jù)庫、提前感知隱患、快速定位問題,而且能提供多元化的工具,幫助運(yùn)維人員快速、簡單地完成日常的數(shù)據(jù)庫運(yùn)維工作(如數(shù)據(jù)庫巡檢、故障處理、數(shù)據(jù)庫自動(dòng)化部署等),同時(shí)還能滿足對(duì)數(shù)據(jù)庫運(yùn)行狀況的趨勢(shì)分析和預(yù)測(cè)等需求,幫助運(yùn)維人員從多個(gè)維度保障數(shù)據(jù)庫的正常運(yùn)行,進(jìn)而保證整個(gè)信息化業(yè)務(wù)系統(tǒng)的連續(xù)可用性和數(shù)據(jù)資產(chǎn)的完整性。下面以美創(chuàng)科技的數(shù)據(jù)庫運(yùn)行安全管理平臺(tái)為例來解讀商用數(shù)據(jù)庫運(yùn)維平臺(tái)常用的功能。項(xiàng)目知識(shí)導(dǎo)入1.聚合大屏
數(shù)據(jù)庫運(yùn)維平臺(tái)內(nèi)置多種指標(biāo)項(xiàng),可對(duì)不同的數(shù)據(jù)庫對(duì)象實(shí)現(xiàn)全面、豐富、深度的數(shù)據(jù)庫聚合監(jiān)控。利用聚合監(jiān)控大屏(見圖10-7),運(yùn)維人員可以直觀、清晰地了解到各數(shù)據(jù)庫對(duì)象及其對(duì)應(yīng)的業(yè)務(wù)系統(tǒng)整體運(yùn)行情況,確保業(yè)務(wù)系統(tǒng)的連續(xù)性、穩(wěn)定性、可用性。同時(shí),運(yùn)維人員可以準(zhǔn)確地知道當(dāng)前數(shù)據(jù)庫對(duì)象的健康狀況和性能狀況。單實(shí)例大屏(見圖10-8)從五大健康指數(shù)(可用性、錯(cuò)誤、性能、變化和可靠性)、SQL執(zhí)行生命周期(登錄、解析、執(zhí)行、提交)和關(guān)聯(lián)資源(process、session、jobs等數(shù)據(jù)庫資源,鎖資源,主機(jī)資源)方面監(jiān)控?cái)?shù)據(jù)庫,實(shí)現(xiàn)精準(zhǔn)定位影響數(shù)據(jù)庫健康和導(dǎo)致數(shù)據(jù)庫運(yùn)行緩慢的根本原因,讓運(yùn)維人員做到有的放矢,從而快速地解決在使用數(shù)據(jù)庫過程中遇到的問題。項(xiàng)目知識(shí)導(dǎo)入項(xiàng)目知識(shí)導(dǎo)入項(xiàng)目知識(shí)導(dǎo)入2.巡檢方法
巡檢方法包括保障數(shù)據(jù)庫運(yùn)行的基礎(chǔ)巡檢,例如上下班巡檢和全面巡檢,以滿足客戶在不同的場(chǎng)景對(duì)巡檢方式的不同需求。(1)上下班巡檢
上下班巡檢是指根據(jù)設(shè)定的上班、下班時(shí)間,從可用性、資源就緒、可靠性、變化和作業(yè)等多個(gè)維度,完成主機(jī)和數(shù)據(jù)庫的自動(dòng)巡檢工作(見圖10-9)。上下班巡檢功能提供一份精簡的數(shù)據(jù)庫巡檢報(bào)告(見圖10-10),運(yùn)維人員在上班前、下班后能快速獲取Word或PDF格式的報(bào)告,并通過報(bào)告中的可用性、資源就緒、可靠性、變化和作業(yè)等指標(biāo)值,快速了解數(shù)據(jù)庫的整體運(yùn)行狀況和健康狀態(tài),以判斷主機(jī)及數(shù)據(jù)庫的健康和性能狀態(tài)能否滿足上班前、下班后的業(yè)務(wù)正常運(yùn)行要求。項(xiàng)目知識(shí)導(dǎo)入項(xiàng)目知識(shí)導(dǎo)入項(xiàng)目知識(shí)導(dǎo)入(2)全面巡檢
全面巡檢是指全面、深入分析主機(jī)和數(shù)據(jù)庫運(yùn)行狀態(tài),有效定位系統(tǒng)隱患和資源瓶頸,一鍵操作完成數(shù)據(jù)庫的全面且深入的檢查工作。全面巡檢支持以手動(dòng)和自動(dòng)兩種方式發(fā)起,全面巡檢列表如圖所示。項(xiàng)目知識(shí)導(dǎo)入全面巡檢從庫的可用性、數(shù)據(jù)庫資源、數(shù)據(jù)庫安全、備份、主機(jī)資源、數(shù)據(jù)庫性能、數(shù)據(jù)庫參數(shù)和數(shù)據(jù)庫軟件共8個(gè)維度實(shí)現(xiàn)數(shù)據(jù)庫的巡檢分析工作,保證數(shù)據(jù)庫檢查的全面、深入和準(zhǔn)確性。全面巡檢最終形成的巡檢報(bào)告如圖10-12所示。項(xiàng)目知識(shí)導(dǎo)入(3)巡檢報(bào)告解讀
上下班巡檢工具提供所有數(shù)據(jù)庫對(duì)象異常匯總報(bào)告,直觀展示所有對(duì)象上下班巡檢的異常項(xiàng)匯總,并支持下鉆到單個(gè)數(shù)據(jù)庫對(duì)象巡檢報(bào)告頁,幫助運(yùn)維人員快速地聚焦、定位健康程度較低的數(shù)據(jù)庫,快速響應(yīng)問題或故障,從而保證業(yè)務(wù)的正常運(yùn)轉(zhuǎn),如圖10-13所示。項(xiàng)目知識(shí)導(dǎo)入
全面巡檢工具提供異常統(tǒng)計(jì)頁面,可做到使數(shù)據(jù)庫的異常和告警一目了然,同時(shí)提供在線查看巡檢報(bào)告和導(dǎo)出PDF、Word文檔等格式的巡檢報(bào)告功能。利用巡檢報(bào)告,運(yùn)維人員可以全面、直觀地了解數(shù)據(jù)庫運(yùn)行狀況的異常及相關(guān)性能的好壞,如圖10-14所示。。項(xiàng)目知識(shí)導(dǎo)入(4)性能診斷
性能-數(shù)據(jù)庫資源列表用于展示數(shù)據(jù)庫維度的性能統(tǒng)計(jì)信息,可幫助用戶通過不同指標(biāo)項(xiàng)全面了解數(shù)據(jù)庫的性能,如圖10-15所示。性能診斷是指全面地分析數(shù)據(jù)庫各資源使用情況,并給出數(shù)據(jù)庫性能是否正常的結(jié)論,讓運(yùn)維人員以最快時(shí)間了解到自己關(guān)注的數(shù)據(jù)庫對(duì)象性能是否良好。性能診斷工具支持對(duì)每個(gè)指標(biāo)項(xiàng)以圖表方式直觀查看,同時(shí)支持下鉆查看詳情與歷史功能。例如,當(dāng)數(shù)據(jù)庫會(huì)話發(fā)生阻塞時(shí),用戶可以通過性能診斷工具查看目前數(shù)據(jù)庫鎖的狀況,也可以下鉆查看鎖詳情與歷史數(shù)據(jù),追根溯源,定位問題、解決問題,如圖10-16所示。項(xiàng)目知識(shí)導(dǎo)入圖10-15性能-數(shù)據(jù)庫資源列表項(xiàng)目知識(shí)導(dǎo)入圖10-16性能-數(shù)據(jù)庫資源詳情項(xiàng)目知識(shí)導(dǎo)入(5)容量預(yù)警
在日常使用數(shù)據(jù)庫的過程中,表空間使用量隨著業(yè)務(wù)系統(tǒng)的使用時(shí)間的增加而增大。當(dāng)表空間容量使用殆盡時(shí),將無法正常地寫數(shù)據(jù)到數(shù)據(jù)庫內(nèi),從而造成業(yè)務(wù)系統(tǒng)崩潰。為避免因表空間不足而導(dǎo)致業(yè)務(wù)系統(tǒng)無法正常使用,可通過容量預(yù)警功能讓運(yùn)維人員快速了解當(dāng)前剩余表空間能否支撐未來一段時(shí)間內(nèi)的數(shù)據(jù)增長量,進(jìn)而確保業(yè)務(wù)系統(tǒng)正常使用,如圖10-17所示。容量預(yù)警工具針對(duì)容量部分會(huì)出現(xiàn)的問題提供相應(yīng)的告警與處理方法,例如表空間擴(kuò)容、歸檔日志清理、監(jiān)聽日志清理等,從而方便用戶對(duì)容量信息有整體的了解與把控,并可對(duì)問題及時(shí)定位與處理,實(shí)現(xiàn)數(shù)據(jù)庫高效運(yùn)維。項(xiàng)目知識(shí)導(dǎo)入項(xiàng)目知識(shí)導(dǎo)入(6)SQL審核
SQL審核工具(見圖10-18)可展示選定時(shí)間段內(nèi)的低效SQL,并給出SQL的DBTime消耗值分布趨勢(shì)圖,直觀地展示了這些低效SQL給數(shù)據(jù)庫帶來的性能影響。SQL審核工具會(huì)提供一份專業(yè)的SQL診斷報(bào)告,運(yùn)維人員可根據(jù)診斷報(bào)告提供的優(yōu)化建議完成低效SQL的優(yōu)化工作,確保數(shù)據(jù)庫系統(tǒng)運(yùn)行良好。根據(jù)審核規(guī)則的重要程度不同,SQL審核一般分為嚴(yán)重、告警、提醒三大類,并給出不同的類別評(píng)分,精準(zhǔn)分析SQL中的潛在性能風(fēng)險(xiǎn),使數(shù)據(jù)庫管理員和應(yīng)用開發(fā)人員能夠較早地介入,將性能隱患扼殺于萌芽階段,從而確保線上應(yīng)用的穩(wěn)定、高效運(yùn)行。項(xiàng)目知識(shí)導(dǎo)入項(xiàng)目知識(shí)導(dǎo)入(7)自動(dòng)化部署
隨著信息化的快速發(fā)展,企業(yè)系統(tǒng)數(shù)據(jù)量呈現(xiàn)“滾雪球式”的增長,而用于數(shù)據(jù)存放的數(shù)據(jù)庫數(shù)量也快速增長。隨著數(shù)據(jù)庫數(shù)量的增多,數(shù)據(jù)庫部署工作量也急劇增長,依靠人工單個(gè)、依次部署數(shù)據(jù)庫已經(jīng)很難滿足運(yùn)維需求。因此,運(yùn)維人員急需一款能夠?qū)崿F(xiàn)大批量、自動(dòng)化部署數(shù)據(jù)庫的工具,以減輕運(yùn)維工作量,適應(yīng)高速發(fā)展的“信息化時(shí)代”。通過自動(dòng)化部署工具(見圖10-19),只需完成基本的主機(jī)信息和數(shù)據(jù)庫信息配置,即可實(shí)現(xiàn)一鍵自動(dòng)化批量部署數(shù)據(jù)庫(包括各類集群),這可以極大地減輕運(yùn)維工作量,提升運(yùn)維效率。同時(shí),在自動(dòng)化部署過程中,自動(dòng)化部署工具可以針對(duì)數(shù)據(jù)庫中重要的參數(shù)進(jìn)行優(yōu)化,確保數(shù)據(jù)庫能以更加優(yōu)越的性能運(yùn)行,從而保障業(yè)務(wù)端的良好使用體驗(yàn)。項(xiàng)目知識(shí)導(dǎo)入項(xiàng)目知識(shí)導(dǎo)入(8)智能編排
數(shù)據(jù)庫鎖、文件系統(tǒng)使用率過高等高頻問題處理起來耗時(shí)、耗力,可通過智能編排串起監(jiān)控、告警、容量、性能等重要的功能模塊,實(shí)現(xiàn)發(fā)現(xiàn)問題到問題處理的自動(dòng)化運(yùn)維(見圖10-20)。自動(dòng)化運(yùn)維通過模板來定義執(zhí)行任務(wù)、執(zhí)行順序、執(zhí)行輸入和輸出,然后通過執(zhí)行模板來完成任務(wù),實(shí)現(xiàn)全自動(dòng)化問題處理,同時(shí)降低運(yùn)維成本并提高效率。項(xiàng)目任務(wù)分解任務(wù)2-1:安裝goInception1.任務(wù)說明
goInception采用Go語言對(duì)Inception進(jìn)行了重構(gòu)(Inception項(xiàng)目已閉源),并且目前是開源狀態(tài),與Inception相比,其增加了Archery查詢支持(MySQL、MsSQL、Redis、PostgreSQL)、MySQL優(yōu)化(SQLAdvisor、SOAR、SQLTuning)、慢查詢?nèi)罩竟芾?、表結(jié)構(gòu)對(duì)比、會(huì)話管理、阿里云RDS管理等功能。本任務(wù)要求在Linux系統(tǒng)下安裝goInception,以便在后續(xù)任務(wù)中使用goInception完成對(duì)SQL語句的審核。項(xiàng)目任務(wù)分解2.任務(wù)實(shí)施過程步驟1:下載二進(jìn)制安裝文件下載地址:/hanchuanchuan/goInception/releases。下載好對(duì)應(yīng)版本的goInception,直接解壓即可(解壓完成以后在config/config.toml.default目錄下有一個(gè)默認(rèn)的配置文件)。具體命令如下。項(xiàng)目任務(wù)分解步驟2:修改配置文件config.toml命令如下。在配置文件中修改goInception使用的端口和IP地址,命令如下。項(xiàng)目任務(wù)分解步驟3:啟動(dòng)啟動(dòng)goInception,具體命令如下。項(xiàng)目任務(wù)分解步驟4:查看狀態(tài)啟動(dòng)成功后的goInception相當(dāng)于一個(gè)MySQL代理,不需要用戶名和密碼就可以進(jìn)行連接。命令的執(zhí)行結(jié)果如下。項(xiàng)目任務(wù)分解上述命令中,-h指定IP地址;-P指定在配置文件中配置好的端口。命令執(zhí)行成功后,正常情況下,出現(xiàn)mysql命令提示符則表示啟動(dòng)成功。在mysql命令提示符下,還可以查看goInception進(jìn)程列表,如圖10-21所示。項(xiàng)目任務(wù)分解任務(wù)2-2:使用goInception完成DDL語句審核1.任務(wù)說明
在數(shù)據(jù)庫運(yùn)行過程中,SQL語句是否高效往往決定了數(shù)據(jù)庫的性能。目前大部分?jǐn)?shù)據(jù)庫性能問題是由應(yīng)用開發(fā)產(chǎn)生的不良SQL語句、不良表設(shè)計(jì)所導(dǎo)致的。所以,當(dāng)業(yè)務(wù)系統(tǒng)運(yùn)行緩慢時(shí),快速了解是哪些低效SQL語句影響數(shù)據(jù)庫性能非常關(guān)鍵。MySQL語句審核,即對(duì)MySQL語句的書寫進(jìn)行統(tǒng)一化、標(biāo)準(zhǔn)化,并對(duì)SQL語句進(jìn)行優(yōu)化。本任務(wù)要求使用goInception來完成對(duì)SQL語句的審核工作。項(xiàng)目任務(wù)分解2.任務(wù)實(shí)施過程步驟1:啟動(dòng)goInception
按照任務(wù)10-1所示步驟完成goInception的啟動(dòng)。步驟2:安裝組件安裝連接數(shù)據(jù)庫組件pymysql和生成表格組件prettytable,命令如下。項(xiàng)目任務(wù)分解2.任務(wù)實(shí)施過程步驟3:創(chuàng)建測(cè)試數(shù)據(jù)庫在需要進(jìn)行DDL操作的MySQL服務(wù)器上創(chuàng)建一個(gè)測(cè)試數(shù)據(jù)庫test_inc,命令如下。步驟4:創(chuàng)建Python腳本編寫Python腳本測(cè)試DDL語句審核。創(chuàng)建一個(gè)Python腳本文件t_goinception.py,命令如下。項(xiàng)目任務(wù)分解t_goinception.py文件的內(nèi)容如下。上述Python腳本的主要功能是連接goInception,對(duì)test_inc數(shù)據(jù)庫執(zhí)行兩條DDL語句。項(xiàng)目任務(wù)分解2.任務(wù)實(shí)施過程步驟5:調(diào)用Python腳本調(diào)用在步驟4中創(chuàng)建的Python腳本,完成對(duì)數(shù)據(jù)庫的DDL操作。同時(shí),goInception會(huì)對(duì)DDL操作進(jìn)行審核。命令及
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 專業(yè)化工廠清潔勞務(wù)協(xié)作協(xié)議(2024年度)一
- 二零二五年度電子商務(wù)O2O平臺(tái)合作協(xié)議3篇
- 2025年度產(chǎn)業(yè)園區(qū)新能源車充電基礎(chǔ)設(shè)施建設(shè)協(xié)議4篇
- 2025年度節(jié)能環(huán)保產(chǎn)業(yè)項(xiàng)目合作協(xié)議書4篇
- 2025版電商供應(yīng)鏈金融合作框架協(xié)議4篇
- 2025年度企業(yè)差旅管理服務(wù)全面合作協(xié)議4篇
- 個(gè)人投資企業(yè)股份合作簡明協(xié)議版A版
- 2025年度復(fù)雜地質(zhì)條件邊坡支護(hù)與護(hù)壁樁施工技術(shù)規(guī)范合同3篇
- 專業(yè)印刷服務(wù)訂購協(xié)議集錦版B版
- 2024綜合汽車維修服務(wù)協(xié)議典范版
- 黑色素的合成與美白產(chǎn)品的研究進(jìn)展
- 建筑史智慧樹知到期末考試答案2024年
- 金蓉顆粒-臨床用藥解讀
- 社區(qū)健康服務(wù)與管理教案
- 2023-2024年家政服務(wù)員職業(yè)技能培訓(xùn)考試題庫(含答案)
- 2023年(中級(jí))電工職業(yè)技能鑒定考試題庫(必刷500題)
- 藏歷新年文化活動(dòng)的工作方案
- 果酒釀造完整
- 第4章-理想氣體的熱力過程
- 生涯發(fā)展展示
- 手術(shù)室應(yīng)對(duì)突發(fā)事件、批量傷員應(yīng)急預(yù)案及處理流程
評(píng)論
0/150
提交評(píng)論