openGauss數據庫開發實戰
付強 顧磊
相關主題
商品描述
openGauss數據庫是華為公司在多年數據庫領域研發經驗基礎上開發的數據庫產品,為企業級場景需求而設計。本書由淺入深地介紹了openGauss數據庫的開發過程,主要內容包括openGauss數據庫的安裝和配置、體系結構和主要運行機制、GUC參數、用戶管理和審計、數據類型、表和索引、SQL基礎、常用函數、過程化SQL程序設計,以及數據庫的備份與恢復等。本書通過實戰幫助讀者深入理解openGauss數據庫的運行機制。
本書結構清晰,案例豐富,適合數據庫管理員、程序開發人員、系統架構師等閱讀。
作者簡介
付強,鄭州大學計算機技術工程碩士,高級工程師,現任職於中國石化共享服務有限公司,擁有多年軟件開發和系統運維工作經驗。
顧磊,畢業於鄭州輕工業大學,高級工程師,任職於中國石化共享服務公司,擁有系統運維、網絡安全和數據安全工作經驗。
目錄大綱
第 1章 openGauss數據庫的安裝和配置 1
1.1 安裝 1
1.2 配置 3
1.3 遠程連接工具 7
1.4 卸載 8
1.5 數據庫的啟動與停止 8
1.6 gsql 10
1.7 元命令 10
第 2章 體系結構和主要運行機制 15
2.1 物理結構 15
2.1.1 數據庫數據路徑 15
2.1.2 數據庫安裝路徑 16
2.2 邏輯結構 16
2.2.1 數據庫 16
2.2.2 模式 17
2.2.3 表空間 17
2.2.4 表 18
2.2.5 數據文件 18
2.2.6 數據塊 20
2.3 openGauss數據庫的主要運行機制 20
2.3.1 OID 20
2.3.2 TOAST 22
2.3.3 CSN 24
2.3.4 事務 24
2.3.5 XID 28
2.3.6 MVCC 28
2.3.7 VACUUM 28
2.3.8 WAL 29
2.3.9 檢查點 30
2.3.10 歸檔 32
2.3.11 表空間 33
2.3.12 數據庫 35
2.3.13 系統運行日誌 35
2.3.14 內存管理 36
第3章 GUC參數 40
3.1 參數簡介 40
3.1.1 參數類型 40
3.1.2 查看參數 40
3.2 修改參數 42
3.2.1 註意事項 42
3.2.2 參數設置方式 42
第4章 用戶管理和審計 48
4.1 權限 48
4.1.1 系統權限 48
4.1.2 數據庫對象權限 48
4.2 用戶管理 50
4.2.1 管理員 50
4.2.2 三權分立 52
4.2.3 用戶 52
4.2.4 角色 58
4.2.5 模式 59
4.3 審計 61
4.3.1 審計開關參數 61
4.3.2 查看審計日誌 62
4.3.3 審計日誌維護 62
第5章 數據類型 63
5.1 數值類型 63
5.2 布爾類型 64
5.3 字符類型 65
5.4 二進制類型 66
5.5 日期/時間類型 67
5.6 幾何類型 69
5.7 網絡地址類型 69
5.8 位串類型 71
5.9 文本搜索類型 71
5.10 UUID數據類型 72
5.11 JSON/JSONB類型 72
5.12 HLL數據類型 74
5.13 範圍類型 75
5.14 對象標識符類型 75
5.15 偽類型 75
5.16 XML類型 76
5.17 SET類型 76
第6章 表和索引 78
6.1 行存表和列存表 78
6.1.1 OLTP和OLAP 78
6.1.2 行存表 78
6.1.3 列存表 79
6.2 存儲引擎 80
6.2.1 ASTORE存儲引擎 80
6.2.2 USTORE存儲引擎 81
6.2.3 MOT存儲引擎 82
6.3 分區表 83
6.3.1 創建分區表 83
6.3.2 分區表的維護 93
6.4 臨時表 96
6.5 索引 98
6.5.1 創建索引 98
6.5.2 刪除索引 102
6.5.3 重建索引 102
6.5.4 重命名索引 102
第7章 SQL基礎 103
7.1 SQL語法說明 103
7.2 表達式 104
7.2.1 簡單表達式 104
7.2.2 條件表達式 106
7.2.3 子查詢表達式 108
7.2.4 數組表達式 112
7.2.5 行表達式 116
7.3 DDL 117
7.3.1 定義數據庫 117
7.3.2 定義表空間 119
7.3.3 定義模式 120
7.3.4 定義表 121
7.4 DML 127
7.4.1 insert 127
7.4.2 delete 128
7.4.3 update 129
7.4.4 select 130
7.4.5 merge into 131
7.4.6 copy 133
7.5 DCL 135
7.5.1 定義用戶/角色 135
7.5.2 授權 136
7.5.3 收回權限 140
7.6 視圖和物化視圖 143
7.6.1 視圖 143
7.6.2 物化視圖 144
第8章 常用函數 148
8.1 數值函數 148
8.2 字符函數 151
8.2.1 字符串拼接函數 151
8.2.2 字符串查找函數 151
8.2.3 字符串替換函數 155
8.2.4 其他字符函數 157
8.3 JSON函數 159
8.4 模式匹配 167
8.4.1 like 167
8.4.2 similar to 168
8.4.3 POSIX正則表達式 169
8.4.4 正則表達式函數 170
8.5 窗口函數 173
8.6 類型轉換函數 175
8.7 聚集函數 177
8.8 安全函數 181
8.9 接口函數 183
第9章 過程化SQL程序設計 186
9.1 程序塊 186
9.1.1 程序塊結構 186
9.1.2 變量 187
9.1.3 異常處理 194
9.2 程序結構 196
9.2.1 順序結構 196
9.2.2 選擇結構 198
9.2.3 循環結構 199
9.3 光標 206
9.4 動態SQL 206
9.5 存儲過程 207
9.6 自定義函數 208
9.7 自治事務 209
9.8 觸發器 213
第 10章 數據庫的備份與恢復 217
10.1 邏輯備份與恢復 217
10.1.1 邏輯導出 217
10.1.2 邏輯導入 224
10.2 物理備份與恢復 228
10.2.1 gs_backup 229
10.2.2 gs_basebackup 230
10.2.3 PITR恢復 232
10.2.4 gs_probackup 234
10.3 閃回恢復 243
10.3.1 閃回查詢 244
10.3.2 閃回表 246
10.3.3 閃回drop/truncate 247
附錄A 系統表和系統視圖 251
附錄B 系統函數表 262