温馨提示×

Debian MongoDB如何导入数据

小樊
60
2026-08-02 05:18:01
栏目: 云计算

Debian 上给 MongoDB 导入数据,常见有几种方式,取决于你的数据格式。下面按最常用场景一步步说明。


一、准备环境(确认 MongoDB 已安装)

1️⃣ 检查 MongoDB 是否安装

mongod --version
mongo --version

如果是 MongoDB 6+,可能没有 mongo 命令,而是 mongosh

2️⃣ 启动 MongoDB

sudo systemctl start mongod
sudo systemctl status mongod

二、使用 mongoimport 导入数据(最常用 ✅)

✅ 适用格式

  • JSON
  • CSV
  • TSV

1️⃣ 导入 JSON 文件(最常见)

示例文件 data.json

[
  { "name": "Tom", "age": 18 },
  { "name": "Jerry", "age": 20 }
]

导入命令

mongoimport \
  --db testdb \
  --collection users \
  --file data.json \
  --jsonArray

✅ 说明:

  • --db:数据库名
  • --collection:集合名
  • --jsonArray:表示 JSON 是数组格式

2️⃣ 导入 CSV 文件

示例 data.csv

name,age
Tom,18
Jerry,20

导入命令

mongoimport \
  --db testdb \
  --collection users \
  --type csv \
  --headerline \
  --file data.csv

✅ 参数说明:

  • --type csv
  • --headerline:第一行作为字段名

3️⃣ 指定 MongoDB 用户密码(如已开启认证)

mongoimport \
  --host 127.0.0.1 \
  --port 27017 \
  --username admin \
  --password yourpassword \
  --authenticationDatabase admin \
  --db testdb \
  --collection users \
  --file data.json \
  --jsonArray

三、使用 mongorestore 导入 BSON 数据(备份恢复)

✅ 适用于:

  • mongodump 导出的数据
  • 完整数据库恢复

示例

mongorestore \
  --db testdb \
  /backup/testdb

或恢复全部数据库:

mongorestore /backup

四、常见问题(Debian 常见)

❓ 1. mongoimport 命令不存在

MongoDB 6+ 需要单独安装工具包:

sudo apt install mongodb-database-tools

❓ 2. 权限不足

sudo chmod 644 data.json

或切换到有权限的用户执行。


❓ 3. 中文乱码

确保文件是 UTF-8 编码

file data.json

五、验证是否导入成功

mongosh
use testdb
db.users.find()

六、总结(快速选择)

场景 工具
JSON / CSV 导入 mongoimport
数据库备份恢复 mongorestore
单条插入 insertOne()

如果你愿意,可以告诉我:

  • MongoDB 版本
  • 数据格式(JSON / CSV / SQL)
  • 是否开启认证

我可以给你完全针对你环境的命令

0