docker安装MySQL实现过程
查询MySQL镜像
docker search mysql
指定版本查询
docker search mysql:5.8
安装mysql
docker pull mysql (最新版本)
在export中创建文件夹
mkdir -p /export/server/docker/mysql
启动容器
echo $PWD docker run --name mysql -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d -i -p 3306:3306 mysql:latest
这里对上面的参数做下简单的介绍,如果不想了解这一块直接复制上面的命令执行即可:
配置端口映射:
-p 3306:3306 --name mysql
将容器的3306端口映射到主机的3306端口
配置mysql数据卷挂载
1.-v $PWD/logs:/logs (日志文件挂载)
将容器中的日志文件夹挂载到主机对应的/var/log/mysql文件夹中
2.-v $PWD/data:/var/lib/mysql (数据文件挂载)
将容器中的数据文件夹挂载到主机对应的/var/lib/mysql文件夹中
3.-v $PWD/conf:/etc/mysql/conf.d (配置文件挂载)
将容器的配置文件夹挂载到主机对应的/etc/mysql文件夹中
注(这里所提的主机指的是当前的linux主机)
-e MYSQL_ROOT_PASSWORD=root
设置初始化root用户的密码
指定镜像资源
- -d:以后台方式运行实例
- mysql:latest:指定用这个镜像来创建运行实例
查看启动的容器
docker ps
[root@java-docker mysql]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 60a645a0cc95 mysql:latest "docker-entrypoint.s…" 15 minutes ago Up 15 minutes 0.0.0.0:3306->3306/tcp, :::3306->3306/tcp, 33060/tcp mysqlserver
登录
#进入mysql容器,并登陆mysql: docker exec -it mysql bash mysql -uroot -p
开启远程访问权限(镜像里面 root用户已经有远程连接权限在里面,所以不需要去设置,只是模式不一样才导致无法连接,把root用户的密码改成 mysql_native_password 模式,即可远程连接)
use mysql; select host,user from user; ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456'; flush privileges;
远程登录

总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
Docker 和 Containerd 目录结构及存储机制详解
Docker和Containerd是两种流行的容器运行时工具,它们都有自己的目录结构和存储机制,本文详细介绍了Docker和Containerd的目录结构和存储机制,并对比了它们之间的主要区别,包括存储路径、挂载点管理、配置文件和日志文件,感兴趣的朋友一起看看吧2025-02-02


最新评论