赞
踩
docker pull mysql:5.7
然后查看一下是否下载成功:
docker images mysql:5.7
如果出现以下标识就说明下载成功了:
由于在linux当中,我已经提前运行了一个mysql,占用了3306这个端口,所以当mysql5.7这个镜像文件运行的时候,做主机映射需要避免使用3306这个端口!
docker run -d -p 3307:3306 --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 mysql:5.7
解释一下这条命令的意思:
因为一旦容器被误删,如果没有提前做数据卷挂载,将数据信息在宿主机当中持久化,数据就会随着容器的删除而被清空!
vim /opt/mysql/conf/my.cnf
在my.cnf里边输入编辑内容:
- [client]
- default_character_set=utf8
- [mysqld]
- collation_server = utf8_general_ci
- character_set_server = utf8
注意:当修改完配置文件内容之后,请将mysql的容器也一并重启一下,然后进入容器当中查看一下设置的字符编码集:
- #分别输入以下命令
- #查询当前正在运行的容器
- docker ps -a
-
- #用查询到的容器,复制id,重启mysql容器
- docker restart 容器ID
-
- #进入mysql容器内部
- docker exec -it 容器ID /bin/bash
-
- #用root账户和默认密码12456登录一下mysql
- mysql -u root -p
-
- #输入密码进入之后,输入查询设置的字符编码集命令
- show variables like 'character%';
-
进入之后,创建数据库比如:docker_db、创建一张数据表,并且插入数据:
然后切换到这个目录当中,可以看到:
说明我们创建的数据已经成功的保存到了数据卷对应的挂载目录了!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。