跳到主要內容

發表文章

目前顯示的是有「mongodb」標籤的文章

[MongoDb] 如何從Docker 裡備份資料出來

基本上我們使用mongodump來備份資料, 如果資料庫在docker 容器裡的話, 我們可以使用docker exec 將mongodump的指令餵給容器去幫我們執行, 如下 > docker exec -it my-mongo-container mongodump -h localhost -d my-database -it 建立終端機與建立容器輸入的連結 my-mongo-container: 容器名稱 my-database: 欲備份的資料庫名稱 mongodump在備份時, 會在dump資料夾下以資料庫的名稱建一個新的資料夾放備份資料 (進入容器看一下) admin@aubuntu:~$ docker exec -it my-mongo-container bash root@fe70f7f19df4:/# dir bin boot data dev docker-entrypoint-initdb.d dump etc home js-yaml.js lib lib64 media mnt opt proc root run sbin srv sys tmp usr var root@fe70f7f19df4:/# cd dump root@fe70f7f19df4:/dump# dir my-database 此時我們可以使用docker cp的指令將他們從容器內複製出來, 如下 > docker cp  my-mongo-container:dump/my-database ./ admin@abuntu:~$ dir my-database

[MongoDb] 資料存在就更新資料, 不存在就新增

今天如果我想更新資料我可以用findOneAndUpdate, 但資料如果本身就不存在於資料庫裡時, 而我又想將這筆資料插入進去 那我們可能需要在callback function裡作新增的動作如下  Customer.findOneAndUpdate( query, update, function (err,result){ if (!err){ if (! result ){ result = new Customer( update ) } result.save( function (err){ if (err) throw err }) } }) 而更簡單的方法是我們可以傳入 { upsert: true} 這個option參數來做到一樣的事情 Customer.findOneAndUpdate( query, update,  {upsert:true} ,  function (err){       if (err) throw err  })       

初探 MongoDb, 安裝設定教學

相信大家都有聽過 NoSQL database, 而  Mongodb 就是 NoSQL database, 至於它的好處這邊就不佳贅述, 本篇文章主要是把我最近安裝MongoDb的步驟寫下來分享給各位參考 下載安裝Mangodb 設定環境 在MongoDB的目錄裡建立db 資料夾 在MongoDB的目錄裡建立log 資料夾 使用以下指令設定 mongodb ./mongod.exe --directoryperdb --dbpath "C:\Program Files\MongoDB\db" --logpath "C:\Program Files\MongoDB\log\mongo.log" --logappend --rest --install --dbpath  告訴mogodb將資料儲存到db, --logpath, --logappend  以append的方式將日誌儲存到 log\mongo.log, --install 以service的方式啟動 --rest  提供 rest api 讓我們操作db 設定完成後會看到 2017-09-27T02:04:52.151-0700 I CONTROL  [main] ** WARNING: --rest is specified without --httpinterface, 2017-09-27T02:04:52.207-0700 I CONTROL  [main] **          enabling http interface 啟動資料庫 net start mongodb The MongoDB service is starting. The MongoDB service was started successfully. 設定使用者 首先我們必須先進入mongodb shell  C:\Program Files\MongoDB\...