WorkBench操作云上数据库

简介: 本场景介绍利用WorkBench操作云上数据库并设计查询语句SQL。

WorkBench操作云上数据库

1. 创建资源

开始实验之前,您需要先创建实验相关资源。

  1. 在实验室页面,单击创建资源
  2. (可选)在实验室页面左侧导航栏中,单击云产品资源列表,可查看本次实验资源相关信息(例如IP地址、子用户信息等)。

说明:资源创建过程需要3~5分钟视资源不同开通时间有所差异,ACK等资源开通时间较长。完成实验资源的创建后,您可以在云产品资源列表查看已创建的资源信息,例如:子用户名称、子用户密码、AK ID、AK Secret、资源中的项目名称等。

实验环境一旦开始创建则进入计时阶段,建议学员先基本了解实验具体的步骤、目的,真正开始做实验时再进行创建。

资源创建成功,可在左侧的资源卡片中查看相关资源信息以及RAM子账号信息


2. 实验步骤

  1. 更新yum源。

执行如下命令,更新MySQL的yum源。

rpm -Uvh http://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm

返回结果如图1所示,表示yum源更新完成。

图1 更新MySQL安装源

  1. 安装MySQL并查看版本。

2.1 执行如下命令,安装MySQL。

yum -y install mysql-community-server --nogpgcheck

2.2 执行如下命令,查看MySQL版本。

mysql -V

返回结果如图2所示,表示您已安装MySQL并查看版本。

图2 安装MySQL并检查版本

  1. 启动MySQL服务,并将其设置为开机自启动。

3.1 执行如下命令,启动MySQL。

systemctl start mysqld

3.2 执行如下命令,将MySQL设置为开机自启动。

systemctl enable mysqld

返回结果如图3所示,表示您已成功启动MySQL并设置为开机自启动。

图3 启动MySQL并将其设置为开机自启动

  1. 设置MySQL的root用户密码。

4.1 执行如下命令,获取root用户的初始密码。

grep 'temporary password' /var/log/mysqld.log

在返回结果中您可以查看到root用户的初始密码。

4.2 执行如下命令,使用root用户登录数据库。

mysql -uroot -p

4.3 在“Enter password”处输入4.1步骤查找到的密码,完成后成功进入MySQL操作界面。

4.4 执行如下命令,在MySQL操作窗口界面修改密码安全策略为低,使其只校验密码长度,要求至少8位。

set global validate_password_policy=0;

4.5 执行如下命令,修改root用户初始密码,其中12345678为修改完成的新密码。此处的12345678可根据需要自行设置,本实验后续的操作中暂以它为例。

ALTER USER 'root'@'localhost' IDENTIFIED BY '12345678';

查看root用户初始密码并设置其新密码的操作过程如图4所示。

图4 查看root用户初始密码并设置新密码。

4.6 执行如下命令,对root用户完成授权,以便第三方数据库连接软件能够正常连上云端数据库。

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '12345678';
  1. 下载Workbench。

注意:如果您的本地计算机中已经安装有Workbench,则可省略下载和安装的步骤,直接进入“7. 打开并使用Workbench”步骤。

从Workbench官网https://dev.mysql.com/downloads/workbench/上下载Workbench最新版本,下载前注意选择相应的操作系统版本。目前支持的操作系统有:Windows、UbuntuLinux、RedHat Linux、Fedora、macOS等。这里选择Windows版,单击download,界面如图5所示。进入注册页面后,可以选择不注册下载,如图6所示。

图5 下载Workbench界面

图6 选择不注册下载

  1. 安装WorkBench。

打开下载完成的Workbench软件,本场景中文件名为“mysql-workbench-community-8.0.31-winx64.msi”(由于操作系统的差异及软件版本的更新原因,不同场景中下载到的安装文件的名称可能不同),按照提示进行安装,安装过程中会出现选择安装模式的选项,可以选择完全安装或自定义安装。安装初始界面如图7所示。

图7 Workbench安装初始界面

  1. 打开Workbench并连接云数据库。

7.1 从开始菜单打开Workbench,在打开的Workbench主页上选择MySQLConnections右侧的+图标,如图8所示。

图8 解压完成后的bootstrap目录

7.2 进入设置新连接窗口后,在Connection Name处输入连接名称,可以自己命名。在Hostname处输入云数据库中的ECS公网地址,此地址可从实验资源页面中查询得到。在Username处输入root。在Password处单击Storein Vault…,在弹出页面中输入前述MySQL中root用户所设置的新密码,本场景中为12345678。上述几项内容填写完成后,单击右下角的OK即可完成设置。整个云数据库信息设置如图9所示。

图9 云数据库连接信息设置页面

7.3 上述设置完成后,在Workbench主页面中会显示刚才新建的数据库连接,如图10所示。

图10 已经建立好新连接的Workbench主页面

7.4 双击该连接则可进入此连接数据管理主页面,页面中包含了连接名称及数据库及表导航区、查询设计区、结果及输出区等区块,如图11所示。

图11 已经建立好新连接的Workbench主页面

  1. 新建数据库及数据表。

8.1 新建数据库。

在图12的数据库及表导航区空白处点击鼠标右键,在弹出菜单中选择CreateSchema…,在查询设计区会出现新建数据库页面,在Name处设置数据库名,再按图12所示选择字符集,最后需要单击Apply所建数据库才能真正写入云数据库。上述设置过程如图12所示。

图12 创建数据库并设置相应参数

数据库新建完成后可在云端利用show databases;命令进行验证,验证结果如图13所示。

图13 云端验证数据库建立情况

8.2 新建数据表。

借阅管理数据库成功建立后,在数据库及表导航区会看到所建的数据库,单击借阅管理,在Tables单击右键,选择Createtable…,在设计区出现新建表页面,在Table Name中输入“读者”,选择utf8utf8_general_ci作为字符集和collation集,按照表1所示结构建立“读者”表的表结构,所有设置完成后单击Apply按钮,整个设置如图14所示。

表1 “读者”表结构

字段名称

类型

大小

主键

空值

缺省值

学号

CHAR

10

姓名

CHAR

50

性别

CHAR

1

年龄

INT

专业

CHAR

10

图14 创建数据表并设置相应参数

读者表创建完成后,左导航栏将显示读者表。右键单击读者表,在弹出菜单中选择SelectRows>Limit 1000,进入记录输入界面后,按表2中所示信息向读者表中插入记录,完成后单击Apply,如图15所示。

特别注意:在输入记录的时候,可以采用复制粘贴的方法来实现,即首先在Word中选择要复制的记录(只选记录,不选字段),然后在Workbench中对应表(此处为借阅表)的记录最前面(不在任何字段上)右键单击,在弹出菜单中选择Paste Row

表2 “读者”表数据记录

学号

姓名

性别

年龄

专业

2013230001

吴西

18

计应

2013230002

杨七

22

计应

2013230003

周南

19

计应

2013230004

王天一

21

计应

2013230005

陈晴

17

计应

图15 表中插入记录

按照上述方法,根据表3在借阅管理数据库中创建图书表,并根据表4内容向图书表中插入记录;根据表5在借阅管理数据库中创建借阅表,并根据表6内容向借阅表中插入记录。两表创建完成并插入记录后的效果如图16和图17所示。

表3 图书表表结构

字段名称

类型

大小

主键

空值

缺省值

图书号

CHAR

4

书名

CHAR

10

单价

INT

表4 图书表的记录

图书号

书名

单价

AK01

大学计算机

25

AK02

计算机应用

30

AK03

数据结构

35

AK04

操作系统

21

图16 新建“图书”表,并插入记录

表5 借阅表表结构

字段名称

类型

大小

主键

空值

缺省值

学号

CHAR

10

图书号

CHAR

4

借期

INT

表6 借阅表的记录

学号

图书号

借期

2013230001

AK01

79

2013230001

AK02

15

2013230001

AK03

56

2013230002

AK01

12

2013230003

AK01

65

2013230003

AK02

100

图17 新建“借阅”表,并插入记录

  1. 修改表结构。

修改要求:将图书表中的单价由原来的INT型改为FLOAT型

在Workbench左导航栏中找到图书表,并在其上单击右键,并在弹出的菜单中选择AlterTable…,进入表结构修改页面。选择单价字段,在类型下拉列表中将类型由原来的INT型修改为FLOAT型,修改页面如图18所示。

图18 修改图书表的表结构

  1. 查询设计。

查询要求:

A.查询单价不低于25元,且书名中包含“计算机”的所有图书,显示书名和单价。

B.查询借期大于50天的所有读者的学号、姓名、专业、借期、图书号和书名。

C.统计每位同学借书的数量,显示学号和借阅数量。

A查询仅涉及一个图书表,结果数据集要求显示图书名和单价,记录过滤条件之一是单价不低于25元,另一个过滤条件是书名中包含计算机。根据上述条件可写出该查询的SQL语句如下:

select 图书名,单价
from 借阅管理.图书
where 单价>=25and 书名 like ‘%计算机%’;

在MySQL Workbench中新建一个SQL脚本文件,在脚本中输入上述SQL语句,执行脚本,并将SQL脚本文件保存为db02_sql1.sql,执行后的的结果如图19所示。

图19 查询1新建脚本并执行的效果示意

仿照设计查询A的过程,设计查询B和查询C,并分别将查询结果的SQL脚本保存为db02_sql2.sql和db02_sql3.sql。


3. 实验要求

  1. 请将上面实验的每一步截图,至少需要8张图,图片中应该能够体现自己亲自做的实验,图片名称分别用e8-1.jpg、e8-2.jpg、……、e8-n.jpg保存,并连同3个SQL脚本文件一同打包,并提交到学习平台上,压缩包格式统一为zip格式。
  2. 西安交通大学的同学,请将文件命名为“你的学号-db02.zip”;非西安交通大学的同学,请将文件命名为“你的学校-你的姓名-db02.zip”或“你的姓名-db02.zip”。
  3. 所有文档请于实验截止日期前提交。

实验链接:https://developer.aliyun.com/adc/scenario/f5b26e1317314e3b97acb9aa2a14e64c

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
2月前
|
存储 SQL 关系型数据库
使用MySQL Workbench进行数据库备份
【9月更文挑战第13天】以下是使用MySQL Workbench进行数据库备份的步骤:启动软件后,通过“Database”菜单中的“管理连接”选项配置并选择要备份的数据库。随后,选择“数据导出”,确认导出的数据库及格式(推荐SQL格式),设置存储路径,点击“开始导出”。完成后,可在指定路径找到备份文件,建议定期备份并存储于安全位置。
375 11
|
17天前
|
存储 关系型数据库 MySQL
Maria DB Workbench支持哪些数据库引擎
【10月更文挑战第17天】Maria DB Workbench支持哪些数据库引擎
8 0
|
17天前
|
存储 SQL 关系型数据库
MySQL Workbench支持哪些数据库引擎
【10月更文挑战第17天】MySQL Workbench支持哪些数据库引擎
13 0
|
4月前
|
存储 自然语言处理 DataWorks
通过云上数据库三步构建RAG系统
本文介绍了如何使用OpenSearch LLM智能问答版通过云上数据库一站式构建RAG系统。
20117 10
|
4月前
|
Oracle 关系型数据库 Java
实时计算 Flink版操作报错合集之cdc postgres数据库,当表行记录修改后报错,该如何修改
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
|
4月前
|
SQL 监控 关系型数据库
实时计算 Flink版操作报错合集之在设置监控PostgreSQL数据库时,将wal_level设置为logical,出现一些表更新和删除操作报错,怎么办
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
|
4月前
|
关系型数据库 Java 数据库
实时计算 Flink版操作报错合集之flinksql采PG数据库时报错,该如何解决
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
|
4月前
|
关系型数据库 MySQL 数据库
实时计算 Flink版操作报错合集之在处理PostgreSQL数据库遇到报错。该如何解决
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
|
4月前
|
消息中间件 关系型数据库 数据库
实时计算 Flink版操作报错合集之在使用RDS数据库作为源端,遇到只能同步21个任务,是什么导致的
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
|
4月前
|
SQL 数据库 Python
Django框架数据库ORM查询操作(6)
【7月更文挑战第6天】```markdown Django ORM常用数据库操作:1) 查询所有数据2) 根据ID查询 3) 精确查询 4) 分页排序
66 1