当前位置:   article > 正文

macbook m1上docker安装mysql8_docker 在mac安装mysql8

docker 在mac安装mysql8

前提条件,已安装好了docker。
一、创建主机映射目录,data是存放数据的目录,config是存放配置文件的
mkdir -p /Users/你的实际名称/docker_volume/mysql8/{data,scripts,config}

二、data目录的权限设置
chmod -R 777 /Users/你的实际名称/docker_volume/mysql8/data

三、创建配置文件并输入以下配置

cat>/Users/你的实际名称/docker_volume/mysql8/config/my.cnf<<EOF
[mysqld]
default-authentication-plugin=mysql_native_password
user=mysql
character-set-server=utf8mb4
[client]
default-character-set=utf8mb4
[mysql]
default-character-set=utf8mb4
EOF
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

四、创建脚本文件并输入以下SQL代码(给abc这个用户授权)

cat>/Users/你的实际名称/docker_volume/mysql8/scripts/abc.sql<<EOF
grant all privileges on *.* to 'abc'@'%' with grant option;
EOF
  • 1
  • 2
  • 3

五、运行容器

docker run --name=mysql01 \
-e MYSQL_USER="abc" \
-e MYSQL_PASSWORD="abc123" \
-e MYSQL_ROOT_PASSWORD="abc123" \
-v /Users/你的实际名称/docker_volume/mysql8/config/my.cnf:/etc/my.cnf \
-v /Users/你的实际名称/docker_volume/mysql8/data:/var/lib/mysql \
-v /Users/你的实际名称/docker_volume/mysql8/scripts:/docker-entrypoint-initdb.d \
-d -p 3306:3306 mysql:8.0.31
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

六、其它
报下面的错
[ERROR] --initialize specified but the data directory has files in it. Aborting.
[ERROR] [MY-013236] [Server] The designated data directory /var/lib/mysql/ is unusable. You can remove all files that the server added to it.
则清理
rm -rf /Users/你的实际名称/docker_volume/mysql8/data/
rm -rf /var/lib/mysql/*

七、删除不要的用户
docker exec -it mysql01 bash进入mysql容器
mysql -uroot -p以root用户登录
use mysql;
select user,host from user;发现root@%这个可从任意地址访问数据库的用户
删除用户drop user 'root'@'%';
生效flush privileges;
再查询select user,host from user;
退出exit;

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/613756
推荐阅读
相关标签
  

闽ICP备14008679号