Docker MySQL 使用全流程

1. 启动 MySQL 容器

bash 复制代码
docker run -d --name my-mysql \
  -e MYSQL_ROOT_PASSWORD=123456 \
  -p 3307:3306 \
  -v /data/mysql:/var/lib/mysql \
  mysql:8.0

说明:

MYSQL_ROOT_PASSWORD:MySQL root 用户密码

-p 3307:3306:将容器 MySQL 端口映射到宿主机(-p 3307:3306 表示宿主机的 3307 → 容器内的 3306)

-v mysql_data:/var/lib/mysql:数据卷,持久化存储数据

mysql:8.0:MySQL 镜像版本

2. 进入 MySQL 客户端

bash 复制代码
docker exec -it my-mysql mysql -uroot -p

输入密码,例如:

bash 复制代码
123456

进入后会看到 mysql> 提示符。

3. 创建数据库

bash 复制代码
CREATE DATABASE mydb CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

查看是否创建成功:

bash 复制代码
SHOW DATABASES;

输出示例:

4. 切换到数据库

bash 复制代码
USE mydb;

5. 创建表

bash 复制代码
CREATE TABLE users (
    id INT AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(100) NOT NULL,
    email VARCHAR(100) NOT NULL
);

查看表:

bash 复制代码
SHOW TABLES;

查看表结构:

bash 复制代码
DESCRIBE users;
  1. 删除表
bash 复制代码
DROP TABLE users;

确认删除:

bash 复制代码
SHOW TABLES;

应该显示空集合(Empty set (0.00 sec))。

7. 删除数据库

bash 复制代码
DROP DATABASE mydb;

确认删除:

bash 复制代码
SHOW DATABASES;

mydb 应该消失。

相关推荐
字节跳动数据库19 分钟前
火山引擎 RDS MySQL 向量索引:把高性能向量检索带到 MySQL 上
人工智能·后端·mysql
一位正在转型AI全栈的前端工程师23 分钟前
前端转全栈:从 502 到 200,我的第一个 Docker+Nginx+Node.js 项目
docker·容器
jason_renyu1 小时前
Linux Docker 服务管理与排查实战指南(新手速查版)
linux·docker·新手docker学习·docker日志查询·docker服务管理
小王C语言1 小时前
MySQL 库的操作:字符集和校验规则、数据库的增删查改、备份和还原
数据库·mysql
小王C语言1 小时前
MySQL 数据类型:数值类型、字符串类型、日期和时间类型、enum 和 set、find_in_set 查询
android·数据库·mysql
童槿顏丶1 小时前
Jenkins部署(Docker)
java·docker·jenkins
维核科技1 小时前
大模型私有化部署:Docker与Kubernetes实战避坑
docker·容器·kubernetes
夜雪一千2 小时前
MySQL的事务是什么?原理、ACID、隔离级别与实战详解
数据库·mysql
呱呱巨基2 小时前
Docker 基础概念学习
linux·c++·学习·docker