第 1 章 绪论
了解数据库人才需求
要求:
- 在招聘网站(网站不限)做如下调查
- 搜索关键字:数据库或 MySQL
- 了解与数据库相关,有哪些不同工作岗位,待遇如何
- 了解不同岗位对数据库技能有哪些要求,差异是什么
- 了解哪些 DBMS 系统比较受企业欢迎
搭建实验环境
- 第一步:安装虚拟机软件
- 已经安装过虚拟机软件的跳过此步
- VMWare Workstation 或 VisualBox 二选一
- 第二步:下载 Ubuntu linux ISO 镜像
- 第三步:安装 Ubuntu Linux 虚拟机
- 第四步:下载并安装 XShell 软件
- 第五步:安装 MySQL 8.0
- 详细安装步骤请参考:从零搭建实验环境
配置实验环境
按照下面的操作步骤,配置 git 参数。
- 配置 git 的 user.name 和 user.email 参数,否则
git commit
不能正常工作 - 运行命令
git config --list
,查看当前的 git 配置信息 - 如果没有配置 user.name 和 user.email 参数,请执行下面的操作
- 运行命令
git config --global user.email "Your Email"
,配置 user.name 参数 - 运行命令
git config --global user.name "Your Name"
,配置 user.email 参数 - 注意,上面两个命令需要把双引号中的文字改成具体的姓名和邮箱
- 运行命令
git config --list
,查看刚配置的 git 参数
熟悉实验环境的使用
- 熟悉常用的 linux 命令用法
- 熟悉 Git 命令的用法
启动实验环境
操作步骤如下:
- 运行 vmware 虚拟机软件,打开 vmware 程序窗口
- 启动 lab linux 虚拟机
- 打开 xshell 软件
- 连接到 lab linux 虚拟机
- 在 xshell 中使用开发环境
- 注意:如果没有特殊情况,都是在 xshell 中操作 linux 虚拟机
关闭实验环境
操作步骤如下:
- 切换到 XShell 终端窗口
- 输入
sudo shutdown -h now
命令,关闭 linux 操作系统 - XShell 的窗口为 DOS 命令行
- 在 DOS 命令行,输入
exit
命令,关闭 XShell 会话窗口 - XShell 窗口关闭后,关闭 VMware 程序窗口
使用 MySQL 帮助
要求:
- 使用 MySQL 官方手册
- 浏览器打开 MySQL 手册,添加到收藏夹里
- 反复仔细阅读并理解网站左侧的每个导航项,导航项是 MySQL 手册的目录,做到心中有数
- 导航上面的搜索框中输入关键字
select
,点击第一个搜索项,浏览该页面,并观察对应的左侧导航项 - 导航上面的搜索框中输入关键字
show
,点击SHOW Statements
搜索项,浏览该页面,并观察对应的左侧导航项 - 导航上面的搜索框中输入关键字
mysql_config_editor
,点击第一个搜索项,浏览该页面,并观察对应的左侧导航项 - .
- 使用 MySQL 客户端帮助
- 控制台输入,
mysql --help
浏览这个帮助信息 - 控制台进入 MySQL 客户端界面,
mysql -h 127.0.0.1 -u root -pddd
- 逐行阅读 MySQL 的提示信息
- 输入
help
命令,逐行阅读 MySQL 客户端的命令、快捷键及功能 - 尝试这些功能,有不明白的地方去 MySQL 手册搜索答案
- 输入
help select
命令,阅读该帮助文档 - 输入
help contents
命令,根据提示信息,进一步阅读你感兴趣的话题 - 退出 MySQL 客户端
- .
- 阅读 MySQL 客户端快捷键用法
- 在 MySQL 客户端中练习和理解这些快捷键的用法
安装 MySQL GUI 客户(可选)
方案一:MySQL Workbench
- 从 MySQL 官网下载 MySQL Workbench windows 安装包
- 运行安装包,安装 MySQL Workbench
- 配置 MySQL Workbench 连接 mocha 虚拟机中的 MySQL Server
- MySQL Workbench 的安装和使用方法,请参考 MySQL 官方手册,或在 B 站搜索相关视频
方案二:VSCode + SQLTools 插件
- 从 Visual Studio Code 官网下载 VSCode 安装包
- 运行安装包,安装 VSCode
- 运行 VSCode,安装 SQLTools 插件,参考 B 站视频
基于文件的数据管理
要求:
- scores.csv 是学生成绩的 excel 表格,有近四百位学生的三门课程的成绩
- 下载
scores.csv
数据文件 - 创建
dbms-demo
仓库 - 在
dbms-demo
目录下,创建01-introduction
文件夹 - 在
01-introduction
目录下,创建score.c
代码文件 - 编写 C 程序,实现对学生成绩数据,增加、修改、删除和查询的功能
- 对学生成绩的操作保存在
scores.csv
中 - 运行并测试程序
- 程序功能和操作界面参考如下图:
- 编写 bash 脚本,实现同样的功能(选做)
- 使用程序的时候,输入错误数据,观察程序是否能正常工作
- 思考数据文件的格式发生下面的改变,程序是否可以正常运行
- 课程字段排列顺序改变
- 字段的间隔不是逗号,而是制表符或者空格
- 思考如果希望用户通过网络远程访问数据文件,如何实现
- 思考如果多个人同时修改或访问
score.csv
数据文件,会怎样
数据库系统
要求:
- 在纸上或软件上绘制数据库系统框架图,绘制时不要看书、幻灯片等参考资料
- 在实验环境中执行下面的命令行操作
- 在 MySQL 中查找变量,确定数据库存放的路径,把路径记录在上面的图中
- 在 MySQL 中查看有哪些数据库,把数据库的名称记录在上面的图中
- 在数据库存放的路径中,查看是否有每个数据库对应的目录
- 检查其中一个数据库目录下面的文件,把文件名称记录下来
- 在 MySQL 中找出这个数据库中的表名称,跟上一步的文件名进行比对
- 查看 linux 上运行的进程,找到 MySQL 守护进程,确定该进程的命令
- 查看 MySQL 守护进程的运行状态,查看该守护进程的用户手册
- 查看该守护进程程序所在的目录,查看该目录下有哪些 MySQL 相关的程序,了解他们的作用
- 查找 MySQL 客户端程序的安装目录,查看该目录下有哪些 MySQL 相关的程序,了解他们的作用
- 在纸上或软件上绘制数据库系统的详细框架图和 MySQL 系统框架图,可以照着画
数据模型
要求:
- 在纸上或软件上绘制三级数据模型图,绘制时不要看书、幻灯片等参考资料
- 绘制完成后,根据资料,对自己的图形进行修订
- 要求概念数据模型(E-R 图)和逻辑数据模型(数据库模式图)保持一致
- 在图的下方,用文字标注如下内容
- 模型是什么,模型的作用,如何创建模型
- 三级数据模型的作用
- 三级数据模型的分类
数据库模式
要求:
- 在纸上或软件上绘制三级数据数据库模式图,绘制时不要看书、幻灯片等参考资料
- 绘制完成后,根据资料,对自己的图形进行修订
- 在图的下方,用文字标注如下内容
- 模式是什么,模式的作用,如何创建模式
- 三级数据库模式的作用或存在的意义
- 三级数据库模式的分类名称
- 为什么外模式可以有多个
- 为什么外模式也叫子模式
- 三级模式如何实现模式映射和数据独立性的
- 分别解释两种数据独立性