centos7的docker容器中安装mysql

时间:2024-10-14 10:17:08

1.首先在centos7的虚拟机中进行docker的安装,具体安装过程参照
/engine/install/centos/

docker安装完成后,在该容器中进行mysql容器的安装,其实在此中安装的mysql又相当于一个小的linux。使用docker命令在网上拉取mysql的镜像,在拉取的过程中可以选择对应的版本,例如还可以拉取mysql:8.0

sudo docker pull mysql:5.7 

镜像拉取完成后使用docker相应的命令查看镜像是否拉取成功

sudo docker images

对拉取的镜像运行,并进行相应的设置

  1. docker run -p 3306:3306 --name mysql \
  2. -v /mydata/mysql/log:/var/log/mysql \
  3. -v /mydata/mysql/data:/var/lib/mysql \
  4. -v /mydata/mysql/conf:/etc/mysql \
  5. -e MYSQL_ROOT_PASSWORD=root \
  6. -d mysql:5.7

参数说明

-p 3306:3306 将容器的3306端口映射到主机的3306端口

-v /mydata/mysql/log:/var/log/mysql \  将配置文件夹挂载到主机
-v /mydata/mysql/data:/var/lib/mysql \  将日志文件夹挂载到主机
-v /mydata/mysql/conf:/etc/mysql \  将配置文件夹挂载到主机

-e MYSQL_ROOT_PASSWORD=root \  初始化root用户密码

镜像成功运行后使用相应的命令进行查看

sudo docker ps 

docker容器中的mysql容器成功运行后,可以在windows端的客户端软件,输入linux的ip地址以及对应的信息测试mysql是否能够连接成功

docker中停止所有的container使用命令

docker stop $(docker ps -a -q)

通过container的id来删除docker images 中的容器

docker rmi <image id>

删除docker中的所有images

  1. docker rmi $(docker images -q)

查看容器内部

docker exec -it mysql  /bin/bash

配置文件

  1. [client]
  2. default-character-set=utf8
  3. [mysql]
  4. default-character-set=utf8
  5. [mysqld]
  6. init_connect='SET collation_connection = utf8_unicode_ci'
  7. init_connect='SET NAMES utf8'
  8. character-set-server=utf8
  9. collation-server=utf8_unicode_ci
  10. skip-character-set-client-handshake
  11. skip-name-resolve