谷粒商城-全栈-06 数据库初始化

一、数据库设计

谷粒商城数据库的设计pdm及sql创建表语句官方已经给我们提供了,所以,只需要在本项目码云 docs目录下进行下载即可,如果想看pdm文件设计,则可以使用PowerDesigner软件打开,如果是Mac,没有类似或者不兼容pdm,则可以使用在线 http://www.dmanywhere.cn/ 网址打开。

file

这个就是pdm设计图。

可以点击订单表放大,看对应的字段:
file

二、创建数据库

启动虚拟机

> vagrant up

启动之后,重新开一个命令窗口,进入虚拟机:

> vagrant ssh
[vagrant@bogon ~]$ sudo docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED

我们可以看到,docker里边的容器并没有跟着docker一起启动,我们希望的是docker启动,容器也跟着自动启动:
首先查看docker里边的容器:

[vagrant@bogon ~]$ sudo docker ps -a
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS                    PORTS               NAMES
26371b5a3a07        redis               "docker-entrypoint.s…"   26 hours ago        Exited (0) 24 hours ago                       redis
7dc90206f09a        mysql:5.7           "docker-entrypoint.s…"   27 hours ago        Exited (0) 24 hours ago                       mysql

如果需要自启动,只需要下边的命令即可:

[vagrant@bogon ~]$ sudo docker update mysql --restart=always
[vagrant@bogon ~]$ sudo docker update redis --restart=always

这样以后虚拟机重启之后,docker里边的MySQL,Redis容器也会自动重启。

重启虚拟机,然后进入虚拟机,可以看到,mysql, redis 已经跟着启动了。

➜  ~ vagrant ssh
Last login: Sun Aug  9 17:12:14 2020 from 10.0.2.2
[vagrant@localhost ~]$ sudo docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                               NAMES
26371b5a3a07        redis               "docker-entrypoint.s…"   26 hours ago        Up 49 seconds       0.0.0.0:6379->6379/tcp              redis
7dc90206f09a        mysql:5.7           "docker-entrypoint.s…"   27 hours ago        Up 49 seconds       0.0.0.0:3306->3306/tcp, 33060/tcp   mysql
[vagrant@localhost ~]$

创建数据库并导入表

每个微服务都对应一个数据库,所以,我们需要创建5个数据库,注意数据库字符编码为utf8mb4,创建好数据库之后,然后再导入对应的sql文件,本项目sql文件已经托管到码云 /docs/db/sql/目录下,有需要的可以直接从git上拉取。

file

至此,我们的数据库初始化工作算是完成了。

为者常成,行者常至