Docker - 运行 Mysql 容器后报错:[ERROR] InnoDB: redo log file ‘./ib_logfile0’ exists
背景
在本机 mac docker 运行启动 mysql 容器
docker run -d -p 3306:3306 --name mysql1 -v /Users/polo/data/conf:/etc/mysql/conf.d -v /Users/polo/data/mysql:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7
现象
查看容器日志发现报错了,本地 navicat 也连不上
重点就是第一句,某某某文件已存在,通常就是环境被覆盖了
根因
之前通过 brew install 了 mysql,虽然 uninstall 了,但是本地文件并没有被删除
解决方案
brew uninstall mysql
rm -rf /usr/local/var/mysql
先卸载 mysql,再删掉本地的文件即可
正常启动 Mysql 容器的日志
没有 ERROR 日志