docker 安装mysql

mysql 版本查看,只能到docker的库上去去看有哪些可以下载的版本。

地址:https://hub.docker.com/u/library

1、查询选择镜像文件版本。

查询搜索mysql,在列表中,选择mysql 信息,进去入图。我们安装一个不是最新的版本。据说最稳定的5.7版本。

2、下载mysql信息。

docker pull mysql:5.7

下载完成如图。。值得注意的时候,想要快点下载必须加使用加速器。。

目前我使用的是阿里云的镜像加速器。速度还可以。

下载完成如图所示。

3、查询确认已经下载mysql镜像了

如果查询具体镜像信息,可以在后面指定
docker images mysql

如果查询所有镜像,使用 

docker images

4、安装mysql

增加配置文件my.cnf

// 创建目录
# mkdir -p /home/soft/mysql/conf
新建文件
# vi my.cnf
// 文件内容, 文件内容,其中sql_mode作用是解决数据传输时报错问题如:Invalid default value for 'BdInDate'
// max_connections=1024  最大连接数,可通过SHOW VARIABLES LIKE '%max_con%';查看。
// 不区分大小写 lower_case_table_names=1 [mysqld] user
=mysql character-set-server=utf8 default_authentication_plugin=mysql_native_password
sql_mode=ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
max_connections=1500
lower_case_table_names=1 [client]
default-character-set=utf8 [mysql] default-character-set=utf8

再执行:

docker create

--restart=always

-e MYSQL_ROOT_PASSWORD=123456

-v /home/soft/mysql/conf/my.cnf:/etc/mysql/my.cnf
-v /home/soft/mysql/logs:/logs
-v /home/soft/mysql/data/mysql:/var/lib/mysql
-p 33060:3306
--name mysql33060 mysql:5.7

这句命令意思是:

docker #执行docker命令
create --name mysql33060 #创建一个容器名字叫mysql33060
-e MYSQL_ROOT_PASSWORD=123456 #传入参数 ,这里是设置mysql的root账号密码为123456
-p 33060:3306 #设置对外端口为33060,转发内部端口是3306
-v /home/soft/mysql/conf/my.cnf:/etc/mysql/my.cnf # 挂载配置文件
-v /home/soft/mysql/logs:/logs # 挂载日志文件
-v /home/soft/mysql/data/mysql:/var/lib/mysql # 数据信息
mysql:5.7 #安装的版本为mysql5.7

5、验证安装是否ok

查询所有容器,目前看到mysql状态为create,还需启动。

docker ps -a

启动mysql服务。。

启动 start、停止stop、重启reload命令

启动可以通过名字重启、也可通过ID重启

docker start 7ed23d874d12
或
docker start mysql33060

停止也一样,可通过ID或名字停止

docker stop 7ed23d874d12

6、外部链接mysql33060验证

我使用navicat链接工具进行连接。

输入机器IP

然后输入之前设置的root账号的密码123456 ,

点击“测试连接”,提示连接成功,证明连接OK。

7、进入docker安装的mysql容器进行验证。

#进入到容器 docker container exec -it 容器ID /bin/bash  
docker container exec -it mysql33060 /bin/bash  
#或
docker container exec -it 7ed23d874d12 /bin/bash  

#退出容器命令 
exit

 进入容器后,输入命令连接mysql

#连接mysql 使用用户root 密码123456,也可以不直接输入密码,过后会弹命令行输入
mysql -uroot -p123456

连接上后,用个sql测试下。

show databases 果然OK。

 查看连接数:

SHOW VARIABLES LIKE '%max_con%';

 

8、完成总结

docker安装镜像文件挺容易,重点是熟悉常用的一些命令即可。

这里我们用到 

docker create 创建容器,指定容器名字

docker start 启动镜像

docker stop停止镜像 

进入容器,使用 

docker container exec -it
容器ID或容器名称 /bin/bash 

一切简单,接下来做个挂载试试。。


原文地址:https://www.cnblogs.com/a393060727/p/12081277.html