docker 安装mysql

1 篇文章 0 订阅
1 篇文章 0 订阅

Step 1 下载镜像并初始化

下载镜像

docker pull mysql

下载官方的mysql docker镜像

初始化mysql

docker run -v /data/var/mysql/:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=XXXXXX mysql

为mysql镜像设置初始密码,-v 命令使用数据卷(Data volume)指定本地的文件目录:/data/var/mysql/ 与容器内部的mysql数据目录建立映射(以便数据能够持久化)

关闭容器

docker stop [CONTAINER ID]

Step 2 配置MySQL

以交互式模式启动mysql镜像

docker run -it -v /data/var/mysql/:/var/lib/mysql mysql /bin/bash

启动时,指定使用 -v 命令以本地的文件目录:/data/var/mysql/ 作为 数据卷(Data volume)启动docker镜像,-iv 命令指定以交互式终端形式在镜像内部运行bash

【docker内】在镜像内部启动mysql守护进程

mysqld_safe&

启动mysqld作为后台进程

【docker内】登录mysql

mysql -uroot -pXXXXXX

【docker内】创建mysql账号,设置访问权限

grant all privileges on *.* to 'USER_NAME'@'%' identified by 'PASSWORD';

flush privileges;

将容器内的mysql配置文件拷贝到本地

docker cp [CONTAINER ID]:/etc/mysql/my.cnf /data/local/my.cnf

将docker内的mysql配置文件拷贝到本地的文件目录:/data/local/my.cnf
注意:我拷贝完之后不知道为什么my.cnf变成一个目录了,需要在my.cnf目录下的my.cnf文件单独mv出来

关停容器

docker stop [CONTAINER ID]

Step 3 正式启动mysql容器

以守护进程方式启动mysql镜像

docker run -d -p 5506:3306 -v /data/var/mysql/:/var/lib/mysql -v /data/local/my.cnf:/etc/mysql/my.cnf mysql

-d 命令以守护进程形式启动mysql镜像
-p 命令完成本地端口与镜像端口的映射(本例中将镜像的3306端口映射为了本地的5506端口,外部应以5506访问)
-v 命令使用数据卷(Data volume)挂载本地的文件目录,作为mysql容器的数据文件和配置文件

all is done 可以正常访问mysql了


References
[1] docker如何简单部署mysql: http://blog.csdn.net/ownfire/article/details/50274335

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值