Loading

Docker安装MySQL

创建挂载目录

mkdir -p /app/mysql && cd $_

docker安装MySQL

docker run -d -p 3306:3306 --privileged=true -v /app/mysql/log:/var/log/mysql -v /app/mysql/data:/var/lib/mysql -v /app/mysql/conf:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456 --name mysql5.7 mysql:5.7

解释:

  • --privileged=true: 使容器内的root拥有真正的root权限

  • -v /app/mysql/log:/var/log/mysql: 挂载主机日志文件目录到MySQL容器中

  • -v /app/mysql/data:/var/lib/mysql: 同上

  • -v /app/mysql/conf:/etc/mysql/conf.d: 同上

  • -e MYSQL_ROOT_PASSWORD=123456: 设置root密码

  • --name mysql5.7: MySQL容器名称

  • mysql:5.7: 镜像版本

查看是否安装成功

docker ps

image-20230305221107625

修改MySQL的编码集

my.cnf

重启MySQL使修改的my.cnf生效

docker ps mysql5.7

进入MySQL镜像

docker exec -it mysql5.7 /bin/bash

image-20230305222732265

注意: 如果使用上述方式安装完MySQL后,创建数据库后提示如下情况:

image-20230325151126650

那么就表示你正在尝试使用root用户通过远程访问MySQL服务器,而MySQL默认情况下不允许root用户通过远程访问MySQL服务器

需要在MySQL服务器上执行如下命令

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'your_password' WITH GRANT OPTION;
 
 
posted @ 2023-04-22 21:30  键盘侠_23  阅读(25)  评论(0)    收藏  举报