docker安装mysql8
sudo-m:
我这边有一些出入,没能成功,就想记录一下一些解决信息,打扰了
检查容器状态:
[code=plain]
docker ps -a | grep mysql_8
[/code]
检查容器日志
[code=plain]
docker logs mysql_8
[/code]
根据容器日志的信息,问题出在MySQL无法访问`/var/lib/mysql-files`目录,因为该目录不存在。MySQL 8容器要求存在一个名为`--secure-file-priv`的目录,该目录用于安全文件操作,但在你的配置中似乎没有提供该目录。
要解决这个问题,你可以采取以下步骤:
1. 创建`/var/lib/mysql-files`目录:
在主机上创建一个`/var/lib/mysql-files`目录,并确保MySQL用户有权限访问它。你可以使用以下命令创建目录并设置权限:
```bash
mkdir -p /var/lib/mysql-files
chown -R mysql:mysql /var/lib/mysql-files
```
2. 更新MySQL配置文件:
在你的`my.cnf`配置文件中,确保`--secure-file-priv`选项指向新创建的目录。打开你的my.cnf文件,然后添加或更新以下:
```ini
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Custom configurations
secure-file-priv=/var/lib/mysql-files
```
保存并关闭配置文件。
停止容器:docker stop mysql_8
重启MySQL:docker start mysql_8
检查状态:docker ps -a | grep mysql_8
|