点击安装 Docker
拉取MySQL镜像5.7
docker pull mysql:5.7
查看拉取的镜像
docker images |grep mysql

创建目录mysql用于存放MySQL相关文件
$ mkdir mysqlfiles$cd mysqlfiles
创建MySQL容器: !!!请注意这里设置暴露的对外端口是 3360 !!!
$ docker run -p 3360:3306 --name mymysql -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7#参数说明-p 3360:3306:将容器的 3306 端口映射到主机的 3360 端口(第一个物理机端口,第二个容器端口)。-v $PWD/conf:/etc/mysql/conf.d:将主机当前目录下的 conf/my.cnf 挂载到容器的 /etc/mysql/my.cnf。-v $PWD/logs:/logs:将主机当前目录下的 logs 目录挂载到容器的 /logs。-v $PWD/data:/var/lib/mysql :将主机当前目录下的data目录挂载到容器的 /var/lib/mysql 。-e MYSQL_ROOT_PASSWORD=123456:初始化 root 用户的密码。-d: 后台运行容器,并返回容器ID!!!请注意这里设置暴露的对外端口是 3360 !!!
查看运行的容器
docker ps | grep mysql
开启docker交互模式终端
$ docker exec -i -t mymysql /bin/bash
登录MySQL
$ mysql -u root -p输入123456
进入MySQL后授权
#--数据库的所有权限授权给 user这个用户,允许user用户在任何一个 IP 进行远程登陆,并设置 root 用户的密码为 123456> grant all PRIVILEGES on *.* to 'user'@'%' identified by '123456';> flush privileges;>exit;
退出docker终端
exit
添加安全组
使用navicat连接,并新建数据库 my_bd
服务端登录mysql和检查创建情况:
docker exec -i -t mymysql /bin/bashmysql -uroot -pmysql> show databases;+--------------------+| Database |+--------------------+| information_schema || my_bd || mysql || performance_schema || sys |+--------------------+5 rows in set (0.00 sec)
大功告成!!!
