在 Debian 上给 MongoDB 导入数据,常见有几种方式,取决于你的数据格式。下面按最常用场景一步步说明。
mongod --version
mongo --version
如果是 MongoDB 6+,可能没有
mongo命令,而是mongosh
sudo systemctl start mongod
sudo systemctl status mongod
mongoimport 导入数据(最常用 ✅)data.json[
{ "name": "Tom", "age": 18 },
{ "name": "Jerry", "age": 20 }
]
mongoimport \
--db testdb \
--collection users \
--file data.json \
--jsonArray
✅ 说明:
--db:数据库名--collection:集合名--jsonArray:表示 JSON 是数组格式data.csvname,age
Tom,18
Jerry,20
mongoimport \
--db testdb \
--collection users \
--type csv \
--headerline \
--file data.csv
✅ 参数说明:
--type csv--headerline:第一行作为字段名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
mongoimport 命令不存在MongoDB 6+ 需要单独安装工具包:
sudo apt install mongodb-database-tools
sudo chmod 644 data.json
或切换到有权限的用户执行。
确保文件是 UTF-8 编码:
file data.json
mongosh
use testdb
db.users.find()
| 场景 | 工具 |
|---|---|
| JSON / CSV 导入 | ✅ mongoimport |
| 数据库备份恢复 | ✅ mongorestore |
| 单条插入 | insertOne() |
如果你愿意,可以告诉我:
我可以给你完全针对你环境的命令 ✅