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 应该消失。

相关推荐
sg_knight19 小时前
Docker 实战:如何限制容器的内存使用大小
java·spring boot·spring·spring cloud·docker·容器·eureka
电棍23319 小时前
在docker a100云服务器运行vulkan->sapien->robotwin的经验(报错segmentation fault)
运维·docker·容器
Doro再努力20 小时前
MySQL数据库07:分组查询与分类查询
数据库·mysql
弥生赞歌21 小时前
Mysql作业四
数据库·mysql
MichaelCoCoQ1 天前
Zabbix监控K8S的PV卷
容器·kubernetes·负载均衡·zabbix·运维开发
似水流年 光阴已逝1 天前
k8s中的StatefulSet 控制器
云原生·容器·kubernetes
chen_note1 天前
K8s的标签应用和调度
云原生·容器·kubernetes·标签·污点与容忍度
墨倾许1 天前
《Windows 11 + Docker:极简DVWA靶场搭建全记录》—— 附详细排错指南与最终解决方案
windows·笔记·网络安全·docker·容器·靶场
岚天start1 天前
解决方案—K8S集群的日志按天并按照命名空间分类定时同步到日志服务器
服务器·docker·kubernetes·shell·日志备份
微学AI1 天前
内网穿透的应用-摆脱局域网!Stable Diffusion3.5 结合cpolar使用更方便
docker·stable diffusion·内网穿透