Centos7下docker安装mysql
程序员文章站
2022-04-15 10:35:38
...
1.docker下载mysql镜像
docker pull mysql:5.7
这里下载的版本是5.7版本,若不表明版本号则默认下载最新版。
在docker官网搜mysql可以查看各个mysql版本号,如图
2.查看docker镜像
docker images
3.映射docker内mysql端口号并挂载相关目录
docker run -p 3306:3306 --name mysql \
-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 \
-d mysql:5.7
出现最后一行一长串字符串表示成功。
3.1访问容器内部
docker exec -it mysql /bin/bash
-it 以交互模式访问
mysql:要访问的容器名,也可以以docker ps命令查看其ID(即下图@后的字符串)访问
退出容器
exit
参数解释:
--name:为当前容器起名;
-p:映射docker容器内部mysql端口号到Linux端口号,
则访问Linux 3306端口就相当于访问容器内部mysql端口;
-v:挂载目录,因为每一个容器就相当于一个小型的Linux系统,里面装着相应的软件(如mysql),所以有相应的完整的目录结构,因此可以将容器内部mysql相关目录挂载到Linux,方便访问修改,挂载后修改相应文件相当于修改容器内部文件;
-e:设置root密码;
4.查看当前启动镜像
docker ps
5.在windows下的navicat尝试链接mysql
连接名:随便起
IP地址:虚拟机IP地址
端口:3306
用户名:root
密码:自己设置的密码
6.查看挂载的目录并在conf文件夹下配置mysql的编码语言,因为mysql默认编码为拉丁文,修改为utf8
cd /mydata/mysql/
ls
cd conf/
vi my.cnf
my.cnf文件配置如下:
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve
6.1重启mysql使配置文件生效
docker restart mysql
6.2 进入容器内部验证容器内部相应目录文件是否发生变化
docker exec -it mysql /bin/bash
cd etc/mysql/
ls
cat my.cnf
/etc/mysql映射目录对应的就是/mydata/mysql/conf
结束。
推荐阅读
-
Winserver2012下mysql 5.7解压版(zip)配置安装教程详解
-
Mac 下 MySQL5.7.22的安装过程
-
MySql 5.7.21免安装版本win10下的配置方法
-
win10下mysql 8.0.11 压缩版安装教程
-
win10 下安装mysql服务器社区版本mysql 5.7.22 winx64的图文教程
-
Windows下MySQL8.0.11社区绿色版安装步骤图解
-
Windows下mysql 8.0.11 安装教程
-
CentOS7下mysql 8.0.16 安装配置方法图文教程
-
windows下mysql 8.0.16 安装配置方法图文教程
-
win10下mysql 8.0.16 winx64安装图文最新教程