一、前言

  在此之前笔者写过一篇博客《你说精通MySQL其实很菜jī(1):你不一定会的基本技巧或知识点(值得一看)》,本文内容是从那篇博客截取出来的。我们要学习MySQL相关的技术点,使用官方提供的测试数据库肯定是最好的选择,因为会非常地全面。
 
  与MySQL相关的安装部署博客如下:

最新MySQL-5.7.40在云服务器Centos7.9安装部署
 
写最好的Docker安装最新版MySQL8(mysql-8.0.31)教程(参考Docker Hub和MySQL官方文档)

  本文由 @大白有点菜 原创,请勿盗用,转载请说明出处!如果觉得文章还不错,请点点赞,加关注,谢谢!

二、MySQL官方示例数据库(Employees)下载并安装

  MySQL官方提供一个示例数据库 Employees 以供大家测试。官网中是这么介绍 Employees 示例数据库的:

  Employees 示例数据库由 Patrick Crews 和 Giuseppe Maxia 开发,提供了分布在六个单独表上的大量数据(大约 160MB)的组合,总共包含 400 万条记录。该结构与广泛的存储引擎类型兼容。通过包含的数据文件,还提供了对分区表的支持。
 
  除了基础数据之外,Employees 数据库还包括一套可以跨测试数据执行的测试,以确保您加载的数据的完整性。这应该有助于确保初始加载期间的数据质量,并且可以在使用后使用以确保在测试期间没有对数据库进行任何更改。

  【Employees 示例数据库简介 - 官方文档】:
  https://dev.mysql.com/doc/employee/en/employees-introduction.html
 

 
  【Employees 示例数据库安装 - 官方文档】:
  https://dev.mysql.com/doc/employee/en/employees-installation.html
 

 
  【Employees 示例数据库github下载地址,这里最新是 1.0.7 版】:
  https://github.com/datacharmer/test_db/releases/tag/v1.0.7
 
(1)github上下载Employees 示例数据库,如果下载不了,那就采用手动上传的方式。注意,可以下载到指定路径,笔者是直接下载到Centos最顶层的目录,使用命令 cd ~ 即可切换到那里。

wget 'https://codeload.github.com/datacharmer/test_db/zip/master' -O test_db-master.zip


 
(2)解压 test_db-master.zip 压缩包,并切换到 test_db-master 目录下查看有哪些文件。我们要关注 employees.sql 脚本,里面有执行还原数据库的操作。

unzip test_db-master.zip
cd test_db-master


 
(3)安装 Employees 数据库:Centos上直接安装MySQL的。

  • 使用 mysql 命令执行 employees.sql 脚本还原 employees 数据库。
mysql -u root -p123456 < employees.sql
  • 连接 mysql 数据库。
mysql -u root -p123456
  • 切换到 employees 数据库。
use employees;
  • 查看 employees 数据库所有表。
show tables;


 

(4)安装 Employees 数据库:Docker上启动MySQL容器的。
 
【Docker启动MySQL容器相关系列安装部署教程】

写最好的Docker安装最新版MySQL8(mysql-8.0.31)教程(参考Docker Hub和MySQL官方文档)
 
Docker安装最新版MySQL5.7(mysql-5.7.40)教程(参考Docker Hub)

1)此步很重要,一定要将 Employees 数据库有关的数据文件(employees.sql、show_elapsed.sql、load_departments.dump、load_employees.dump、load_dept_emp.dump、load_dept_manager.dump、load_titles.dump、load_salaries1.dump、load_salaries2.dump、load_salaries3.dump)复制到 MySQL 容器挂载的数据目录下,不然执行 employees.sql 脚本文件会报错!笔者运行MySQL容器挂载的数据目录是 /mydata/mysql/data/

cp ~/test_db-master/employees.sql show_elapsed.sql *.dump /mydata/mysql/data/

2)方法一执行 employees.sql 脚本。这种方式虽然有点麻烦,但是不用进入到MySQL容器中去执行 employees.sql 脚本。需要修改复制到 /mydata/mysql/data/ 目录下的 employees.sql 文件。修改有两种方式,建议使用第一种。

  • 方便)第一种方式修改 /mydata/mysql/data/ 目录下的 employees.sql 文件,使用 sed 命令匹配每个数据文件名称,并在其前面添加 /var/lib/mysql/ 路径,这路径是 mysql 的数据目录。“\”反斜杠代表转义符,主要转义“/”这个路径符号
sed -i 's/load_departments.dump/\/var\/lib\/mysql\/load_departments.dump/' /mydata/mysql/data/employees.sql
sed -i 's/load_employees.dump/\/var\/lib\/mysql\/load_employees.dump/' /mydata/mysql/data/employees.sql
sed -i 's/load_dept_emp.dump/\/var\/lib\/mysql\/load_dept_emp.dump/' /mydata/mysql/data/employees.sql
sed -i 's/load_dept_manager.dump/\/var\/lib\/mysql\/load_dept_manager.dump/' /mydata/mysql/data/employees.sql
sed -i 's/load_titles.dump/\/var\/lib\/mysql\/load_titles.dump/' /mydata/mysql/data/employees.sql
sed -i 's/load_salaries1.dump/\/var\/lib\/mysql\/load_salaries1.dump/' /mydata/mysql/data/employees.sql
sed -i 's/load_salaries2.dump/\/var\/lib\/mysql\/load_salaries2.dump/' /mydata/mysql/data/employees.sql
sed -i 's/load_salaries3.dump/\/var\/lib\/mysql\/load_salaries3.dump/' /mydata/mysql/data/employees.sql
sed -i 's/show_elapsed.sql/\/var\/lib\/mysql\/show_elapsed.sql/' /mydata/mysql/data/employees.sql
  • 麻烦)第二种方式修改 /mydata/mysql/data/ 目录下的 employees.sql 文件,手动编辑 employees.sql 文件,并在每个数据文件名称前面添加 /var/lib/mysql/ 路径。
vim /mydata/mysql/data/employees.sql
/var/lib/mysql/

  • docker exec -i 命令运行MySQL容器,并使用 mysql 命令执行 employees.sql 脚本还原 employees 数据库。参数 -i 后面可以是 容器名称 或者 容器id(两种写法)
docker exec -i mysql sh -c 'exec mysql -uroot -p"$MYSQL_ROOT_PASSWORD"' < /mydata/mysql/data/employees.sql

或者

docker exec -i 673 sh -c 'exec mysql -uroot -p"$MYSQL_ROOT_PASSWORD"' < /mydata/mysql/data/employees.sql

  • 测试 employees 数据库是否已经安装好,这里只查询 departments 表的数据(两种写法)。
docker exec -i mysql sh -c 'exec mysql -uroot -p"$MYSQL_ROOT_PASSWORD" -e "use employees;" -e "select * from departments;"'

或者

docker exec -i 673 sh -c 'exec mysql -uroot -p"$MYSQL_ROOT_PASSWORD" -e "use employees;" -e "select * from departments;"'


 
3)方法二执行 employees.sql 脚本。这种方式需要进入到MySQL容器中去执行 employees.sql 脚本,不需要修改 employees.sql 文件。

  • 进入到MySQL容器(两种写法)。
docker exec -it mysql /bin/bash

或者

docker exec -it 673 /bin/bash
  • 切换到 /var/lib/mysql 目录。
cd /var/lib/mysql
  • 使用 mysql 命令执行 employees.sql 进行数据库还原(两种写法)。
mysql -u root -p"$MYSQL_ROOT_PASSWORD" < employees.sql

或者

mysql -u root -p123456 < employees.sql
  • 测试 employees 数据库是否已经安装好,这里只查询 departments 表的数据(两种写法)。
mysql -u root -p"$MYSQL_ROOT_PASSWORD" -e 'use employees;' -e 'select * from departments;'

或者

mysql -u root -p123456 -e 'use employees;' -e 'select * from departments;'

下载和安装MySQL官方提供的示例数据库(Employees)相关推荐

  1. MySQL官方提供的测试数据库脚本和数据文件下载

    网盘下载链接: [sakila database]链接: https://pan.baidu.com/s/1qo0ybhid4DpyVVrhtxjwCQ 提取码: 5dqb [world.sql]链接 ...

  2. MySQL 示例数据库 employees 的导入与使用

    导入 MySQL 示例数据库 employees 本博客记录将 employees.db 数据库导入本地 MySQL 数据库中. 文章目录 导入 MySQL 示例数据库 employees 1. 导入 ...

  3. centos7.3 mysql创建数据库_CentOS7安装MySQL及创建用户和数据库

    一.安装数据库 1 下载并安装MySQL官方的 Yum Repository [root@localhost ~]# wget -i -c http://dev.mysql.com/get/mysql ...

  4. 下载和安装MySQL(傻瓜)教程

    下载和安装MySQL傻瓜教程 1.下载MySQL 2.安装 安装mysql时一直卡在starting the server这一位置,解决办法 3.检查是否安装成功 4.安装成功后进行登录 1.下载My ...

  5. 下载并安装MySQL(详细过程)

    下载并安装MySQL 一. 下载MySQL 官网地址 https://dev.mysql.com/downloads/mysql/ 如下图所示 选择对应的操作系统,若想安装以前的旧版本,则点击如下图所 ...

  6. MySQL 示例数据库 employees 详解

    [引子] IT这一行在我看来是比较要求动手能力的,但是人非生而知之:人们身上的技能除了一些本能之外,大多都是通过学习而得到的. 前一段时间一直在整理素材,写一个关于explain 的系列文章:在一开始 ...

  7. mysql中employees的意思_MySQL 示例数据库 employees 详解

    [引子] IT这一行在我看来是比较要求动手能力的,但是人非生而知之:人们身上的技能除了一些本能之外,大多都是通过学习而得到的. 前一段时间一直在整理素材,写一个关于explain 的系列文章:在一开始 ...

  8. 小程序问题记录 | 使用官方提供的云数据库存储md格式的文件,前台解析遇到的坑!!!!

    官方提供了云开发方案,真的是省心,又省钱.(非广告☹️) 可坑死我了... 由于我要在前台展示类似于blog格式的文章,markdown作为源数据.起初是在本地封装module的方案,来提供md数据源 ...

  9. 51cto mysql下载_安装MySQL

    MySQL官方网站下载地址http://dev.mysql.com/downloads/下载的版本根据你的平台和需求而定,目前比较常用的为mysql-5.0/mysql-5.1, 5.5版本下载mys ...

最新文章

  1. 设置float后,后面的元素位置问题。
  2. JavaScript从内容中筛选出手机号码集合
  3. mongoDb数据库可视化工具 --- Robo
  4. 算法--06谷歌面试:字符串中第一个只出现一次的字符(Java实现)
  5. LabVIEW2015安装教程
  6. 【城市沙龙】LiveVideoStack Meet|上海:流媒体无处不在
  7. 算法(12)-leetcode-explore-learn-数据结构-双链表的设计
  8. 消息称苹果斥资2亿美元收购Xnor.ai;华为2000万英镑投资,加速发展HMS手机生态系统;国产SSD将迎来爆发……...
  9. PHP+MySql+PDO实现简单增加、删除、修改、查询
  10. mysql Inoodb 内核
  11. 基于JAVA+SpringBoot+Mybatis+MYSQL的共享自习室预约管理系统
  12. Linux之DHCP+tftp+syslinux+PXE+Cobbler
  13. 强化学习实战(二)ubuntu16.04安装Anaconda、Gym和 Universe
  14. 三千万海外用户的天才程序员之死
  15. Mosquitto PHP 插件安装使用及中文手册
  16. 怎样去掉gif动图水印?在线编辑gif图片技巧
  17. Java将JSON对象或JSON数组转list对象
  18. 即将前往下一个饭局,你的牙还好吗?丨钛空舱爆款春节特献
  19. 如何搭建一个像01资源网那样的付费资源网站?教你用wordpress快速搭建!
  20. 各大电商API详细数据获取

热门文章

  1. LTE系统调试记录2:CCS5中graph选项将一个包含复数的数组分实部虚部画出波形
  2. 解压版MySQL安装与卸载教程
  3. 蚂蚁金服Node.js 基础服务 - 摸爬滚打才不负功名尘土
  4. matlab带上底圆台代码实现
  5. 数据中心节能分析和节能技术简要总结
  6. Redis面试汇总笔记
  7. 25-微信小程序商城 联系客服(微信小程序商城开发、小程序毕业设计、小程序源代码)(黄菊华-微信小程序开发教程)
  8. 阿里云服务器MySQL与本地连接(Linux)
  9. ElementUI 组件 el-autocomplete 实现文本框历史查询建议
  10. 给树莓派添加开关机键