Docker安装mysql
1) 下载Msql5.7镜像文件:
docker pull mysql:5.7
2) 检查是否下载成功:
检查命令:docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
mysql 5.7 c20987f18b13 20 months ago 448MB
3) 创建Mysql目录:
mkdir -p /usr/local/soft/mysql
4) 创建Mysql容器实例并启动:
docker run -p 3306:3306 --name mysql \
-v /usr/local/soft/mysql/log:/var/log/mysql \
-v /usr/local/soft/mysql/data:/var/lib/mysql \
-v /usr/local/soft/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:5.7
5) 修改Mysql配置:
进入mysql配置目录: /usr/local/soft/mysql/conf
初始化配置文件: touch 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
default-time_zone = '+8:00'
如果存在以下错误
docker 启动 mysql时报错:
[Note] [Entrypoint]: Entrypoint script for MySQL Server 5.7.41-1.el7 started.
2023-04-17 09:41:14+00:00 [ERROR] [Entrypoint]: mysqld failed while attempting to check config
command was: mysqld --verbose --help --log-bin-index=/tmp/tmp.QXg3gZVFVb
mysqld: Can't read dir of '/etc/mysql/conf.d/' (Errcode: 2 - No such file or directory)
mysqld: [ERROR] Fatal error in defaults handling. Program aborted!
解决方案是:
sudo find / -name my.cnf
rm $(find / -name my.cnf
连输yes yes
docker run -p 3306:3306 --name mysql -v /usr/local/soft/mysql/log:/var/log/mysql -v /usr/local/soft/mysql/data:/var/lib/mysql -v /usr/local/soft/mysql/conf:/etc/mysql -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7