dockerFile构建当点mysql

在MAC10.15环境下,使用docker 19.03.4,详细介绍了如何构建并配置mysql-8.0.18的步骤,包括创建外部目录、编写my.cnf配置文件、拉取镜像、编写启动脚本以及允许远程连接。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

搭建环境:

  1. MAC10.15
  2. docker 19.03.4
  3. mysql-8.0.18(不同版本有些参数不一,最终可参考官网https://hub.docker.com/_/mysql/)

第一步:在宿主机上创建需要外置的目录。 目录不能指定在root用户下

mkdir /Users/haizhi/Desktop/software/df/mysql
cd /Users/haizhi/Desktop/software/df/mysql
mkdir data config

第二步:创建mysql配置文件 vim config/my.cnf

[mysqld]
user=mysql
lower_case_table_names=0
character-set-server=utf8
default_authentication_plugin=mysql_native_password
secure_file_priv=/var/lib/mysql
expire_logs_days=7
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
max_connections=1000

[client]
default-character-set=utf8

[mysql]
default-character-set=utf8

第三步:在docker中拉取镜像

##拉取mysql最新版本
docker pull mysql

第四步:编写启动脚本

vim build.sh
##赋予可执行权限
chmod +x build.sh

build中内容

docker run --name mysql --restart=always --privileged=true  -p 3306:3306  --volume /Users/haizhi/Desktop/software/df/mysql/data:/var/lib/mysql --volume /Users/haizhi/Desktop/software/df/mysql/config/my.cnf:/etc/mysql/my.cnf -e MYSQL_ROOT_PASSWORD=123456   -d mysql

第五步进入容器内部设置远程可连接

docker exec -it mysql /bin/sh

1,进行授权远程连接(注意mysql 8.0跟之前的授权方式不同)
GRANT ALL ON *.* TO 'root'@'%';

2,刷新权限
flush privileges;

3,更改加密规则
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;

4,更新root用户密码
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';

5,刷新权限
flush privileges;

通过客户端验证

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值