1.启动mysql容器后,使用docker ps 查看时是没有启动起来 ,使用docker logs 容器id 时,查看报错信息如下:
mysql_ssl_rsa_setup: Can't change permissions of the file 'ca-key.pem' (Errcode: 1 - Operation not permitted)
2021-06-27 11:56:04 [ERROR] Error setting file permissions forca-key.pem and ca.pem
mysql_ssl_rsa_setup: Can't change permissions of the file 'server-key.pem' (Errcode: 1 - Operation not permitted)
2021-06-27 11:56:04 [ERROR] Error setting file permissions forserver-key.pem and server-cert.pem
解决办法
#解决办法 启动时需要加上 --privileged 以root运行
docker run -d -p 3306:3306 --name mysql5.7.27 -e MYSQL_ROOT_PASSWORD="123456" \
-v /mnt/d/wsl_www/mysql5.7.27/conf:/etc/mysql \
-v /mnt/d/wsl_www/mysql5.7.27/data:/var/lib/mysql \
-v /mnt/d/wsl_www/mysql5.7.27/log:/var/log/mysql --privilege mysql:5.7.27
2 .进入到mysql 容器里,登录mysql时,用户和密码正确时,确登录不上,显示如下错误信息,这个原因有可能是由于权限导致登录不上,请看第3点
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
#解决办法,
需要在/etc/mysql/myf里添加如下信息,但是我在修改完后,运行不生效,
mysql在运行时会显示第3点的错误
[mysqld]
skip-grant-tables
#进入mysql,修改权限
3 .把mysql配置映射到主机目录后,修改配置后,被忽略,如下图
#错误信息
mysql: [Warning] World-writable config file '/etc/mysql/myf' is ignore
#由于我是window的子系统里运行docker的,所以说权限有问题,
需要对主机上的myf文件设置只读权限才可以
#文件右键->属性->安全->选中amdin组->修改权限为只读PS:在window上的子系统ubuntu运行docker环境,坑是真不少,分享出来,希望小伙伴避坑吧,有条件的还是在服务器上,或者纯linux上开发吧!