Docker之MySql

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u011897110/article/details/85338915

一、docker命令

1、搜索可用的docker镜像
  docker search 镜像名字
2、下载镜像
  docker pull 名字
3、查看本机所有的镜像文件
  docker images
4.docker run
  -d 标识是让 docker 容器在后台运行。
  -p 标识通知 Docker 将容器内部使用的网络端口映射到我们使用的主机上。
  –name 定义一个容器的名字,如果在执行docker run时没有指定Name,那么deamon会自动生成一个随机数字符串当做UUID。
  -e 设置环境变量,或者覆盖已存在的环境变量。
  例如:docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql
  含义:容器的名字为mysql,将容器的3306端口映射到本机的3306端口,mysql数据库的密码为password ,运行的镜像为mysql/mysql-server:latest
5.docker ps
  -a 查看已经创建的容器
  -s 查看已经启动的容器
6.启动容器名为con_name的容器。
  docker start con_name
7.停止容器名为con_name的容器。
  docker stop con_name
8.删除容器名为con_name的容器。
  docker rm con_name
9.删除镜像名为img_name的镜像。
  docker rmi img_name
10.重命名一个容器。
  docker rename old_name new_name

二、安装MySql

1、查找Docker Hub上的mysql镜像
docker search mysql
在这里插入图片描述
2、拉取官方的MySql镜像
  docker pull mysql:5.7(拉最新的 docker pull mysql)

注:
  这里我拉的MySql版本是5.7。因为最新的mysql会导致
  Navicat:client does not support authentication protocol requested by server; conside。(根据度娘的意思是:Navicat版本过低。)
因为懒,所以装了mysql5.7

3、查看本机所有的镜像文件(出现如下,证明成功)
在这里插入图片描述
4、根据镜像来运行容器
docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7
  -p 3306:3306:将容器的 3306 端口映射到主机的 3306 端口。
  -e MYSQL_ROOT_PASSWORD=123456:初始化 root 用户的密码。
  -d: 后台运行容器,并返回容器ID
  –name mysql: 为容器指定一个名称;
5、看到这里就完成了MySql安装。(如果navicat或者其他工具还是无法远程连接,请接着往下看。)

查看容器
docker ps
在这里插入图片描述
#进入容器
docker exec -it ac8cb4b0ff79 bash
#登录mysql
mysql -u root -p
#查看user表
select user,host from mysql.user;
在这里插入图片描述
如果没有user:root host:% 这条数据.
  #你想root使用password(密码)从任何主机连接到mysql服务器的话。
  grant all privileges on . to root@"%" identified by “password” with grant option;
  #MySQL用户数据和权限有修改后,不重启MySQL服务直接生效
  flush privileges;

展开阅读全文

没有更多推荐了,返回首页