在Docker中安装mysql
上一节我们已经安装好了docker在阿里云上,那么我们就来看看容器是怎么安装的
- 先开启docker(参照上篇博客)
- 执行拉取dockerhub里面的内容,输入docker search mysql,来拉取docker仓库里面的mysql版本,我们可以看看有许多,这里我们就安装官方的第一个mysql镜像,docker.io/后面的就是镜像名,我们选取mysql
- 实现下载第一个mysql容器,输入docker pull mysql,这里会下载latest版本的,我们也可以 docker pull mysql: 版本号
这里有时候会下载非常慢,我们来改一下阿里云下载的配置
参照这篇博客
出现这个我们的mysql就下载好了
- 查看本地镜像 ,使用命令
docker images
我们可以看到这里是本地存在的镜像,有名字和版本号和大小等等
- 现在来创建一个跑起来的mysql吧
docker run --name mysql -p 3307:3306 -e MYSQL_ROOT_PASSWORD=kaikai -d mysql --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
- –name表示你自己起的容器名字
- -p 表示端口映射,跑在容器里的mysql你外面是访问不到的,所以我们需要端口映射,把你mysql的3306端口给映射到服务器中的3307端口上,这样我们通过访问服务器上的3307端口就可以连接到容器里的mysql
- -e MYSQL_ROOT_PASSWORD=表示设置你的mysql密码
- –character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci 实现utf8编码实现
-
创建成功后我们来 进行命令 docker ps 来查看现在进行中的容器
-
这里我们需要开启阿里云的端口,我们先默认开启所有端口
这里我们点添加安全组规则
这样我们默认开启所有端口 -
但是光是这样也不能访问到,我们还需要配置我们的mysql对外链接,我们先进入mysql ,输入docker exec -it mysql bash,进入mysql,再输入密码
[root@iz2zebkj7jhbb4xfftq7f4z ~]# docker exec -it mysql bash
root@1e4101954933:/# mysql -u root -p
Enter password:
- 实现以下代码,这样我们就完成了所有步骤,就剩下链接了
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '你的密码';
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';
SELECT plugin FROM mysql.user WHERE User = 'root';
- ctlr+D,退出mysql
- 打开数据库图形界面,新建一个mysql连接
点击mysql - 完成连接