華為openGauss開源數(shù)據(jù)庫實戰(zhàn)
定 價:79 元
叢書名:中國通信學(xué)會5G 行業(yè)應(yīng)用培訓(xùn)指導(dǎo)用書
本書是一本指導(dǎo)讀者快速步入華為openGauss開源數(shù)據(jù)庫世界的實戰(zhàn)指導(dǎo)書。本書以循序漸進的方式,幫助讀者一步一步地輕松掌握openGauss開源數(shù)據(jù)庫。有了這些基礎(chǔ),讀者可以更好地學(xué)習(xí)其他數(shù)據(jù)庫管理系統(tǒng)。本書由30個實戰(zhàn)任務(wù)構(gòu)成:前三個任務(wù)是搭建openGauss數(shù)據(jù)庫的實驗環(huán)境;任務(wù)四是openGauss的簡單維護;任務(wù)五是準備測試數(shù)據(jù)集;任務(wù)六是學(xué)習(xí)使用openGauss DBMS的客戶端工具gsql;任務(wù)七到任務(wù)二十七則涵蓋了openGauss DBMS的方方面面;任務(wù)二十八和任務(wù)二十九是關(guān)系數(shù)據(jù)庫設(shè)計的實戰(zhàn);任務(wù)三十是搭建openGauss主備數(shù)據(jù)庫以及主備數(shù)據(jù)庫的管理。本書可以作為openGauss初學(xué)者、計算機專業(yè)學(xué)生學(xué)習(xí)數(shù)據(jù)庫系統(tǒng)原理與應(yīng)用的實戰(zhàn)指導(dǎo)書,對從事數(shù)據(jù)庫工作的工程技術(shù)人員、想快速掌握開源數(shù)據(jù)庫PostgreSQL的技術(shù)人員也非常有參考價值。
中國通信學(xué)會和中國產(chǎn)業(yè)發(fā)展研究院強強聯(lián)合,組織各行業(yè)眾多專家,深入5G之道普及原理知識,淺出5G案例指導(dǎo)實際工作。本書包含30個實戰(zhàn)任務(wù),全部源文件免費下載。
前 言為什么要寫這本書5G時代已經(jīng)到來!華為作為5G技術(shù)的領(lǐng)導(dǎo)者,目前正飽受國外技術(shù)霸權(quán)打壓。除了芯片制造技術(shù),作為5G基礎(chǔ)設(shè)施的操作系統(tǒng)和數(shù)據(jù)庫管理系統(tǒng)等大型基礎(chǔ)軟件,也是我國在IT技術(shù)上受制于人的痛點。為了對抗技術(shù)霸權(quán),華為推出了開源操作系統(tǒng)openEuler和開源數(shù)據(jù)庫管理系統(tǒng)openGauss,嘗試構(gòu)建我國自己的信息產(chǎn)業(yè)生態(tài)。目前,關(guān)于華為開源數(shù)據(jù)庫管理系統(tǒng)openGauss的參考資料并不多,入門資料更少。讀者雖然可通過參考華為官方的技術(shù)資料進行學(xué)習(xí),但即使對于有數(shù)據(jù)庫行業(yè)從業(yè)經(jīng)驗的工程技術(shù)人員來說,這也不是一件容易的事情,對于初學(xué)者來說,更是困難重重!初學(xué)者碰到的項艱巨任務(wù),就是搭建一個可用于學(xué)習(xí)openGauss數(shù)據(jù)庫管理系統(tǒng)(openGauss DBMS)的實驗環(huán)境,包括軟件安裝介質(zhì)的準備、CentOS操作系統(tǒng)的安裝、openGauss DBMS的安裝。本書以很大的篇幅和豐富的截圖,讓讀者可以以循序漸進的方式,輕松地從零開始:下載VM-ware Workstation介質(zhì),并準備好VMware虛擬化環(huán)境;下載CentOS 7介質(zhì)并安裝一個CentOS 7操作系統(tǒng);下載openGauss DBMS介質(zhì)并安裝好openGauss數(shù)據(jù)庫環(huán)境。本書還提供了一個已經(jīng)安裝好openGauss DBMS的VMware虛擬機,讀者下載后可以直接開始openGauss數(shù)據(jù)庫之旅。要學(xué)習(xí)一個數(shù)據(jù)庫管理系統(tǒng),無論是Oracle、MySQL還是openGauss,理論和實踐相結(jié)合是好的學(xué)習(xí)方式。本書為讀者準備了30個實戰(zhàn)任務(wù),讀者可以按照本書的指導(dǎo),一步一步地以實戰(zhàn)的方式,快速掌握華為openGauss開源數(shù)據(jù)庫。有了這個基礎(chǔ),讀者可舉一反三,更為輕松地學(xué)習(xí)其他的數(shù)據(jù)庫管理系統(tǒng),包括各種的國產(chǎn)數(shù)據(jù)庫管理系統(tǒng)以及Oracle、MySQL、PostgreSQL。大學(xué)本科生學(xué)習(xí)數(shù)據(jù)庫系統(tǒng)的原理和應(yīng)用時,一般只做關(guān)于SQL語言、數(shù)據(jù)庫編程接口、數(shù)據(jù)庫設(shè)計等方面的實驗。本書以華為開源數(shù)據(jù)庫openGauss為實例,讓學(xué)生有機會更為全面地學(xué)習(xí)數(shù)據(jù)庫管理系統(tǒng)的功能,例如數(shù)據(jù)庫隔離級別、數(shù)據(jù)庫的備份恢復(fù)、數(shù)據(jù)庫的復(fù)制集群等。在SQL語言方面,本書用許多等價的SQL語句來完成同一個查詢,使讀者也可更為深入地學(xué)習(xí)SQL語言。本書另外一個亮點是,開辟相關(guān)的內(nèi)容來幫助初學(xué)者快速掌握基于Visio和PowerDesigner的關(guān)系數(shù)據(jù)庫設(shè)計方法。本書的讀者對象本書主要為華為openGauss DBMS的初學(xué)者而準備,并面向高等院校選修數(shù)據(jù)庫原理與應(yīng)用的學(xué)生。對于有其他數(shù)據(jù)庫(如Oracle、MySQL、SQL Server)經(jīng)驗的讀者,也可通過本書快速學(xué)習(xí)掌握華為openGauss DBMS。由于華為openGauss開源數(shù)據(jù)庫的內(nèi)核代碼基于PostgreSQL,因此想快速進入PostgreSQL開源數(shù)據(jù)庫世界的讀者,也是本書的讀者對象。本書的主要內(nèi)容本書由30個任務(wù)組成,每個任務(wù)都是獨立的,讀者可以選擇從任何一個任務(wù)開始學(xué)起。任務(wù)一是安裝配置VMware Workstation虛擬化軟件。任務(wù)二是在VMware Workstation上安裝CentOS 7,同樣要求讀者計算機的內(nèi)存大于或等于8GB。為了獲得更好的學(xué)習(xí)體驗,計算機上好還有一塊256GB以上的SSD(固態(tài)硬盤)。如果讀者計算機的硬件不能滿足這個要求,請讀者升級計算機硬件。畢竟,工欲善其事,必先利其器!考慮到目前內(nèi)存不算太貴,而且升級內(nèi)存能大大提高計算機的性能,建議將內(nèi)存至少升級到16GB(32GB以上更好),SSD升級到512GB或者1TB。也可以租用華為云服務(wù)上的CentOS 7.6主機,來完成本書的任務(wù)。任務(wù)二還提供了一個安裝好openGauss DBMS的Docker環(huán)境,使讀者可以在完成任務(wù)三碰到困難時,仍然可以測試openGauss數(shù)據(jù)庫,完成本書的其他任務(wù)。任務(wù)三是在CentOS 7.6上安裝openGauss 1.0.1數(shù)據(jù)庫管理系統(tǒng),這對初學(xué)者來說是一個艱巨的挑戰(zhàn)。本任務(wù)的內(nèi)容已經(jīng)經(jīng)過反復(fù)測試,請讀者仔細閱讀本任務(wù)的指導(dǎo),一步一步地按照指導(dǎo)去做,完成openGauss DBMS的安裝。任務(wù)四到任務(wù)二十七涵蓋了openGauss DBMS的方方面面。學(xué)習(xí)并實際完成這些任務(wù)后,讀者基本上能達到初級數(shù)據(jù)庫管理員(DBA)的水平。讀者可以使用自己搭建的openGauss環(huán)境來完成這些任務(wù),也可以使用本書提供的已經(jīng)安裝好openGauss 1.0.1數(shù)據(jù)庫管理系統(tǒng)的VMware虛擬機來完成。下載這個虛擬機文件,將其釋放到SSD上,可以獲得更好的學(xué)習(xí)體驗,因為SSD比機械硬盤速度快很多。任務(wù)二十八和任務(wù)二十九是關(guān)于關(guān)系數(shù)據(jù)庫設(shè)計的實戰(zhàn),同樣要求讀者的計算機少有8GB內(nèi)存。這兩個任務(wù)可以直接在讀者的安裝Windows 10(簡稱Win10)系統(tǒng)的計算機上完成。任務(wù)二十八基于Visio來進行E-R(實體關(guān)系)設(shè)計,并采用手動轉(zhuǎn)化的方法,將E-R圖轉(zhuǎn)化為關(guān)系模式圖,進一步改寫成SQL語言部署腳本。任務(wù)二十九基于計算機輔助軟件工程(CASE)工具PowerDesigner進行關(guān)系數(shù)據(jù)庫設(shè)計。這兩種方法對于讀者來說,都是應(yīng)該掌握的。任務(wù)三十需要兩臺都具有4GB內(nèi)存的CentOS 7.6虛擬機,這要求讀者的計算機至少有16GB以上的內(nèi)存。如果讀者計算機的硬件不能滿足此要求,建議讀者使用華為云服務(wù),臨時租用兩臺4GB內(nèi)存的CentOS 7.6虛擬機,來完成本任務(wù)的實戰(zhàn)。本書中所有的任務(wù)都已反復(fù)測試確認過,讀者若在實戰(zhàn)過程中出現(xiàn)與本書不一致的顯示,請從頭開始重做任務(wù)。本書在任務(wù)二十一,為某些查詢提供了多種等價SQL語句寫法,讓初學(xué)者可以快速掌握這些看上去難以掌握的技術(shù)。本書的另外一個特色就是以實戰(zhàn)的方式,帶領(lǐng)初學(xué)者學(xué)習(xí)兩種E-R概念模型設(shè)計的方法。本書的任務(wù)一到任務(wù)四由何杰負責(zé)編寫,任務(wù)二十四到任務(wù)二十七由齊悅負責(zé)編寫,其余任務(wù)由曾慶峰負責(zé)編寫。本書的讀者資源本書提供的資源都已上傳至百度網(wǎng)盤,讀者可通過掃描以下二維碼來獲取一個名為華為openGauss開源數(shù)據(jù)庫實戰(zhàn)讀者資料.txt的文件。該文件的內(nèi)容是百度網(wǎng)盤的共享鏈接和提取碼,指向本書資源的實際下載地址。訪問本書資源的另外一個網(wǎng)址是:https://www.modb.pro/tag/openGuassInAction讀者可以從上面兩個鏈接之一獲取本書的讀者資源。讀者資源包括書中的代碼文本、軟件介質(zhì)和隨時可用的已經(jīng)安裝好openGauss DBMS的CentOS 7.6 VMware虛擬機文件。以后還將陸續(xù)在共享網(wǎng)盤上為讀者提供一些實驗視頻。如何使用本書的讀者資源讀者如果在完成任務(wù)一、任務(wù)二、任務(wù)三的時候碰到困難,可以先使用本書讀者資源中提供的已經(jīng)裝好openGauss DBMS的虛擬機實驗環(huán)境,來完成任務(wù)四至任務(wù)二十七,之后再完成任務(wù)一、任務(wù)二、任務(wù)三和其他任務(wù)。讀者可從共享網(wǎng)盤上下載本書所有任務(wù)的代碼文本,借助本書來理解這些代碼的功能。一個快速學(xué)習(xí)openGauss的捷徑是:直接復(fù)制這些代碼文本到虛擬機實驗環(huán)境中進行測試驗證可以更好地理解這些代碼的功能。這種方式可以讓讀者避開初學(xué)者常犯的低級錯誤,而這些低級錯誤往往會導(dǎo)致初學(xué)者失去信心,以致無法繼續(xù)學(xué)習(xí)下去。一般情況下,通過使用這些代碼文本,讀者可在1~2周之內(nèi)完成本書的30個任務(wù),快速地學(xué)習(xí)掌握華為openGauss開源數(shù)據(jù)庫。致謝首先要感謝我的家人,尤其是要感謝我的妻子,你們的寬容、鼓勵以及默默的支持,讓我能夠安靜地寫完本書。其次要感謝我的朋友姜殿斌先生,他為本書提供了許多有用的資料和有益的建議。還要感謝華為的朋友們?yōu)楸緯峁┝舜罅坑杏玫馁Y料和技術(shù)支持。
叢書序序一序二前言任務(wù)一 安裝配置VMware Workstation虛擬化軟件……………………1任務(wù)二 安裝CentOS 7.6操作系統(tǒng)………………………………………6任務(wù)三 安裝openGauss DBMS ……………………………………… …28任務(wù)四 openGauss的簡單維護……………………………………… …37任務(wù)五 準備測試數(shù)據(jù)集…………………………………………………40任務(wù)六 學(xué)習(xí)使用openGauss DBMS的客戶端工具gsql…………………43任務(wù)七 理解openGauss體系結(jié)構(gòu)中的基本概念…………………… …67任務(wù)八 測試openGauss DBMS的數(shù)據(jù)類型………………………………78任務(wù)九 測試openGauss DBMS的數(shù)據(jù)庫約束……………………………98任務(wù)十 openGauss邏輯結(jié)構(gòu):表空間管理……………………………109任務(wù)十一 openGauss邏輯結(jié)構(gòu):數(shù)據(jù)庫管理…………………………113任務(wù)十二 openGauss邏輯結(jié)構(gòu):模式管理……………………………119任務(wù)十三 openGauss邏輯結(jié)構(gòu):表管理………………………………127任務(wù)十四 openGauss邏輯結(jié)構(gòu):………………………………………143任務(wù)十五 openGauss邏輯結(jié)構(gòu):………………………………………149任務(wù)十六 openGauss邏輯結(jié)構(gòu):存儲過程和函數(shù)管理………………155任務(wù)十七 openGauss邏輯結(jié)構(gòu):觸發(fā)器管理…………………………174任務(wù)十八 openGauss邏輯結(jié)構(gòu):序列和序列函數(shù)……………………180任務(wù)十九 openGauss邏輯結(jié)構(gòu):用戶和權(quán)限管理……………………188任務(wù)二十 openGauss DML語句測試……………………………………201任務(wù)二十一 openGauss SELECT語句………………………………… 205任務(wù)二十二 使用JDBC訪問openGauss數(shù)據(jù)庫…………………………261任務(wù)二十三 openGauss數(shù)據(jù)庫的隔離級別測試………………………271任務(wù)二十四 openGauss參數(shù)管理………………………………………280任務(wù)二十五 openGauss WAL管理和歸檔管理…………………………286任務(wù)二十六 openGauss數(shù)據(jù)庫的物理備份與恢復(fù)……………………290任務(wù)二十七 openGauss數(shù)據(jù)庫的邏輯備份與恢復(fù)……………………294任務(wù)二十八 基于Visio的openGauss數(shù)據(jù)庫設(shè)計………………… …297任務(wù)二十九 基于PowerDesigner的openGauss數(shù)據(jù)庫設(shè)計………… 306任務(wù)三十 openGauss數(shù)據(jù)庫的主備高可用測試………………………335參考文獻………………………………………………………………… 349