您的位置:首页 > 运维架构 > Docker

docker MySQL 容器相关事项

2020-06-24 04:26 441 查看

文章目录

  • 容器内部操作
  • 写在开头

    MySQL部署的时候,通常需要配置很多参数,本文就此介绍一下详细的参数配置

    启动命令

    示例:

    docker run -d --restart=always --privileged=true -v /usr/local/docker_data/mysql/data:/var/lib/mysql -p3306:3306 -e MYSQL_ROOT_PASSWORD=password --name=mysql5.7 mysql:5.7 --lower_case_table_names=1

    语法(Usage)

    docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

    参数介绍(OPTIONS)

    -d
    : 后台运行
    -p
    : 端口映射, 宿主机:容器
    -e
    : 配置参数,
    MYSQL_ROOT_PASSWORD
    root账号的密码
    -v
    : 挂载文件,即文件同步,一般需要把数据文件、配置文件、日志挂载到宿主机,时区同步也可以将
    /etc/localtime
    文件同步到容器中
    --privileged
    : 获取宿主机root权限
    --restart
    : 重启策略

    • no
      : 默认的重启策略,在任何情况下都不会重启容器。
    • always
      : 容器总是重新启动。
    • on-failure
      : 如果退出代码指示的故障错误政策重启的容器。
    restart: "no"
    restart: always
    restart: on-failure=1

    MySQL镜像配置参数介绍(ARG)

    --lower_case_table_names
    : MySQL配置是否忽略表名大小写,1忽略,2严格匹配

    关于时区同步

    不知为何,有时部署时挂载

    localtime
    文件会异常,这里记录一下另外几种同步时间的方法

    # 手动将宿主机中的 `localtime` 文件复制到容器中去
    docker cp /etc/localtime  mysql5.7:/etc/localtime
    docker cp /usr/share/zoneinfo/Asia/Shanghai mysql5.7:/etc/localtime

    容器内部操作

    # 进入容器
    docker exec -it container_name(容器名称) bash

    修改MySQL配置

    # 更新源并安装vim文本编辑器
    apt-get update && apt-get vim
    # 进入配置文件的文本编辑模式
    vim /etc/mysql/mysql.conf.d/mysqld.cnf

    配置修改后

    重启容器
    使配置生效

    登录MySQL

    mysql -u root -p password

    数据还原

    docker exec -i some-mysql sh -c 'exec mysql -uroot -ppassword' < /some/path/on/your/host/all-databases.sql
    内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
    标签: