美文网首页
Docker安装MySQL

Docker安装MySQL

作者: 阿森_打豆豆 | 来源:发表于2019-04-11 17:24 被阅读0次

    这里记录一下使用Docker-compose安装MySQL的笔记

    1、创建Dockerfile

    首先,创建目录mysql,用于存放后面的相关东西。

    root@Docker:~$ mkdir -p ~/mysql/data ~/mysql/logs ~/mysql/conf

    data目录将映射为mysql容器配置的数据文件存放路径

    logs目录将映射为mysql容器的日志目录

    conf目录里的配置文件将映射为mysql容器的配置文件

    进入创建的mysql目录,创建Dockerfile

    image
    version: '3.1'
    services:
      mysql:
        restart: always
        image: mysql:5.7.22
        container_name: mysql
        ports:
          - 3306:3306
        environment:
          TZ: Asia/Shanghai
          MYSQL_ROOT_PASSWORD: 12345678
        command:
          --character-set-server=utf8mb4
          --collation-server=utf8mb4_general_ci
          --explicit_defaults_for_timestamp=true
          --lower_case_table_names=1
          --max_allowed_packet=128M
          --sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,ERROR_FOR_DIVISION_BY_ZERO"
        volumes:
          - mysql-data:/var/lib/mysql
    
    volumes:
      mysql-data:
    

    2. 启动容器

    默认情况,docker-compose up启动的容器都在前台,控制台将会同时打印所有容器的输出信息,可以很方便进行调试。当通过 Ctrl-C 停止命令时,所有容器将会停止。如果使用docker-compose up -d,将会在后台启动并运行所有的容器。一般推荐生产环境下使用该选项。

    3.进入容器

    首先查看容器状态,如果启动成功了,进入容器 docker exec -it mysql /bin/bash

    登录MySQL,mysql -u root -p

    image

    4.修改远程访问权限

    
    use mysql;
    
    GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'IDENTIFIED BY '12345678' WITH GRANT OPTION;
    
    FLUSH PRIVILEGES;
    
    

    这里的12345678为你给新增权限用户设置的密码,%代表所有主机,也可以具体到你的主机ip地址

    ②flush privileges; 这一步一定要做,不然无法成功! 这句表示从mysql数据库的grant表中重新加载权限数据 因为MySQL把权限都放在了cache中,所以在做完更改后需要重新加载。

    相关文章

      网友评论

          本文标题:Docker安装MySQL

          本文链接:https://www.haomeiwen.com/subject/nhdxwqtx.html