大家好,这里是公众号 DBA学习之路,致力于分享数据库领域相关知识。
前言
本章目标:掌握本章核心知识点
前置要求:完成前序章节学习
预计时长:60 分钟
2025 年第一场 GBase 培训:培训预告 | 2025元月 GBase 8c 认证培训班开始报名啦~,到今天为止,培训课程已经学习完成,我总结了每节课的课后练习题,一共 93 题,分享出来供大家一起查阅。
当然,配合 GBase 8c 数据库实操练习,效果更佳,GBase 8c 安装部署可以参考:GBase 8c 分布式集群安装部署手册!
单选题
1、GBase 8c 一般采用什么方式来保证各节点间的时间同步?
正确答案: D
解析: GBase 8c 数据库集群一般采用 NTP 服务保证各节点间的时间同步。
2、GBase 8c 配置文件中 cluster_type 参数默认值是多少?
正确答案: A
解析: A 选项表示分布式,B 选项表示主备式。
3、GBase 8c 安装包解压目录下,哪个子目录是工具库?
正确答案: A
解析: script 为 GBase 8c 的工具库。
4、gsql 提供命令自动补齐功能,通过什么快捷键实现?
正确答案: C
解析: gsql 支持使用 Tab 键进行关键字和命令的自动补齐。
5、GBase 8c 中哪个元命令用于退出当前数据库登录?
正确答案: C
解析: \q 元命令退出当前数据库登录。
6、使用 gsql 工具定义变量 room 并赋值,使用以下哪个命令来查看该变量值?
正确答案: A
解析: 使用 \set 设置变量,使用 \echo :varname 显示变量值。
7、GBase 8c 中哪个元命令用于查看数据表信息?
正确答案: A
解析: \dt 显示表信息;\di 显示索引信息;\df 显示函数信息;\dl 显示大对象信息。
8、在使用 DBeaver 连接 GBase 8c 数据库时,配置的用户需要具有什么权限?
正确答案: A
解析: A、B、D 选项是 GBase 8c 用户权限,sysadmin 是系统管理员,createrole 是安全管理员,monadmin 是监控管理员,还有其他管理员权限。C 是 oracle 中用户权限。用于远程连接的用户需要具有 sysadmin 权限。
9、在使用 DBeaver 连接 GBase 8c 数据库之前,需要修改 GBase 8c 数据库的 password_encryption_type 参数,目的是为什么?
正确答案: B
解析: GBase 8c 数据库 password_encryption_type 参数用于配置采用的加密算法。分布式部署默认为 2。
10、关于序列,以下描述错误的是
正确答案: A
解析: 同一个 schema 下,序列名与数据表名不允许相同。
11、GBase 8c 在不指定时,默认使用哪种分片策略。
正确答案: A
解析: GBase 8c 默认使用 hash 分片策略。
12、GBase 8c 行存表压缩,COMPRESS_LEVEL 默认值是多少。
正确答案: A
解析: GBase 8c 行存表压缩,COMPRESS_LEVEL 参数取值范围:-31~31,默认值为 0。
13、GBase 8c 使用 create table 创建表时,不指定参数,默认是多少。
正确答案: A
解析: GBase 8c 使用 create table 创建表时,不指定参数,默认是 astore,行存表。
14、如果需要打开 update 语句的审计功能,需要开启下面哪个参数
正确答案: C
解析: update 属于 DML,audit_dml_state:DML 语句审计。
15、如果需要给某一个用户权限收回,需要用到什么命令
正确答案: C
解析: 授权关键字为 revoke。
16、下面哪个参数是密码不可重用的天数
正确答案: A
解析: 不可重用天数(数据库参数:password_reuse_time)。
17、下面哪个参数是密码复杂度开关
正确答案: C
解析: 密码复杂度开关(数据库参数:password_policy)。
18、关于 GBase 8c 的分布式执行计划,描述错误的是
正确答案: C
解析: DN 节点上的 producer,将扫描到的所有数据,会广播或重分布到所有 consumer(本 DN 节点和其他 DN 节点)。
19、以下描述错误的是
正确答案: A
解析: 成本的估算多种因素有关,如扫描方式、关联方式、操作符、成本因子、数据集等。并不能一定就能保证选择的执行路径进行最好的,例如当表中数据短时间内有大范围修改,但未及时进行analyze,可能导致统计信息不准确从而影响执行路径的选择。
20、在plan hint 中,指定链接名的语法是
正确答案: D
解析: 指定链接名的语法是blockname (table)。
21、plan hint 暂时不支持哪种 join 方式
正确答案: B
解析: plan hint 暂不支持 Semi Join。
22、PBE 的执行方式中的B表示的是
正确答案: C
解析: Bind:表示将入参变量与缓存的执行计划进行绑定的过程。
23、下面哪种方式导入表定义?
正确答案: B
解析: Create 创建了表定义。
24、tar归档格式的备份可以使用下面哪个命令?
正确答案: B
解析: -F 指定 tar 归档格式。
25、如果只需要导出某张表和数据,需要指定下面哪个参数?
正确答案: A
解析: -t 指定某张表。
26、逻辑备份可以用到下面哪个命令执行?
正确答案: C
解析: gs_dump 为指定逻辑备份关键字。
27、tar 归档格式的备份可以使用下面哪个命令恢复?
正确答案: B
解析: 恢复命令 gs_restore。
28、以下描述错误的是?
正确答案: A
解析: 成本的估算多种因素有关,如扫描方式、关联方式、操作符、成本因子、数据集等等。但并不能一定就能保证选择的执行路径进行最好的,例如当表中数据短时间内有大范围修改,但未及时进行 analyze,可能导致统计信息不准确从而影响执行路径的选择。
29、关于 LightProxy 执行计划,描述错误的是?
正确答案: D
解析: LightProxy 适用于精准查询场景。
30、如果需要打开 select 语句的审计功能,需要开启下面哪个参数?
正确答案: D
解析: audit_dml_state_select: select 语句审计开关。
31、GBase 8c 单机版本自动分区功能,使用的关键字是什么?
正确答案: A
解析: GBase 8c 单机版本关键字为 interval,分布式版本关键字为 period。
32、关于 BOOLEAN 类型,以下不能作为“真”值的有效文本值是?
正确答案: C
解析: 真值的有效文本值是:TRUE、't'、'true'、'y'、'yes'、'1'、'TRUE'、true、整数范围内 12^63-1、整数范围内 -12^63。
33、关于表空间,以下描述错误的是?
正确答案: C
解析: 每张表只能属于一个数据库,也只能对应到一个 Tablespace。
34、使用 gsql 命令登录 GBase 8c 数据库,其中哪个参数用于指定数据库名?
正确答案: D
解析: gsql 中 -U 参数用于指定用户名,-d 参数用于指定数据库名,-p 参数指定端口,-h 参数指定服务器 IP。
35、如果只需要导出 schema1、schema2,只导出 schema1.table1,需要指定下面哪个参数?
正确答案: A
解析: -n 指定 schema,-t 指定表。
36、不属于 GBase 8c 语句解析器功能的是?
正确答案: A
解析: 解析器功能包括词法分析、语法分析、语义分析。
37、GBase 8c 行存表使用哪个关键字进行压缩存储?
正确答案: D
解析: GBase 8c 行存表使用 compresstype 关键字进行压缩存储。
38、关于 VARCHAR(n) 类型,描述错误的是?
正确答案: D
解析: NVARCHAR 是 NVARCHAR2(n) 类型的别名。
多选题
1、下列哪些针对多模多态的分布式数据库 GBase 8c 的描述是正确的:
正确答案: A, B, C
解析: D 选项,GBase 8c 是基于 openGauss 3.0 构建的分布式数据库。
2、下列哪些针对多模多态的分布式数据库 GBase 8c 的描述是正确的:
正确答案: B, D
解析: A 列存表主要面向 OLAP 场景设计,例如数据统计报表分析。C 当前支持行存和列存的互相调用。
3、下列哪些针对数据库的描述是正确的:
正确答案: A, B, C, D
4、下列哪些针对多模多态的分布式数据库 GBase 8c 的描述是正确的:
正确答案: B, D
解析: GTM 采用基于全局事务提交时间戳的方案代替全局活跃事务列表的方案来管理全局事务。DN 节点部分场景仍采用活跃事务列表的方式管理事务。
5、GBase 8c 分布式部署配置文件中涉及以下哪些节点参数配置?
正确答案: A、B、C
解析: GBase 8c 分布式集群包括 GHA Server、DCS、GTM、CN、DN 节点。
6、安装 GBase 8c 数据库前,需要检查机器哪方面配置?
正确答案: A、B、C、D
解析: GBase 8c 对服务器的内存、CPU、硬盘和网络都有要求。
7、GBase 8c 的客户端命令行工具 gsql 具有什么功能?
正确答案: A, B, C, D
解析: gsql 具有连接、执行 SQL、变量特性、命令自动补齐、元命令等功能。
8、DBeaver 中对连接信息的管理操作包括:
正确答案: A, B, C, D
解析: 对 DBeaver 保存的连接信息的管理。“数据库导航”列表中,选中并右击。常用功能项包括连接、刷新、断开连接、删除等操作。
9、DBeaver 作为一款通用数据库管理工具,具有什么特性?
正确答案: A, B, C
解析: DBeaver 是一款数据库管理工具,SQL 客户端,具有连接数据库、编辑/执行 SQL、编辑元数据等功能。
10、GBase 8c 自带的表空间是
正确答案: B, C
解析: pg_catalog、pg_temp 是系统的 schema,pg_default、pg_global 是系统自带的表空间。
11、GBase 8c 支持以下哪种语法创建内存表
正确答案: A, B
解析: GBase 8c 创建内存表必须带关键字 foreign。server mot_server 关键字可写可不写。
12、如果需要关闭 select 语句的审计功能,下面哪个设置可生效
正确答案: A, B
解析: AB 关闭了所有审计,包括 select。
13、目前plan hint 支持哪种 scan 方式
正确答案: A, B, D
解析: 当前GBase 8c的plan hint 功能暂不支持 BitmapIndexscan 扫描方式。
14、使用 gs_restore 可以恢复哪种格式的备份文件?
正确答案: A, B, C, D
解析: gs_restore 支持纯文本、自定义归档、目录归档、tar 归档格式。
15、逻辑备份中有哪些备份格式?
正确答案: A, B, C, D
解析: 逻辑备份支持纯文本格式、自定义归档格式、目录归档格式、tar归档格式。
16、plan hint 支持哪几种 join 方式?
正确答案: A, C, D
解析: plan hint 暂不支持 Semi Join。
17、关于 Explain 语句,描述正确的是?
正确答案: A, D
解析: B 选项:指定 ANALYZE 或者 ANALYSE 选项可以显示实际的语句执行时长。C 选项:Explain 能够分析除了 SELECT 语句之外的 DML 操作。
18、判断哪些选项可以进行审计?
正确答案: A, B, C, D
解析: 常用的审计项有:用户登录、注销审计、数据库启动、停止、恢复和切换审计、用户锁定和解锁审计、用户访问越权审计、授权和回收权限审计、具体表的 INSERT、UPDATE 和 DELETE 操作审计、SELECT 操作审计、COPY 审计、存储过程和自定义函数的执行审计、SET 审计、数据库对象的 CREATE、ALTER、DROP 操作审计。
19、如何查看用户 test 被恶意锁定?
正确答案: B, D
解析: 通过审计日志查看账号使用情况,使用 type 和 object_name 都可以精准查看。
20、GBase 8c 支持哪种存储方式?
正确答案: A, B, C
解析: GBase 8c 支持行存、列存、内存三种存储方式。
21、以下数据类型中,占用 4 个字节的是?
正确答案: A, B
解析: C 选项:DOUBLE PRECISION 占用 8 字节;D 选项:TIMESTAMP 占用 8 字节。
22、关于 GBase 8c 中的视图,以下描述正确的是?
正确答案: A, C, D
解析: 物化视图无法像普通表那样进行数据更新,需要使用 REFRESH 从基表获取更新数据。
23、安装 GBase 8c 数据库时,需要以下哪些软件依赖?
正确答案: A, B, D
解析: GBase 8c 不需要 libusb 依赖。
24、下列哪些针对多模多态的分布式数据库 GBase 8c 的描述是正确的?
正确答案: A, B, C, D
解析: 全部正确。
25、下列哪些针对多模多态的分布式数据库 GBase 8c 的描述是正确的?
正确答案: B, D
解析: A 列存表主要面向 OLAP 场景设计,例如数据统计报表分析。C: 目前支持行存和列存的互相调用。
判断题
1、GBase 8c 的弹性伸缩功能,是按表做扩缩容,在建表时指定该表为一致性 hash 表或普通表,一般建议大表做普通 hash 表,小表做一致性 hash 表。
正确答案: 错误
解析: GBase 8c 目前的方案是按表做 hash,做扩容/缩容。建表时可指定该表为一致性 hash 表或普通表,其中一致性 hash 表在扩缩容时性能较好,但是因为表拆分太多导致增删改查都慢,一般建议大表可以创建一致性 hash,小表采用普通 hash 表(建表默认是普通 hash)。
2、GBase 8c 的全局死锁解除特性,需要在发生死锁的时候,手工指定退出的事务。
正确答案: 错误
解析: GBase 8c 检测到全局死锁时,将自动解除。
3、GBase 8c 的原位更新技术,是将 dead tuple 集中存放在 undo 的方式。
正确答案: 正确
解析: GBase 8c 原位更新技术,类似于 MySQL undo 功能。
4、MOT 是一种内存数据库存储引擎,其中所有表和索引完全驻留在内存中。同时,事务更改(WAL)同步到磁盘上来保证严格一致性。
正确答案: 正确
解析: MOT 内存表,支持 ACID 特性。
5、GBase 8c 采用了业界主流的 2pc 的方式,解决分布式一致性的问题。
正确答案: 正确
解析: GBase 8c 采用 2pc 的方式,解决分布式一致性的问题。
6、GBase 8c 的 CN 节点不支持在线扩容;
正确答案: 错误
解析: GBase 8c CN、DN、GTM 组件都支持在线扩容。
7、GBase 8c 的在线扩容功能,只能支持 2n 倍的扩容(n 为当前 DN 分片数)。
正确答案: 错误
解析: GBase 8c 的在线扩容功能,支持任意节点的扩容。
8、MOT 是一种内存数据库存储引擎,其中所有表和索引完全驻留在内存中。同时,事务更改(WAL)同步到磁盘上来保证严格一致性。
正确答案: 正确
解析: MOT 内存表,支持 ACID 特性。
9、GBase 8c 的事务状态保持能力,需要人工指定接管 CN。
正确答案: 错误
解析: 当 CN 故障后,其他存活的 CN 节点,将自动接管。
10、DBeaver 可以运行在 Windows、Linux、macOS 等操作系统。
正确答案: 正确
解析: DBeaver 基于 Java 开发,可以运行在 Windows、Linux、macOS 等操作系统。
11、不同的模式下,创建的数据库表名必须不同,以保证唯一性。
正确答案: 错误
解析: 不同的模式下,创建的数据库表等数据库对象的名称可以相同。
12、物化视图是会创建一个实际的数据表来和基表进行映射,当基表发生数据变更时,物化视图中的数据也会自动发生变化。
正确答案: 错误
解析: 物化视图以类表的形式存储结果,但无法像普通表那样进行数据更新,需要使用 REFRESH 从基表获取更新数据。
13、可以在创建 schema 时,对并发连接数进行限制。
正确答案: 错误
解析: 创建 database 时,可以对连接数进行限制,而创建 schema 时不能。
14、在使用 CREATE SYNONYM 创建同义词时,如果所关联的数据库对象不存在,则执行报错。
正确答案: 错误
解析: 创建同义词时,所关联的对象可以不存在。
15、GBase 8c 在不指定时,默认使用 hash 分片,分布式键按照顺序为第一个字段。
正确答案: 错误
解析: GBase 8c 在不指定分布键时,默认使用 hash 分片,第一个满足 hash 算法的字段作为分布式键。
16、关于 Stream 执行计划与 FQS(Fast Query Shipping)执行计划最大的不同是:Stream 执行计划不涉及不同 DN 之间的数据交换,而 FQS 则相反。
正确答案: 错误
解析: Fast Query Shipping 在执行过程中,DN 节点之间无数据交互,Stream 执行计划则相反。
17、当 broadcast 与 redistribute 均能实现查询的一个 Stream 执行计划中,在优化器选择执行路径,倾向于将大表做广播,小表做重分布。
正确答案: 错误
解析: 倾向于将小表做广播,大表做重分布,以达到减少数据传输量,降低资源消耗的目的。
18、PBE 的方式执行语句的目的是用来尽量减少SQL硬解析流程,提升效率。
正确答案: 正确
解析: 对于同一条SQL查询语句多次重复执行,而只是查询条件入参不同,优化器可以利用 PBE 的方式执行,来减少硬解析流程,提升效率。
19、在指定行数hint的语法中,# 符号表示使用符号后面常量值作为指定的行数
正确答案: 正确
解析: # 表示直接使用后面的行数进行hint。
20、Plan hint 支持指定行数的 hint,表示可以指定最终返回客户端的结果集行数大小。
正确答案: 错误
解析: 指定行数的 hint 表示的是中间结果集的大小。
21、GBase 8c 拥有多种分布式执行计划,其目的是为了实现分布式架构下性能和资源的最大化利用。
正确答案: 正确
解析: FastQueryShipping 在执行过程中,DN 节点之间无数据交互,Stream 执行计划则相反。
22、修改审计开关需要重启数据库生效。
正确答案: 错误
解析: 修改审计开关不需要重启数据库。
23、GBase 8c 创建表的时候支持复制模式?
正确答案: 正确
解析: GBase 8c 支持分片表和复制表。
24、GBase 8c 行存表支持显示关键字指定压缩级别?
正确答案: 正确
解析: GBase 8c 行存表可通过关键字 compressive 指定压缩算法,compress_level 指定压缩级别。
25、FLOAT【(p)】类型占用的存储空间为 8 字节。
正确答案: 错误
解析: 不同的精度下,选择 REAL(4 字节)或 DOUBLE PRECISION(8 字节)作为内部表示。
26、在 GBase 8c 中,用户和角色的创建语法一致,因此它们是完全等同的。
正确答案: 错误
解析: 用户具备登录数据库、执行 SQL 能力,而角色是一种权限的集合,默认不具备登录数据库、执行 SQL 能力。在功能定位上,用户是实体,角色是行为。因此不能把两者完全等同。
27、gsql 元命令在格式上特征是以不带引号的反斜杠(\)开头。
正确答案: 正确
解析: 在 gsql 里,元命令是任何以不带引号的反斜杠(\)开头的命令。
28、功能调试场景下,建议安装 GBase 8c 的机器的 CPU 最小配置 8 核 2.0GHz。
正确答案: 正确
解析: 与 GBase 8c 安装部署手册给出的硬件配置要求一致。
29、安装 GBase 8c 数据库,只需在部署机上关闭 SELinux 服务。
正确答案: 错误
解析: 关闭 SELinux 属于 GBase 8c 安装的准备工作,需要在每个节点上都进行,而非仅仅在部署机上进行。
30、GBase 8c 所有节点服务器上都需要完成安装准备工作。
正确答案: 正确
解析: 安装 GBase 8c 集群,关闭防火墙,关闭 SELINUX,配置 NTP 同步等准备工作需要在每个节点上进行。而上传包、修改配置文件仅需在一台部署机上进行。
写在最后
本文仅记录课后练习题以及对应答案的解析,并非 GBase 8c 实际考试考题,仅供学习参考。
往期精彩文章
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」