docker学习笔记(二)—— docker部署mysql服务

1 获取mysql官方最新docker镜像

$ sudo docker pull mysql/mysql-server:latest

耐心等待下载,完成后可以通过以下命令查看下载的镜像:

$ sudo docker images

已下载的docker镜像

2 创建并启动mysql服务容器

2.1 创建一个文件夹用于挂载mysql数据库文件
$ sudo mkdir /docker/mysql_data -p
2.2 生成mysql容器
$ sudo docker run --name mysql -d --restart always -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -v /docker/mysql_data:/var/lib/mysql mysql/mysql-server

其中,--name mysql:容器指定名称为mysql-d:后台运行容器,并返回容器ID;--restart always:在容器退出时总是重启容器;-p 3306:3306:将宿主机的3306端口(前者)映射到容器的3306端口(后者);-e MYSQL_ROOT_PASSWORD=123456:设置mysql的root密码为123456-v /docker/mysql_data:/var/lib/mysql:将宿主机的目录/docker/mysql_data映射到容器的目录/var/lib/mysql,用于存放容器的mysql数据库文件。

2.3 查看容器启动状态
  • 查看已经创建的容器:
$ sudo docker ps -a
  • 查看已经启动的容器:
$ sudo docker ps -s
  • 若容器未启动,则通过以下命令启动:
$ sudo docker start mysql

其中mysql是容器名称,也可以使用CONTAINER ID(见下图)代替,如81f7c15f9415
启动mysql容器

2.4 docker容器下命令行连接mysql数据库
  • 首先进入mysql容器的bash终端:
$ sudo docker exec -it mysql bash
  • 连接mysql:
$ mysql -u root -p

输入步骤2.2设置的mysql root密码,之后就可以自由操作mysql了!

2.5 通过宿主机命令行连接mysql
  • 首先在宿主机上安装mysql客户端:
$ sudo apt-get install -y mysql-client
  • 尝试连接:
$ mysql -h 127.0.0.1 -u root -p

输入密码后显然是连接不上的:

注意图中红框的ip,这是宿主机ip,需要在mysql中添加用户允许此ip连接,其实就跟添加允许远程用户连接mysql是一样的,例子如下:
先通过步骤2.4连接到mysql,之后添加数据库test,针对此库添加用户testuser,密码是123456

CREATE DATABASE test;
GRANT ALL PRIVILEGES ON test.* TO testuser@172.17.0.1 IDENTIFIED BY '123456';
FLUSH PRIVILEGES;


然后就可以在宿主机上连接mysql数据库了:

$ mysql -h 127.0.0.1 -u testuser -p

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值