原來是我們DBA在collection加入了validation了,感謝解答。
R
rufus
@rufus
註冊用戶
8
威望
20
帖子
936
资料浏览
2
粉丝
0
关注
rufus 发布的帖子
-
寫入資料發生 Document failed validation 錯誤
我使用mongodb的java driver寫入資料時,發生Document failed validation的錯誤,請問各位大師有解嗎?
已經確認欲寫入的資料沒有特殊字元、符號等。
Document doc = new Document();
doc.put("name", name);
doc.put("id", id); collection.updateOne(Filters.and(Filters.eq("name", name), Filters.eq("id", id)), new Document("$set", doc), new UpdateOptions().upsert(true));錯誤訊息
com.mongodb.MongoWriteException: Document failed validation
-
RE: Mongodb有没有自带的备份工具?
可以透過mongodump 命令備份 Mongo 資料庫
mongodump -h 127.0.0.1 -d my-mongo -o ./mongo-backup
mongodump 常用參數說明如下:
-h: 要備份的 MongoDB 連線位置
-d: 要備份的 Database 名稱
-u: 資料庫使用者名稱
-p: 資料庫密碼mongorestore 命令還原 Mongo 資料庫
要還原剛剛備份的資料庫可以透過以下命令
mongorestore -h 127.0.0.1 -d my-mongo-new --directoryperdb ./mongo-backup/my-mongo
常用參數說明如下:
-h: 要還原的 MongoDB 連線位置
-d: 要還原的 Database 名稱
-u: 資料庫使用者名稱
-p: 資料庫密碼
--directoryperdb: 指定要還原的資料庫檔案來源目錄名稱
--drop: 如果資料庫存在就刪除重新建立 (小心使用) -
RE: MongoDB建索引导致数据库阻塞?
你可以使用下列語法在背景建立索引。
db.my_coll.ensureIndex({words:1}, {background:true});
這個語法會讓建立索引更耗時,在索引完成之前不會使用它,因此在此期間你能夠正常使用數據庫。