• 通过Docker新建并使用MySQL数据库


    1. 安装Docker

    确保您的系统上已经安装了Docker。可以通过以下命令检查Docker是否安装并运行:

    systemctl status docker
    
    • 1

    如果没有安装或运行,请按照官方文档进行安装和启动。

    2. 拉取MySQL镜像

    从Docker Hub拉取MySQL官方镜像。这里以MySQL 5.7版本为例:

    docker pull mysql:5.7
    
    • 1

    3. 启动MySQL容器

    使用以下命令启动一个新的MySQL容器,并设置root密码:

    docker run --name mysql5.7-dev -p 3307:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7
    
    • 1

    通过docker ps查看状态
    在这里插入图片描述

    这里,--name 指定容器名称,-p 指定端口映射(将容器的3306端口映射到宿主机的3307端口),-e 用于设置环境变量,这里设置了MySQL的root密码。

    4. 连接到MySQL

    启动容器后,可以使用以下命令进入MySQL命令行:

    docker exec -it mysql5.7-dev mysql -u root -p
    
    • 1

    输入密码(上面设置的123456)后,即可进入MySQL命令行。

    在这里插入图片描述
    这里输入密码时,不会显示,是正常现象。

    5. 创建数据库

    在MySQL命令行中,创建一个新的数据库:

    CREATE DATABASE my_database;
    
    • 1

    在这里插入图片描述

    6. 创建用户并授权

    为了从外部连接到MySQL,需要创建一个用户并授权:

    CREATE USER 'admin'@'%' IDENTIFIED BY '123456';
    GRANT ALL PRIVILEGES ON my_database.* TO 'admin'@'%';
    FLUSH PRIVILEGES;
    
    • 1
    • 2
    • 3

    在这里插入图片描述

    这里创建了一个名为admin,密码为123456的用户,并授权该用户访问my_database数据库。

    7. 设置远程连接

    为了让外部工具(如Navicat)能够连接到MySQL,需要修改MySQL配置,允许远程连接。

    首先,退出MySQL命令行,然后重新进入容器并编辑MySQL配置文件:

    docker exec -it mysql5.7-dev bash
    
    • 1

    接着,编辑/etc/mysql/my.cnf文件,找到[mysqld]部分,并添加以下内容:

    [mysqld]
    bind-address = 0.0.0.0
    
    • 1
    • 2

    保存并退出编辑器,重启MySQL服务:

    docker restart mysql5.7-dev
    
    • 1

    8. 使用外部工具连接

    现在,可以使用任何支持MySQL的客户端工具(如Navicat)连接到数据库。输入宿主机的IP地址和映射的端口(例如,localhost:3307),使用步骤6中创建的用户名和密码进行连接。

    使用步骤:
    我们来创建数据库和表,然后添加一些数据:

    1. 连接到MySQL:使用以下命令连接到MySQL命令行:

      docker exec -it mysql5.7-dev mysql -u root -p
      
      • 1

      输入您设置的root密码后,您将进入MySQL命令行界面。
      在这里插入图片描述

    2. 创建数据库:在MySQL命令行中,创建一个新的数据库example_db

      CREATE DATABASE example_db;
      
      • 1
    3. 选择数据库:选择刚刚创建的数据库:

      USE example_db;
      
      • 1
    4. 创建表:创建一个名为users的表,用于存储用户数据。这里我们假设用户具有idusernameemail字段:

      CREATE TABLE users (
          id INT AUTO_INCREMENT PRIMARY KEY,
          username VARCHAR(50),
          email VARCHAR(100)
      );
      
      • 1
      • 2
      • 3
      • 4
      • 5
    5. 添加数据:向users表中插入一些用户数据:

      INSERT INTO users (username, email) VALUES
          ('user1', 'user1@example.com'),
          ('user2', 'user2@example.com'),
          ('user3', 'user3@example.com');
      
      • 1
      • 2
      • 3
      • 4
    6. 查看数据:使用SELECT语句查看users表中的所有数据:

      SELECT * FROM users;
      
      • 1

      这将检索users表中所有行的数据,并将其显示在命令行中。
      在这里插入图片描述

    通过这些步骤,您已经成功创建了一个新的数据库,向其中的表添加了一些新数据,并查看了添加的数据。您可以根据您的需要修改这些示例,并探索更多MySQL数据库操作。

    在这里插入图片描述

  • 相关阅读:
    2000-2020上市公司全要素生产率OLS和固定效应方法含原始数据和Stata代码
    利用nginx内部访问特性实现静态资源授权访问
    深度学习pytorch之hub模块
    Spring 观察者模式 EventListener
    ThreadPoolTaskExecutor不得不说的坑
    C语言----深入理解指针(5)
    一个方法解决nSum 问题
    前端日志采集方案浅析
    每日三题 7.27
    C/C++和Python编程时NULL和None傻傻分不清楚
  • 原文地址:https://blog.csdn.net/m0_59328104/article/details/137976918