Docker安装Mysql9全流程保姆教程

Mysql

Docker安装

  1. 参考文章:https://dev.mysql.com/doc/refman/9.0/en/docker-mysql-getting-started.html#docker-starting-mysql-server

获取令牌

  1. 点击网址:https://container-registry.oracle.com/
  2. 登录网站:点击右上角的Sign in按钮并登录
  3. 生成密钥:点击账号下拉框中的Auth Token按钮,然后点击Generate Secret Key按钮并保存
    在这里插入图片描述

安装下载

  1. 注册仓库:输入docker login container-registry.oracle.com,然后输入账号用户名和之前生成的令牌
  2. 拉取镜像:sudo docker pull container-registry.oracle.com/mysql/community-server:9.0
  3. 创建目录:创建之后的目录结构如下,这里的.表示当前用户的根目录;使用的阿里云服务器
.
└── programming
    └── db
        ├── mysql
        │   └── docker-compose.yml
        │   └── data
        │   └── conf
        │   │   └── my.cnf    
        │   └── logs
        └── redis
            ├── conf
            │   └── redis.conf
            ├── data
            │   ├── appendonlydir  [error opening dir]
            │   └── dump.rdb
            └── docker-compose.yml  
  1. my.cnf配置: 复制粘贴到my.cnf

补充说明:若配置Docker-compose.yml时,不指定volumes,则可忽略my.cnf配置

[mysqld]
user=mysql
  1. Docker-compose配置: 复制粘贴到docker-compose.yml

数据持久化参考:https://dev.mysql.com/doc/refman/9.0/en/docker-mysql-more-topics.html#docker-persisting-data-configuration

version: '3.0'
services:
  mysql:
    image: container-registry.oracle.com/mysql/community-server:9.0
    container_name: mysql
    ports:
      - "3306:3306"
    volumes:
      - /home/admin/programming/db/mysql/conf/my.cnf:/etc/my.cnf
      - /home/admin/programming/db/mysql/logs:/var/logs
      - /home/admin/programming/db/mysql/data:/var/lib/mysql
    restart: unless-stopped
    privileged: true
  1. 启动容器:sudo docker-compose -f /home/admin/programming/db/mysql/docker-compose.yml up -d

停止容器:sudo docker stop mysql
删除容器:sudo docker rm mysql

  1. 查看日志:sudo docker logs mysql
  2. 查看挂载:sudo docker inspect mysql
  3. 查看密码:sudo docker logs mysql 2>&1 | grep GENERATED
  4. 登录数据库:sudo docker exec -it mysql mysql -uroot -p,输入刚才查看的密码
  5. 修改密码:ALTER USER 'root'@'localhost' IDENTIFIED BY 'wo372159qwa';
  6. 获取容器Shellsudo docker exec -it mysql bash

远程连接

  1. 登录数据库:sudo docker exec -it mysql mysql -uroot -p
  2. 切换数据库:use mysql
  3. 查看用户:select host,user from user;
  4. 允许远程:update user set host = '%' where user = 'root';
  5. 刷新权限:flush privileges;
  6. 参考文章:https://blog.csdn.net/mazaiting/article/details/106661158

相关推荐

  1. docker快速安装和详细安装-保姆教程

    2024-07-15 01:02:01       38 阅读
  2. 如何在centos服务器上安装docker保姆教程

    2024-07-15 01:02:01       47 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-15 01:02:01       67 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-15 01:02:01       71 阅读
  3. 在Django里面运行非项目文件

    2024-07-15 01:02:01       58 阅读
  4. Python语言-面向对象

    2024-07-15 01:02:01       69 阅读

热门阅读

  1. springsecurity01

    2024-07-15 01:02:01       15 阅读
  2. this指向解析

    2024-07-15 01:02:01       22 阅读
  3. AI究竟是在帮助开发者还是取代他们?

    2024-07-15 01:02:01       20 阅读
  4. C语言 判断素数

    2024-07-15 01:02:01       19 阅读
  5. ios CCRectangleBlock.m

    2024-07-15 01:02:01       17 阅读
  6. Spring之常见注解

    2024-07-15 01:02:01       19 阅读
  7. Golang 后端面经

    2024-07-15 01:02:01       21 阅读
  8. 印度标普基金关门,继续套利美元债LOF

    2024-07-15 01:02:01       20 阅读
  9. 基于深度学习的点云平滑

    2024-07-15 01:02:01       19 阅读
  10. 【网络编程】poll函数

    2024-07-15 01:02:01       18 阅读
  11. 19. 删除链表的倒数第 N 个结点

    2024-07-15 01:02:01       16 阅读
  12. PyMysql error : Packet Sequence Number Wrong - got 1 expected 0

    2024-07-15 01:02:01       20 阅读
  13. TCP和UDP知识点

    2024-07-15 01:02:01       21 阅读
  14. 【C++】指针学习 知识点总结+代码记录

    2024-07-15 01:02:01       19 阅读
  15. 游戏开发面试题1

    2024-07-15 01:02:01       17 阅读