一、搜索镜像
docker hub 上面查找 mysql 镜像
docker search mysql
二、拉取镜像
从 docker hub上(阿里云加速器)拉取 mysql 镜像到本地标签为 5.7
docker pull mysql:5.7
三、查看镜像
docker images 查看是否有拉取到的 mysql
docker images mysql
四、启动镜像
docker run -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7
docker ps
docker exec -it 容器ID /bin/bash
mysql -uroot -p
五、创建数据
建库建表插入数据
create database db01;
切换数据库
use db01;
创建数据库表
create table test(id int,name varchar(20));
插入数据
insert into test values(1,'lulubin');
查询数据
select * from test;
外部工具连接运行在 dokcer 上的 mysql 容器实例服务
演示使用的外部工具是:https://lulublog.cn/p/shv0O2
插入中文数据
insert into test values(2,'鲁鲁槟');
为什么报错?docker 上默认字符集编码隐患
docker里面的mysql容器实例查看,内容如下:
SHOW VARIABLES LIKE 'character%';
六、实战版
先把之前的 mysql 容器删除
docker run -d -p 3306:3306 --privileged=true -v /lulubin/mysql/log:/var/log/mysql -v /lulubin/mysql/data:/var/lib/mysql -v /lulubin/mysql/conf:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456 --name mysql mysql:5.7
新建 my.cnf
cd /lulubin/mysql/conf
vim my.cnf
[client]
default_character_set=utf8
[mysqld]
collation_server = utf8_general_ci
character_set_server = utf8
cat my.cnf
重启 mysql
docker restart mysql
docker exec -it mysql bash
mysql -uroot -p
查看字符集
SHOW VARIABLES LIKE 'character%';
创建数据
create database db01;
use db01;
create table test(id int,name varchar(20));
外部工具连接运行在 dokcer 上的 mysql 容器实例服务
插入中文数据
insert into test values(2,'鲁鲁槟');
结论:docker 安装完 MySQL 并 run 出容器后,建议请先修改完字符集编码后再新建 mysql 库-表-插数据。