windows使用docker拉取mysql数据库

135 阅读1分钟

mysql安装本地数据库非常占内存,而且安装繁琐,直接用docker集装箱拉取镜像,小巧方便:

本文默认为电脑已安装git,已安装docker。

一、查看mysql版本

$ docker search mysql
NAME                     DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
mysql                    MySQL is a widely used, open-source relati...   2529      [OK]       
mysql/mysql-server       Optimized MySQL Server Docker images. Crea...   161                  [OK]
centurylink/mysql        Image containing mysql. Optimized to be li...   45                   [OK]
sameersbn/mysql                                                          36                   [OK]
google/mysql             MySQL server for Google Compute Engine          16                   [OK]
appcontainers/mysql      Centos/Debian Based Customizable MySQL Con...   8                    [OK]
marvambass/mysql         MySQL Server based on Ubuntu 14.04              6                    [OK]
drupaldocker/mysql       MySQL for Drupal                                2                    [OK]
azukiapp/mysql           Docker image to run MySQL by Azuki - http:...   2                    [OK]

二、拉取mysql最新镜像

docker pull mysql:latest

三、查看是否安装成功,

docker images

四、运行mysql

$ docker run --name "mysql" -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.6
  • -p 3306:3306 :映射容器服务的 3306 端口到宿主机的 3306 端口,外部主机可以直接通过 宿主机ip:3306 访问到 MySQL 的服务。
  • MYSQL_ROOT_PASSWORD=123456:设置 MySQL 服务 root 用户的密码。

五、查看是否运行成功:

docker ps

之后先进入docker容器,再通过root/123456来访问mysql数据库:

//进入容器
docker exec -it mysql /bin/bash

//退出容器
exit

//登入mysql
mysql -h localhost -u root -p

六,设置远程访问用户:

//设置远程访问用户

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;


重载授权表:

FLUSH PRIVILEGES;

之后在mysql工具连接

这里一个坑,我查找网上所有资料都用localhost,本人是用:docker-machine ip 连接的,不是用localhost。。。