• Docker安装Mysql(docker-compose.yml)


    创建docker-compose.yml文件

    version: '2'
    services:
      db:
        image: 'mysql/mysql-server:5.7'
        restart: always
        container_name: mysql57
    privileged: true environment: MYSQL_USER: yunwisdom MYSQL_PASSWORD: password123 MYSQL_DATABASE: database MYSQL_ROOT_PASSWORD: password123 ports:
    - '3337:3306'

    将以上文件保存为docker-compose.yml文件

    其他配置文件:

    version: '3'
    services:
      db:
        image: mysql
        restart: always
        privileged: true
        environment:
          MYSQL_ROOT_PASSWORD: 123456
        command:
          --default-authentication-plugin=mysql_native_password
          --character-set-server=utf8mb4
          --collation-server=utf8mb4_general_ci
          --explicit_defaults_for_timestamp=true
          --lower_case_table_names=1
          --max_allowed_packet=128M;
        ports:
          - 3306:3306
        volumes:
          - ./data:/var/lib/mysql

    启动docker-compose脚本

    docker-compose up
    
    启动docker-compose(后台模式-不打印日志)
    docker-compose up -d

    进入容器创建用户

    #########Docker命令查看对应MySQL容器的ContainerID/Image等信息#########
    C:WorkspaceDockerMySQL>docker ps
    CONTAINER ID        IMAGE                    COMMAND                  CREATED             STATUS                       PORTS                               NAMES
    bac300781058        mysql/mysql-server:5.7   "/entrypoint.sh mysql"   2 days ago          Up About an hour (healthy)   33060/tcp, 0.0.0.0:3337->3306/tcp   mysql57
     
     
    #########################通过Docker容器进入MySQL##############
    C:WorkspaceDockerMySQL>docker exec -it bac300781058 bash
     
     
    #########################登陆Mysql并新建用户#######################
    bash-4.2# mysql -u root -p
    Enter password:
     
    Welcome to the MySQL monitor.  Commands end with ; or g.
    Your MySQL connection id is 123
    Server version: 5.7.26 MySQL Community Server (GPL)
     
    Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.
     
    Oracle is a registered trademark of Oracle Corporation and/or its
    affiliates. Other names may be trademarks of their respective
    owners.
     
    Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.
     
     
    #########################创建用户并分配权限#######################
    mysql> create user 'admin001'@'%' identified by 'password123';
    Query OK, 0 rows affected (0.00 sec)
     
    mysql> grant all privileges on *.* to 'admin001'@'%' identified by 'password123';
    Query OK, 0 rows affected, 1 warning (0.00 sec)
     
    mysql> flush privileges;
    Query OK, 0 rows affected (0.00 sec)
     
    mysql> create database database001;
    Query OK, 1 row affected (0.00 sec)
     
    mysql>create database database002 default charset utf8 collate utf8_general_ci;
    Query OK, 1 row affected (0.00 sec)
     
    #######################        删除用户及权限       #########################
    mysql>drop user 'admin001'@'localhost'
    mysql>drop user 'admin001'@'%'
     
    ####################### 新建用户后,使用admin001登陆 #########################
     
    bash-4.2# mysql -u admin001 -p
    Enter password:
    Welcome to the MySQL monitor.  Commands end with ; or g.
    Your MySQL connection id is 142
    Server version: 5.7.26 MySQL Community Server (GPL)
     
    Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.
     
    Oracle is a registered trademark of Oracle Corporation and/or its
    affiliates. Other names may be trademarks of their respective
    owners.
     
    Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.
     
    mysql>
  • 相关阅读:
    CentOS下Docker与.netcore(五)之 三剑客之一Docker-swarm集群
    Dockerfile 解析--文件结构
    秒懂JWT
    智能爬虫框架
    Docker 学习笔记-数据管理
    枚举器与迭代器
    Entity Framework 并发冲突解决方案
    Entity Framework Core 简介
    Try 和异常
    Nginx反向代理实现docker容器域名解析
  • 原文地址:https://www.cnblogs.com/raorao1994/p/13552835.html
Copyright © 2020-2023  润新知