docker mysql 容器导入数据 .sql文件导入容器

前言

本文所涉及应用场景:远程部署环境,并获取不到数据库授权端口

准备工作

1、按需准备sql文件

数据库转储sql文件
在这里插入图片描述

2、将文件上传服务器(宿主机)

这里根据自己习惯使用指定工具上传文件,需要留意文件位置

3、将sql文件复制进容器中

# docker cp 服务器(宿主机)文件路径 容器名: 容器文件路径
docker cp /home/dock/mysql/testdb.sql mysql:/

操作步骤

1、进入容器内部

# 我这里的容器名为mysql 注意自己的容器名
docker exec -it mysql bash  

2、进入数据库

# mysql -u 用户名 -p密码
mysql -uroot -p123456

3、创建数据库

注意sql语句后面的 分号 ;

#create database 数据库名
create database testdb;

4、切换数据库

use testdb;

5、导入sql文件

source /testdb.sql;

在这里插入图片描述

然后静静等待即可

### 将 SQL 文件导入 Docker 中的 MySQL 数据库 为了在 Docker 环境中将 SQL 文件成功导入MySQL 数据库,可以遵循以下方法: #### 方法一:通过 `docker exec` 和命令行工具实现 可以直接进入正在运行的 MySQL 容器并利用 `mysql` 命令来加载外部 SQL 脚本文件。这通常适用于较小规模的数据集。 ```bash docker exec -i container_name mysql -u username -ppassword database_name < /path/to/yourfile.sql ``` 此操作会读取指定路径下的 `.sql` 文件并通过管道将其内容传递给容器内的 MySQL 实例进行处理[^1]。 #### 方法二:先复制再执行 对于较大体积或复杂结构的 SQL 文件来说,在本地机器上直接向远程服务器传输可能会遇到性能瓶颈。此时建议先把 SQL 文件拷贝至目标 MySQL 容器内部后再做进一步的操作。 使用 `docker cp` 把主机上的 SQL 文件传送到容器的工作目录下: ```bash docker cp /host/path/to/file.sql container_name:/container/path/ ``` 接着切换到该容器环境里调用相应的数据库管理指令完成数据恢复工作: ```bash docker exec -it container_name bash mysql -u user -p db_name </container/path/file.sql exit ``` 这种方法不仅提高了效率还减少了网络延迟带来的影响[^3]。 #### 示例代码展示整个流程 假设有一个名为 `shop_goods.sql` 的文件想要迁移到由 Docker 托管的服务端实例当中去,则具体步骤如下所示: ```bash # 复制 .sql 文件MySQL 容器docker cp shop_goods.sql mysql_container:/tmp/ # 登录到 MySQL 容器导入数据 docker exec -it mysql_container bash mysql -uroot -prootpassword my_database </tmp/shop_goods.sql exit ``` 以上就是关于如何在 Docker 环境下把 SQL 文件顺利迁移至 MySQL 数据库存储空间的方法介绍[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值