我正在使用 nodejs 將資料遷移到 mongodb,我嘗試遷移的 json 檔案太大,當我嘗試僅遷移一些資料(大約 8000 個檔案)時,它可以作業,否則我會遇到這個問題:
MongooseError: Operation `products.insertOne()` buffering timed out after 10000ms
at Timeout.<anonymous> (\migration-
module\node_modules\mongoose\lib\drivers\node-mongodb-native\collection.js:148:23)
at listOnTimeout (internal/timers.js:557:17)
at processTimers (internal/timers.js:500:7)
MongooseError: Operation `products.insertOne()` buffering timed out after 10000ms
at Timeout.<anonymous> (\migration-
module\node_modules\mongoose\lib\drivers\node-mongodb-native\collection.js:148:23)
at listOnTimeout (internal/timers.js:557:17)
at processTimers (internal/timers.js:500:7)
劇本 :
/** @format */
fs = require('fs')
var mongoose = require('mongoose')
mongoose.connect('mongodb://host')
mongoose.Promise = global.Promise
var schema = new mongoose.Schema({
//some fields
})
var d = fs.readFileSync('./data/file.json', 'utf8', (err, data) => {
if (err) throw err
return d
})
var e = JSON.parse(d)
var Product = mongoose.model('product', schema)
//console.log(e)
for (var i = 0; i < e.length; i ) {
// data process
// another data process
var product = new Product(e[i])
product.save(function (err) {
if (err) return console.log(err)
})
}
e.length === i ? console.log('Migration Done successfully') : ''
請問有什么解決方案可以解決這個問題嗎?
uj5u.com熱心網友回復:
禁用緩沖和其他一些修復:
fs = require('fs')
var mongoose = require('mongoose')
mongoose.set('bufferCommands', false);
var schema = new mongoose.Schema({
//some fields
})
var Product = mongoose.model('product', schema)
var d = fs.readFileSync('./data/file.json', 'utf8', (err, data) => {
if (err) throw err
return data // <= corrected here
})
var e = JSON.parse(d);
//console.log(e)
async function main() {
await mongoose.connect('mongodb://host') // <= corrected here
for (var i = 0; i < e.length; i ) {
// data process
// another data process
var product = new Product(e[i]);
await product.save(); // <= corrected here
})
}
main().then(()=>{console.log('Migration Done successfully')})
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/432712.html
標籤:javascript 节点.js mongodb 猫鼬
