Docker 安装 Mysql 容器 (完整详细版)

百度已收录

文章发布时间:2024-10-21 17:54:16

说明:

Docker如果想安装软件 , 必须先到 Docker 镜像仓库下载镜像。

Docker 镜像仓库

Docker 安装Mysql

1、寻找Mysql镜像

在Docker镜像仓库寻找Mysql镜像

Docker 安装 Mysql 容器 (完整详细版)-氯化钠资源网站

Docker 下载Mysql镜像的命令

Docker 安装 Mysql 容器 (完整详细版)-氯化钠资源网站

2、下载Mysql镜像

命令 描述
docker pull mysql 下载最新版Mysql镜像 (其实此命令就等同于 : docker pull mysql:latest )
docker pull mysql:xxx 下载指定版本的Mysql镜像 (xxx指具体版本号)

2.1. 下载mysql8镜像(版本根据自己选择:这里是8)

docker pull mysql:8

Docker 安装 Mysql 容器 (完整详细版)-氯化钠资源网站

检查当前所有Docker下载的镜像

3、创建Mysql容器并运行

Docker 创建Mysql容器

# 建立目录映射
mkdir /opt/mysql
mkdir /opt/mysql/conf/
mkdir /opt/mysql/log/
mkdir /opt/mysql/data/

# 创建容器,并后台启动mysql8.0以上配置  
docker run \
-p 3306:3306 \
--restart=always \
--privileged=true \
-v /opt/mysql/log:/var/log/mysql \
-v /opt/mysql/data:/var/lib/mysql \
-v /opt/mysql/conf:/etc/mysql/conf.d \
-e MYSQL_ROOT_PASSWORD=123456 \
--name mysql \
-d mysql:8

命令 描述
docker run 创建一个新的容器 , 同时运行这个容器
–name mysql 启动容器的名字
-d 后台运行
-p 3306:3306 将容器的 3306 (后面那个) 端口映射到主机的 3306 (前面那个) 端口
–restart=always 总是跟随docker启动
–privileged=true 获取宿主机root权限
-v /opt/mysql/log:/var/log/mysql 将日志文件夹挂载到主机
-v /opt/mysql/data:/var/lib/mysql 将mysql储存文件夹挂载到主机
-v /opt/mysql/conf:/etc/mysql/conf.d 将配置文件夹挂载到主机
-e MYSQL_ROOT_PASSWORD=123456 设置 root 用户的密码
mysql:8 启动哪个版本的 mysql (本地镜像的版本)
\ shell 命令换行符

4、查看Mysql是否运行

### 查看Docker运行中的容器
docker ps  

Docker 安装 Mysql 容器 (完整详细版)-氯化钠资源网站

3、配置链接信息

# 到这里已经成功启动了、但是外部连接还需要在配置之后才可以。
docker exec -it mysql /bin/bash

# 在容器内登录mysql
 mysql -u root -p

Docker 安装 Mysql 容器 (完整详细版)-氯化钠资源网站

# 设置权限(为root分配权限,以便可以远程连接)
grant all PRIVILEGES on *.* to root@'%' WITH GRANT OPTION;

# 查询所有表
show databases;

#进入MySQL表
use mysql

# 把所有ip访问都设置为root用户
update user set host='%' where user='root';
select host,user from user where user="root";

Docker 安装 Mysql 容器 (完整详细版)-氯化钠资源网站

# 由于Mysql5.6以上的版本修改了Password算法,这里需要更新密码算法,便于使用Navicat连接
grant all PRIVILEGES on *.* to root@'%' WITH GRANT OPTION;

ALTER user 'root'@'%' IDENTIFIED BY '123456' PASSWORD EXPIRE NEVER;

ALTER user 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';

FLUSH PRIVILEGES;

Docker 安装 Mysql 容器 (完整详细版)-氯化钠资源网站

4、Navicat链接数据库

连接失败看看防火墙有没有关闭、等其它情况请自行百度。。。

Docker 安装 Mysql 容器 (完整详细版)-氯化钠资源网站

本文链接:https://lzphy.top/342/
© 版权声明
THE END
喜欢就支持一下吧
点赞0赞赏 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容