下载镜像
查询MySQL镜像
docker search mysql
下载最新的mysql(或者可以选择别的版本)
docker pull mysql
准备链接文件和文件夹(数据和配置)
新建文件夹data、conf和文件my.cnf
mkdir /root/mysql/data/
mkdir /root/mysql/conf/
vi /root/mysql/conf/my.cnf
编写配置
[client]
default-character-set=utf8mb4
[mysqld]
user=mysql
character-set-server=utf8mb4
default_authentication_plugin=mysql_native_password
init_connect='SET NAMES utf8mb4'
制作并运行容器
运行下面的命令
docker run -itd --name mysql8 -p 3306:3306 --restart always --privileged=true \
-e MYSQL_ROOT_PASSWORD="123456" \
-e character-set-server=utf8mb4 \
-e collation-server=utf8_general_ci \
-v /root/mysql/conf/my.cnf:/etc/my.cnf \
-v /root/mysql/data/:/var/lib/mysql/ \
mysql
查看MySQL容器运行情况
docker ps
若没查到,说明容器运行失败,重来吧
进入容器,更改MySQL账户的密码
进入容器
docker exec -it mysql8 bush //如果没用,说明没有bush,改为下面的命令
docker exec -it mysql8 sh
进入MySQL
mysql -u root -p
密码是:123456(初始化容器时设置的)
更改root用户密码
ALTER user 'root'@'%' IDENTIFIED BY '新密码';
至此,修改完成!!
查看MySQL字符集编码
show variables like 'character%';