MySQL 8.0 OCP(1Z0-908)中文题库解析

本文涉及的产品
云数据库 RDS MySQL,集群版 2核4GB 100GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用版 2核4GB 50GB
简介: 使用 MySQL Enterprise Monitor的无代理安装监视 MySQL服务器。

作者介绍:姚远,Oracle ACE(Oracle和MySQL数据库方向),华为云MVP,《MySQL 8.0运维与优化》的作者。中国第一个Oracle高可用大师,拥有包括 Oracle 10g和12c OCM在内的20+数据库相关认证。曾任IBM公司数据库部门经理,现在一家第三方公司任首席数据库专家,服务2万+客户。

MySQL 8.0 OCP(1Z0-908)考试分中文和英文,这里是中文的题库解析。


01


使用 MySQL Enterprise Monitor的无代理安装监视 MySQL服务器。

以下哪两项功能可用于此安装方法?

A)磁盘使用情况和磁盘特征,包括磁盘顾问程序警告

B)操作系统内存利用率

C) CPU 占用率

D)与安全有关的顾问程序警告

E) MySQL 复制监视

Answer:DE

02


关于冷备份,下列哪项描述是正确的?

A)如果只需要备份数据结构而不需要备份日志文件,则很适合使用它们。

B)它们是从正在运行的数据库的快照获取的备份。

C)它们是从操作系统复制命令获取的备份。

D)当许多用户在线访问数据库时,它们很适合使用。

Answer:C

03


0racle Linux 上安装了 MySQL 8.0

请分析以下命令和输出。


mysql> SHOW GLOBAL VARIABLES  WHERE Variable_name='tmpdir'  OR Variable_name ='tmp_table_size';+----------------+----------+| Variable_name  | Value    |+----------------+----------+| tmp_table_size | 16777216 || tmpdir         | /tmp     |+----------------+----------+2 rows in set (0.00 sec)
shell> cd /var/lib/mysqlshell> ls -l |grep tempdrwkr-x---.2 mysql mysql 4056 Dec 11 14:05 #innodb_temp

关于此安装的磁盘临时表,下列哪项描述是正确的?

A)仅当将临时表配置为使用 MylSAM 时,才会在tmpdir中创建临时表。

B)临时表将使用位于datadir中的InnoDB临时表空间。

C)临时表将使用位于/tmp 中的 InnoDB 临时表空间。

D)仅当临时表到达 tmp_table_size 后,才会在 tmpdir中创建临时表。

E)在tmpdir中只会创建来自优化程序的内部临时表。

Answer:B


超过tmp_table_size 和max_heap_table_size最小值的临时表创建到磁盘上。

Tmpdir目录下创建的是临时文件,默认是/tmp

InnoDB用户创建的临时表和磁盘上的内部临时表是在MySQL数据目录中名为ibtmp1的临时表空间文件中创建的,是全局临时表空间。#innodb_temp 目录下是会话临时表空间

参见官方文档:15.6.3.5 Temporary Tablespaces

参见:MySQL的临时表--永远没有结束的故事

04


分析下面的语句和输出:




mysql>SHOW GRANTS FOR jsmith;+----------------------------------------------------------------------+| IGrants for jsmith@%                                                 |+----------------------------------------------------------------------+| IGRANT USAGE ON * * TO 'jsmith'@'%'                                 || IGRANT UPDATE (Name) ON 'world' ; country' TO 'jsmith'@'%';          |+----------------------------------------------------------------------+2 rows in set(0.00sec)

jsmith可以执行哪两条SQL语句?

A)UPDATE world.country SET Name='all;

B)UPDATE world.Country SET Name='new' WHERE Name='old;

C)UPDATE world.country SET Name='one' LIMIT1;

D)UPDATE world.country SET Name='first' ORDER BY Name LIMIT 1;

E)UPDATE world.country SET Name=CONCAT('New',Name);

Answer:AC


BDE 需要在name字段上面有select权限。具体解析参见:MySQL 8.0 OCP中文题库(1Z0-908)字段权限

05


分析以下成功执行的语句:




CREATE TABLE rental (rental id int unsigned NOT NULL AUTO INCREMENT,rental date datetime NOT NULL,inventory id int unsigned NoT NULL,customer id int unsigned NOT NULL,return date datetime DEFAULT NULL,staff id int unsigned NoT NULL,Iast update timestamp NOT NULL DEFAULT CURRENT TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,PRIMARY KEY (rental id)ENGINE-InnoDB;

现在,检查以下查询:


SELECT rental_id,customer_idFROM rentalwhere rental_date between now() - interval 1 month and now()AND inventory_id=42AND staff_id=1024;

您希望添加一个或多个索引,最大程度地减少查询工作量。

以下哪条语句可完成此任务?

A) ALTER TABLE rental

ADD INDEx(inventory_id),

ADD INDEX (staff_id)

ADD INDEX (rental_date),

ADD INDEx (customer_id);

B)ALTER TABLE rental

ADD INDEx (inventory_id, staff_id,rental_date,customer_id);

C) ALTER TABLE rental

ADD INDEx (inventory_id,staff_id customer_id, rental_id, rental_date);

D) ALTER TABLE rental

ADD INDEX (inventory_id),

ADD INDEX (staff_id)

ADD INDEX (rental_date):

E) ALTER TABLE rental

ADD INDEX (rental_date,inventory_id, staff_id, customer_id);

F) ALTER TABLE rental ADD INDEX (inventory_id,staff_id,rental_date);

答案:B

解析录像参见:MySQL 8.0 OCP中文题库(1Z0-908)索引选择

对于这个查询语句,我们可以创建一个把where条件里面的3个字段都包括的索引,按照字段的选择性从高到低进行排列



mysql> ALTER TABLE rental ADD INDEX yaoyuan1(inventory_id,staff_id, rental_date);Query OK, 0 rows affected (0.88 sec)Records: 0  Duplicates: 0  Warnings: 0
mysql>  explain SELECT rental_id,customer_id FROM rental where rental_date between now() - interval 1 month and now() AND inventory_id=42 AND staff_id=1\G*************************** 1. row ***************************           id: 1  select_type: SIMPLE        table: rental   partitions: NULL         type: rangepossible_keys: yaoyuan1          key: yaoyuan1      key_len: 9          ref: NULL         rows: 1     filtered: 100.00        Extra: Using index condition1 row in set, 1 warning (0.00 sec)

我们可以看到这个索引的过滤效果非常好,达到了100%,但还有没有更好的索引呢?有的,我们可以把要查询的字段rental_id和customer_id加入到索引中,这样这个select语句只读索引不读表即可检索到所需要的数据,减少了一个访问表的动作。因为rental_id是主键,MySQL的索引中默认已经包括了主键,因此只增加customer_id字段即可:



mysql>  ALTER TABLE rental ADD INDEX yaoyuan2(inventory_id,staff_id,rental_date,customer_id);Query OK, 0 rows affected (0.94 sec)Records: 0  Duplicates: 0  Warnings: 0
mysql>  explain SELECT rental_id,customer_id FROM rental where rental_date between now() - interval 1 month and now() AND inventory_id=42 AND staff_id=1\G*************************** 1. row ***************************           id: 1  select_type: SIMPLE        table: rental   partitions: NULL         type: rangepossible_keys: yaoyuan1,yaoyuan2          key: yaoyuan2      key_len: 9          ref: NULL         rows: 1     filtered: 100.00        Extra: Using where; Using index1 row in set, 1 warning (0.00 sec)

我们创建了这个索引后,可以看到MySQL从两个索引中选择了后者,Extra字段中的“Using index”表示只访问索引不访问表即可完成select的检索。因此这个索引的效率是最高的。

录像解析参见:

这一题做错的学员太多了,大家小心。

06


从属服务器I/O线程执行什么操作?

A)连接到主服务器并请求其发送在其二进制日志中记录的更新

B)监视和调度对中继日志子系统的1/O调用

C)读取中继日志并执行其中包含的事件

D)获取二进制日志的锁, 以便读取要发送到从属服务器的每个事件

Answer:A

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
17天前
|
存储 关系型数据库 MySQL
mysql optimizer_switch : 查询优化器优化策略深入解析
mysql optimizer_switch : 查询优化器优化策略深入解析
|
17天前
|
SQL 关系型数据库 MySQL
ClickHouse(23)ClickHouse集成Mysql表引擎详细解析
ClickHouse的MySQL引擎允许执行`SELECT`查询从远程MySQL服务器。使用`MySQL('host:port', 'database', 'table', 'user', 'password'[,...])`格式连接,支持简单`WHERE`子句在MySQL端处理,复杂条件和`LIMIT`在ClickHouse端执行。不支持`NULL`值,用默认值替换。系列文章涵盖ClickHouse安装、集群搭建、表引擎解析等主题。[链接](https://zhangfeidezhu.com/?p=468)有更多
25 0
|
17天前
|
SQL 关系型数据库 MySQL
MySQL外键约束行为解析:CASCADE, NO ACTION, RESTRICT, SET NULL
MySQL外键约束行为解析:CASCADE, NO ACTION, RESTRICT, SET NULL
17 0
|
17天前
|
存储 关系型数据库 MySQL
深入探索MySQL:成本模型解析与查询性能优化
深入探索MySQL:成本模型解析与查询性能优化
|
18天前
|
存储 关系型数据库 MySQL
MySQL Doublewrite Buffer(双写缓冲区)深入解析:原理及作用
MySQL Doublewrite Buffer(双写缓冲区)深入解析:原理及作用
|
26天前
|
XML Java 数据格式
深度解析 Spring 源码:从 BeanDefinition 源码探索 Bean 的本质
深度解析 Spring 源码:从 BeanDefinition 源码探索 Bean 的本质
28 3
|
11天前
|
存储 安全 Java
深度长文解析SpringWebFlux响应式框架15个核心组件源码
以上是Spring WebFlux 框架核心组件的全部介绍了,希望可以帮助你全面深入的理解 WebFlux的原理,关注【威哥爱编程】,主页里可查看V哥每天更新的原创技术内容,让我们一起成长。
|
12天前
|
关系型数据库 分布式数据库 数据库
PolarDB-X源码解析:揭秘分布式事务处理
【7月更文挑战第3天】**PolarDB-X源码解析:揭秘分布式事务处理** PolarDB-X,应对大规模分布式事务挑战,基于2PC协议确保ACID特性。通过预提交和提交阶段保证原子性与一致性,使用一致性快照隔离和乐观锁减少冲突,结合故障恢复机制确保高可用。源码中的事务管理逻辑展现了优化的分布式事务处理流程,为开发者提供了洞察分布式数据库核心技术的窗口。随着开源社区的发展,更多创新实践将促进数据库技术进步。
18 3
|
26天前
|
XML Java 数据格式
深度解析 Spring 源码:揭秘 BeanFactory 之谜
深度解析 Spring 源码:揭秘 BeanFactory 之谜
22 1
|
1月前
|
SQL 缓存 算法
【源码解析】Pandas PandasObject类详解的学习与实践
【源码解析】Pandas PandasObject类详解的学习与实践

推荐镜像

更多