首先得有Docker(这个不细说了)
然后下载MySQL的镜像docker pull mysql
最后就是启动了
错误启动方式:docker run --name mysql1 -d mysql
该方式会启动不了容器 因为没有指定密码
-e MYSQL_ROOT_PASSWORD=密码
例:docker run --name mysql1 -e MYSQL_ROOT_PASSWORD=123456 -d mysql
用-e指定参数
然而 这还是错误的
然而 此时端口是连接不到的 因为还没配置端口映射
还需指定端口
因此 应该用:docker run --name mysql1 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql
用-p指定端口
然鹅 还可能会报错
该错误是因为默认下载的mysql版本过高(超过8.0了)
Mysql8.0默认采用caching_sha2_password加密方式
而第三方客户端都不支持该机密方式
因此 要么去修改加密方式 要么下载低版本的mysql
高级操作
1、指定配置文件
docker run --name mysql03 -v /conf/mysql:/etc/mysql/conf.d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql
注:-v指定配置文件路径
上述例子意为将主机的/conf/mysql文件夹挂载到 mysql的docker容器中的/etc/mysql/conf.d文件夹中
若要改mysql的配置文件 只需将mysql的配置文件放在自定义的文件夹下(/conf/mysql)即可
2、指定mysql的一些配置参数(例如编码格式)
--character-set-server
指定基字符集
--collation-server
修改数据库排序规则
docker run --name mysql1 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql --character-set-server=utf8 --collation-server=utf8_general_ci
上述例子意为指定字符集为utf8 且指定排序规则为utf8_general_ci