描述
开 本: 16开纸 张: 胶版纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787302589891丛书名: 华为智能计算技术丛书
华为公司官方出品!华为公司计算产品线总裁邓泰华、哈尔滨工业大学教授李建中作序
本书结合openGauss数据库原理,讲述openGauss数据库实战相关内容,并设计多种实验帮助用户理 解并使用openGauss数据库。本书首先介绍数据库的基本概念、安装部署、开发调试,并设计实验帮助用 户熟悉这一系列操作。接着介绍数据库设计、查询优化、维护、数据库备份与恢复及导入与导出、存储引 擎、事务控制和数据库安全等。本书理论与实践并重,读者通过阅读本书并进行实践,可以较好地掌握 openGauss数据库。 本书面向的读者主要是高校学生及使用openGauss数据库的工程师。
第1章初识openGauss00
1.1数据库基本概念00
1.1.1数据库的定义00
1.1.2数据库模式设计00
1.1.3数据库性能优化00
1.1.4数据库存储00
1.1.5数据库事务控制00
1.1.6数据库安全保证00
1.1.7数据库维护00
1.1.8数据库备份00
1.2openGauss简介00
1.2.1发展历史00
1.2.2架构概述00
1.2.3openGauss的优势00
1.3小结0
1.4习题0
第2章安装部署0
2.1获取安装包0
2.2配置安装环境0
2.2.1配置环境参数0
2.2.2使用yum安装系统依赖项0
2.2.3修改Python版本0
2.3安装openGauss数据库0
2.3.1创建XML配置文件0
2.3.2执行预安装脚本0
2.3.3执行安装0
2.3.4安装后生成的目录0
2.4数据库的使用0
2.5小结0
2.6习题0
第3章openGauss开发调试0
3.1gsql客户端连接0
3.1.1gsql本地连接0
3.1.2gsql远程连接0
3.1.3通过gsql客户端工具执行SQL语句0
3.2DBeaver客户端连接0
3.2.1DBeaver下载0
3.2.2DBeaver连接0
3.3openGauss数据库JDBC连接与开发0
3.3.1JDBC包、驱动类和环境类0
3.3.2JDBC连接openGauss的开发流程0
3.3.3JDBC连接openGauss执行SQL语句示例0
3.3.4JDBC连接openGauss结果集处理0
3.4openGauss数据库ODBC连接0
3.5小结0
3.6习题0
openGauss数据库实战指南
目录
第4章数据库设计0
4.1概念结构设计0
4.1.1实体及实体间的联系0
4.1.2ER图基本概念0
4.1.3ER图结构设计0
4.2SQL基础实验0
4.2.1SQL简介0
4.2.2数据准备0
4.2.3数据定义0
4.2.4数据查询0
4.2.5数据更新0
4.3索引0
4.3.1创建索引0
4.3.2修改索引属性0
4.3.3删除索引0
4.3.4重建索引0
4.3.5索引操作相关示例0
4.4视图0
4.4.1创建视图0
4.4.2修改视图0
4.4.3删除视图0
4.4.4视图操作相关示例0
4.5openGauss函数0
4.5.1数字操作符及函数0
4.5.2字符串操作符和函数
4.5.3日期和时间函数
4.5.4条件判断函数
4.5.5系统信息函数
4.5.6加密、解密函数
4.5.7其他函数
4.6触发器
4.6.1创建触发器
4.6.2查看触发器
4.6.3触发器的使用
4.6.4删除和修改触发器
4.7存储过程
4.7.1创建存储过程
4.7.2调用存储过程
4.7.3查看存储过程
4.7.4删除存储过程
4.8小结
4.9习题
第5章openGauss查询优化
5.1查询优化
5.2查询解释命令
5.2.1功能描述
5.2.2语法格式
5.2.3参数说明
5.2.4示例
5.3查询分析命令
5.3.1功能描述
5.3.2语法格式
5.3.3示例
5.4优化提示命令
5.4.1功能描述
5.4.2连接顺序提示
5.4.3连接方式提示
5.4.4行数方式提示
5.4.5提示命令的错误、冲突及告警
5.5自动参数优化
5.5.1工作原理
5.5.2实验部署
5.6查询性能预测
5.6.1工作原理
5.6.2实验部署
5.7索引推荐
5.7.1单查询索引推荐
5.7.2虚拟索引
5.7.3负载级别索引推荐
5.8小结
5.9习题
第6章openGauss维护
6.1openGauss运行健康状态检查
6.1.1注意事项
6.1.2操作步骤
6.1.3常见错误与异常处理
6.1.4自定义检查内容
6.2openGauss性能检查
6.2.1检查方法
6.2.2异常处理
6.3日志检查和管理
6.3.1日志类型简介
6.3.2系统日志
6.3.3操作日志
6.3.4审计日志
6.3.5WAL日志
6.3.6性能日志
6.3.7日志检查和清理
6.4例行表、索引维护
6.4.1例行维护表
6.4.2例行重建索引
6.5小结
6.6习题
第7章数据库备份与恢复及导入与导出
7.1导入数据
7.1.1通过INSERT语句直接写入数据
7.1.2使用COPY FROM STDIN导入数据
7.1.3使用gsql元命令导入数据
7.2备份与恢复的类型及对比
7.3物理备份与恢复
7.3.1使用gs_basebackup备份数据
7.3.2PITR任意时间点恢复
7.4逻辑备份与恢复
7.4.1备份单个数据库
7.4.2备份所有数据库
7.4.3使用gs_restore命令恢复数据
7.5小结
7.6习题
第8章存储引擎
8.1行存表和列存表的差异及优缺点
8.2行存表
8.2.1创建行存表
8.2.2查看行存表属性
8.2.3向行存表中插入一条数据
8.2.4删除行存表
8.3列存表
8.3.1创建列存表
8.3.2查看列存表属性
8.3.3向列存表中插入一条数据
8.3.4删除列存表
8.3.5行存表、列存表的比较
8.4内存数据库
8.4.1MOT特性及价值
8.4.2MOT关键技术
8.4.3应用场景
8.4.4MOT使用概述
8.4.5MOT准备
8.4.6MOT部署
8.4.7MOT使用
8.4.8MOT监控
8.5小结
8.6习题
第9章事务控制
9.1openGauss中的事务控制
9.1.1示例一个银行数据库
9.1.2openGauss的4种事务控制指令
9.2事务的4种隔离级别
9.2.1读未提交隔离级别
9.2.2读已提交隔离级别
9.2.3可重复读隔离级别
9.2.4可串行化隔离级别
9.3自治事务
9.3.1用户自定义函数支持自治事务
9.3.2存储过程支持自治事务
9.3.3规格约束
9.4小结
9.5习题
第10章数据库安全
10.1用户
10.1.1管理员
10.1.2普通用户
10.2角色
10.3模式
10.4用户权限设置与回收
10.4.1将系统权限授予用户或者角色
10.4.2将数据库对象授予角色或用户
10.4.3将用户或者角色的权限授予其他用户或角色
10.4.4权限回收
10.5安全策略设置
10.5.1设置账户安全策略
10.5.2设置账号有效期
10.5.3设置密码安全策略
10.6审计
10.6.1审计开、关
10.6.2查看审计结果
10.6.3维护审计日志
10.7小结
10.8习题
附录ALinux操作系统相关命令
CONTENTS
目录
第1章初识openGauss00
1.1数据库基本概念00
1.1.1数据库的定义00
1.1.2数据库模式设计00
1.1.3数据库性能优化00
1.1.4数据库存储00
1.1.5数据库事务控制00
1.1.6数据库安全保证00
1.1.7数据库维护00
1.1.8数据库备份00
1.2openGauss简介00
1.2.1发展历史00
1.2.2架构概述00
1.2.3openGauss的优势00
1.3小结0
1.4习题0
第2章安装部署0
2.1获取安装包0
2.2配置安装环境0
2.2.1配置环境参数0
2.2.2使用yum安装系统依赖项0
2.2.3修改Python版本0
2.3安装openGauss数据库0
2.3.1创建XML配置文件0
2.3.2执行预安装脚本0
2.3.3执行安装0
2.3.4安装后生成的目录0
2.4数据库的使用0
2.5小结0
2.6习题0
第3章openGauss开发调试0
3.1gsql客户端连接0
3.1.1gsql本地连接0
3.1.2gsql远程连接0
3.1.3通过gsql客户端工具执行SQL语句0
3.2DBeaver客户端连接0
3.2.1DBeaver下载0
3.2.2DBeaver连接0
3.3openGauss数据库JDBC连接与开发0
3.3.1JDBC包、驱动类和环境类0
3.3.2JDBC连接openGauss的开发流程0
3.3.3JDBC连接openGauss执行SQL语句示例0
3.3.4JDBC连接openGauss结果集处理0
3.4openGauss数据库ODBC连接0
3.5小结0
3.6习题0
openGauss数据库实战指南
目录
第4章数据库设计0
4.1概念结构设计0
4.1.1实体及实体间的联系0
4.1.2ER图基本概念0
4.1.3ER图结构设计0
4.2SQL基础实验0
4.2.1SQL简介0
4.2.2数据准备0
4.2.3数据定义0
4.2.4数据查询0
4.2.5数据更新0
4.3索引0
4.3.1创建索引0
4.3.2修改索引属性0
4.3.3删除索引0
4.3.4重建索引0
4.3.5索引操作相关示例0
4.4视图0
4.4.1创建视图0
4.4.2修改视图0
4.4.3删除视图0
4.4.4视图操作相关示例0
4.5openGauss函数0
4.5.1数字操作符及函数0
4.5.2字符串操作符和函数
4.5.3日期和时间函数
4.5.4条件判断函数
4.5.5系统信息函数
4.5.6加密、解密函数
4.5.7其他函数
4.6触发器
4.6.1创建触发器
4.6.2查看触发器
4.6.3触发器的使用
4.6.4删除和修改触发器
4.7存储过程
4.7.1创建存储过程
4.7.2调用存储过程
4.7.3查看存储过程
4.7.4删除存储过程
4.8小结
4.9习题
第5章openGauss查询优化
5.1查询优化
5.2查询解释命令
5.2.1功能描述
5.2.2语法格式
5.2.3参数说明
5.2.4示例
5.3查询分析命令
5.3.1功能描述
5.3.2语法格式
5.3.3示例
5.4优化提示命令
5.4.1功能描述
5.4.2连接顺序提示
5.4.3连接方式提示
5.4.4行数方式提示
5.4.5提示命令的错误、冲突及告警
5.5自动参数优化
5.5.1工作原理
5.5.2实验部署
5.6查询性能预测
5.6.1工作原理
5.6.2实验部署
5.7索引推荐
5.7.1单查询索引推荐
5.7.2虚拟索引
5.7.3负载级别索引推荐
5.8小结
5.9习题
第6章openGauss维护
6.1openGauss运行健康状态检查
6.1.1注意事项
6.1.2操作步骤
6.1.3常见错误与异常处理
6.1.4自定义检查内容
6.2openGauss性能检查
6.2.1检查方法
6.2.2异常处理
6.3日志检查和管理
6.3.1日志类型简介
6.3.2系统日志
6.3.3操作日志
6.3.4审计日志
6.3.5WAL日志
6.3.6性能日志
6.3.7日志检查和清理
6.4例行表、索引维护
6.4.1例行维护表
6.4.2例行重建索引
6.5小结
6.6习题
第7章数据库备份与恢复及导入与导出
7.1导入数据
7.1.1通过INSERT语句直接写入数据
7.1.2使用COPY FROM STDIN导入数据
7.1.3使用gsql元命令导入数据
7.2备份与恢复的类型及对比
7.3物理备份与恢复
7.3.1使用gs_basebackup备份数据
7.3.2PITR任意时间点恢复
7.4逻辑备份与恢复
7.4.1备份单个数据库
7.4.2备份所有数据库
7.4.3使用gs_restore命令恢复数据
7.5小结
7.6习题
第8章存储引擎
8.1行存表和列存表的差异及优缺点
8.2行存表
8.2.1创建行存表
8.2.2查看行存表属性
8.2.3向行存表中插入一条数据
8.2.4删除行存表
8.3列存表
8.3.1创建列存表
8.3.2查看列存表属性
8.3.3向列存表中插入一条数据
8.3.4删除列存表
8.3.5行存表、列存表的比较
8.4内存数据库
8.4.1MOT特性及价值
8.4.2MOT关键技术
8.4.3应用场景
8.4.4MOT使用概述
8.4.5MOT准备
8.4.6MOT部署
8.4.7MOT使用
8.4.8MOT监控
8.5小结
8.6习题
第9章事务控制
9.1openGauss中的事务控制
9.1.1示例一个银行数据库
9.1.2openGauss的4种事务控制指令
9.2事务的4种隔离级别
9.2.1读未提交隔离级别
9.2.2读已提交隔离级别
9.2.3可重复读隔离级别
9.2.4可串行化隔离级别
9.3自治事务
9.3.1用户自定义函数支持自治事务
9.3.2存储过程支持自治事务
9.3.3规格约束
9.4小结
9.5习题
第10章数据库安全
10.1用户
10.1.1管理员
10.1.2普通用户
10.2角色
10.3模式
10.4用户权限设置与回收
10.4.1将系统权限授予用户或者角色
10.4.2将数据库对象授予角色或用户
10.4.3将用户或者角色的权限授予其他用户或角色
10.4.4权限回收
10.5安全策略设置
10.5.1设置账户安全策略
10.5.2设置账号有效期
10.5.3设置密码安全策略
10.6审计
10.6.1审计开、关
10.6.2查看审计结果
10.6.3维护审计日志
10.7小结
10.8习题
附录ALinux操作系统相关命令
数据库系统是组织、存储、管理、分析数据的系统,是IT行业重要的基础软件,目前各行各业的信息系统都需要使用数据库系统管理业务数据。数据库系统在硬件和应用之间起到了承上启下的重要作用,是IT行业不可或缺的软件,被誉为“软件行业皇冠上的明珠”。
20世纪50年代,随着计算机的诞生和成熟,计算机开始用于数据管理,然而,传统的文件系统难以应对数据增长的挑战,也无法满足多用户共享数据和快速检索数据的需求。因此,20世纪60年代,数据库应运而生。经过
60多年的发展,数据库发生了翻天覆地的变化,从网状数据库的提出到关系数据库的蓬勃发展,从单机数据库、集群数据库到分布式数据库,从本地部署到云数据库部署形态,从交易型行存储引擎到分析型列存储引擎,从手工运维到AI自调优,数据库技术出现了百家争鸣的大繁荣、大发展。近年来,我国数据库领域从学术界到工业界都得到了快速发展。其中华为公司推出的开源数据库openGauss是我国自研的代表性数据库系统,该系统具有的分布式事务能力,具有云化架构、混合负载、多模异构、AI自调优等特点。
本书主要介绍openGauss数据库实战的相关内容,帮助读者从实践的角度理解openGauss数据库。本书定位为数据库领域选修教材,面向工程科技类普通读者,尽可能删减繁杂抽象的公式、定理和理论推导。读者除需要具备基本的数据库知识和编程能力外,无须预修任何课程。本书特别理想的受众是计算机科学、人工智能、电子工程、生物医药、物理、化学、金融统计等领域的学术人员或需要用到数据库的研发人员; 本书也为互联网公司和开发者提供了有价值的内容。
本书共10章,内容涵盖openGauss数据库的基本概念、安装部署、开发调试、数据库设计、
查询优化、数据库维护、备份与恢复及导入与导出、
存储引擎、事务控制、数据库安全等。通过本书,读者可以深入了解openGauss数据库的原理、架构和使用方法,掌握数据库开发的核心技术,将来可以开发数据库内核的核心代码,也可以更好地利用数据库开发各种应用。读者可搜索微信公众号openGauss或访问openGauss开源社区网站,以获取更多关于openGauss的产品和技术信息。
本书主要由李国良、冯建华编写。感谢华为公司在本书写作过程中提供的资源和支持。感谢清华大学出版社盛东亮老师和钟志芳老师等的大力支持,他们认真细致的工作保证了本书的质量。
由于编者水平有限,书中难免有疏漏和不足之处,恳请读者批评指正!
编者
2021年5月
评论
还没有评论。