没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
1.首先拉取 mysql的官方镜像
docker pull mysql
2.使用 mysql镜像运行单独的容器
docker run -d --name myMysql -v /data/mysql:/var/lib/mysql -e
MYSQL_ROOT_PASSWORD=123456 -p 3306:3306mysql
-d : --detach,后台运行。
--name : 为你的镜像创建一个别名,该别名用于更好操作。
-p : 映射端口,一般我们会将默认端口进行更改,避免与本机的mysql端口冲突,如
果你宿主机有 mysql,请更改端口,如 -p 33060:3306。
-e : 环境变量。为 mysql的 root用户设置密码为 123456。
-v : 指定数据卷,意思就是将 mysql容器中的/var/lib/mysql(这个是数据库所有数
据信息文件)映 射到宿主机/data/mysql里面。
3.进入到 myMysql容器中
dockerexec -t -imyMysql /bin/bash
-i : --interactive,交互界面。
-t : --tty,伪终端界面。
4.登录到 myMysql容器中,登录到 mysql服务器中
mysql -uroot -p
5.增加用户,授予权限
grant all on *.* to 'username'@'%' identified by 'password';
这时一条授予权限命令,当用户不存在时,则会自动创建。
. 前一个*星号代表所有数据库,后一个星号代表所有数据表
'username"@'% : username是用户名,%为所有 IP。
identified by 'password' : 密码设置为 password。
6.退出 Mysql容器
ctrl + p + q
7.查看宿主机 ip
docker-machine ls
8.通过宿主机 ip及端口连接数据库
细节处还需深入研究
docker -v /data/mysql:/var/lib/mysql
以上这条命令到底是咋运行的。
第一次,启动 mysql 容器时,宿主机的/data/mysql 是空的。是 docker 容器中的
/var/lib/mysql 会自动映射到宿主机/data/mysql,让宿主机有了对应的文件信息。
第二次,我删除了 docker 容器,这时宿主机的/data/mysql 是有文件的。然后我创建了
mysql 容器,并设置对应的映射关系。这时,宿主机的/data/mysql 文件映射到了容器中,保
持数据一致。
这就产生疑问了?到底是以哪一个为主要的数据呢?
开始做个实验,重新创建目录,在目录中添加一个 demo 文件,使用其进行挂在数据卷,
看是否会以宿主机为主要数据。
资源评论
xxpr_ybgg
- 粉丝: 6751
- 资源: 3万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功