在Docker中使用MySQL还是很方便的。
MySQL 5.7版本创建命令
docker run -it --name mysql2 -p 3306:3306 -v /My/own/data_path:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=mypass -d mysql:5.7.35
这里挂载了一个目录作为MySQL的数据目录。
如果兼顾ARM平台,可使用MySQL8,因为MySQL 5的Docker镜像不支持ARM架构,所以要使用mysql/mysql-server:8xx
镜像。mysql-server
相对mysql
有所优化。
docker run -it --name mysql2 -p 3306:3306 -v /My/own/data_path:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=mypass -d mysql:mysql-server:8.0.26 --default-authentication-plugin=mysql_native_password
最后一个选项是认证时使用mysql_native_password
而不是默认的caching_sha2_password
,以兼容老的程序,比如MySQL管理工具Sequel Pro
等。
如果只能从本机访问MySQL而不能从外部连接,则需要修改用户的权限,具体参见MySQL允许用户外网访问。