docker数据库

一. 拉取镜像

#  docker   pull   mysql:5.6.35

创建docker数据库容器

创建数据库容器启动所需要的目录
# mkdir -p /app/docker_web/mysql_data/zmn/{data,conf}
#  cat   /app/docker_web/mysql_data/conf/my.cnf  //代码有需要可以,再优化
[mysqld]
user=mysql
port=3306
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
pid-file=/var/run/mysql/mysql.pid
log_error=/var/log/mysql/error.log
character_set_server = utf8
server-id = 1
log-bin=/var/lib/mysql/mysql-bin
max_connections=3600
启动容器
# docker run -d --name zmn -m 4096m  -p 3340:3306 -v /app/docker_web/mysql_data/zmn/conf/:/etc/mysql/conf.d -v  /app/docker_web/mysql_data/zmn/data/:/var/lib/mysql -e  MYSQL_ROOT_PASSWORD=admin  mysql:5.6.35
   //此命令是映射3306(容器)--->3340(宿主机)
注:MYSQL_ROOT_PASSWORD 这个是区分大小写的,后面是初始密码,进入数据库后,最好修改

 直接以client 端登陆mysql

# yum install -y mysql
# mysql -h172.17.0.3  -uroot -padmin               注:这里默认是连接docker  mysql容器的3306端口

# mysql -h $IP -uroot -P 3340 -padmin 注:这里的IP 为 宿主机IP

 

二. 创建数据卷

1. 在运行容器之前,先使用docker volume create 创建一个数据卷,用于挂载映射mysql容器数据文件:

# docker volume create mysql_data

2. 用docker volume inspect 命令看下刚创建的mysql_data 数据卷的详细信息:

 

# docker volume inspect mysql_data
[
    {
        "CreatedAt": "2018-02-12T09:14:45+08:00",
        "Driver": "local",
        "Labels": {},
        "Mountpoint": "/var/lib/docker/volumes/mysql_data/_data",
        "Name": "mysql_data",
        "Options": {},
        "Scope": "local"
    }
]

  

大家注意到这一行"Mountpoint": "/var/lib/docker/volumes/mysql_data/_data" 这是数据卷mysql_data 在宿主机上的目录路径,没有容器进行挂载,默认里面是空的

三.  利用数据卷运行mysql 容器

mysql版本选用较为流行的5.x 系列, 使用docker run 运行mysql容器:

# docker run -d --name mysql5.7 -e MYSQL_ROOT_PASSWORD=123456  -p 3307:3306 -v mysql_data:/var/lib/mysql  mysql:5.7

注意上面命令中的 -v mysql_data:/var/lib/mysql ,它会将前面我们创建好的数据卷mysql_data 挂载到mysql容器内部的/var/lib/mysql 目录

 

先检查下刚创建的mysql容器正常与否,使用docker exec 命令连到mysql服务器:

# docker exec -it mysql5.7 mysql -uroot -p

 

转载于:https://www.cnblogs.com/yangsirs/p/6656816.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值