MongoDB數據庫操作和程序基礎文檔

數據庫常用操作命令

Bin/mongod run 啓動數據庫服務端。

bin/mongod.exe --dbpath d:/data/mongo 啓動數據庫服務端並且將數據庫目錄設定在該地址下。

run 直接啓動。例:./mongod run
--dbpath
指定特定存儲目錄啓動,若目錄不存在則創建。例:
./mongod --dbpath /var/data/mongo
--port
指定端口啓動。例:./mongod --port 12345

bin/mongon.exe 啓動數據庫客戶端用命令行操作。

停止MONGO服務:
方法1:服務端停止,可使用Ctrl+C
方法2:在客戶端停止,可先連接客戶端

 ./mongo
 
並使用命令
 db.shutdownerver()
 
然後退出客戶端
 exit

 

啓動bin/mongodump.exe可以自動備份數據

bin/mongorestore.exe恢復一個mongodump備份數據

bin/mongoexport 導出一個數據表數據爲(json,csv)格式

bin/mongoimportjson  json格式的數據導入數據表表

bin/mongofiles  gridfs文件操作

注意事項

關閉web服務器操作系統之前必須先備份mongodb,然後關閉mongodb服務,在關閉或者重新啓動操作系統。

根據網上資料有人曾說直接關閉操作系統會導致mongodb緩存數據沒有被寫入硬盤。

要經常性的觀察mongodb數據總存儲的大小,避免數據過大造成寫入困難導致的數據丟失情況。

.Net開發幫助說明

開發類庫

MongoDB.Driver0.8.1

該版本仍然處於dbug狀態,但好在代碼比較簡單,因此希望在此基礎上構建適合自身操作的驅動層。

數據庫連接

Mongo mg = new Mongo(localhost,27087);//聲明數據庫操作類

 

 

bool result=mg.Connect();//打開連接

Database db = mg.getDB("db");//打開db數據庫

IMongoCollection col=db.GetCollection("table");//打開db數據庫中的table

mg.Disconnect();//關閉連接

新增數據

Mongo mg = new Mongo(localhost,27087);//聲明數據庫操作類

 

 

bool result=mg.Connect();//打開連接

Database db = mg.getDB("db");//打開db數據庫

IMongoCollection col=db.GetCollection("table");//打開db數據庫中的table

Document doc = new Document();//聲明數據類型

doc["name"] = "xto";//賦值

doc["login"] = "test";//賦值

col.Insert(doc);//插入數據

mg.Disconnect();//關閉連接

 

修改數據

Mongo mg = new Mongo(localhost,27087);//聲明數據庫操作類

 

 

bool result=mg.Connect();//打開連接

Database db = mg.getDB("db");//打開db數據庫

IMongoCollection col=db.GetCollection("table");//打開db數據庫中的table

Document query=new Document();//聲明查詢條件對象

query.Add("id",1);//查詢條件對象賦值

Document newdata = new Document();//聲明修改對象

newdata.Add("name","222");//修改對象賦值

col.UpdateAll(newdata,query,true);//更新數據

mg.Disconnect();//關閉連接

簡單查詢

Mongo mg = new Mongo(localhost,27087);//聲明數據庫操作類

 

 

bool result=mg.Connect();//打開連接

Database db = mg.getDB("db");//打開db數據庫

IMongoCollection col=db.GetCollection("table");//打開db數據庫中的table

Document query=new Document();//聲明查詢條件對象

query.Add("id",1);//查詢條件對象賦值

ICursor cur = col.FindAll();//查詢指針

foreach (Document docx in cur.Documents)

{

Response.Write(docx["id"]+"</br>");

}

mg.Disconnect();//關閉連接

分頁查詢

Mongo mg = new Mongo(localhost,27087);//聲明數據庫操作類

 

 

bool result=mg.Connect();//打開連接

Database db = mg.getDB("db");//打開db數據庫

IMongoCollection col=db.GetCollection("table");//打開db數據庫中的table

Document query = new Document();//聲明查詢條件對象

Document where = new Document();//聲明邏輯條件對象

where.Add("$gt",1);//邏輯條件對象賦值;含義:>1

query.Add("id",where);

ICursor cur = col.Find(query).Skip(10).Limit(100);//從第10條記錄開始查詢每頁顯示100

foreach (Document docx in cur.Documents)

{

Response.Write(docx["id"]+"</br>");

}

mg.Disconnect();//關閉連接

 

複雜查詢

Mongo mg = new Mongo(localhost,27087);//聲明數據庫操作類

 

 

bool result=mg.Connect();//打開連接

Database db = mg.getDB("db");//打開db數據庫

IMongoCollection col=db.GetCollection("table");//打開db數據庫中的table

Document query = new Document();//聲明查詢條件對象

Document where = new Document();//聲明邏輯條件對象

where.Add("$gt",1);//邏輯條件對象賦值;含義:>1

query.Add("id",where);

ICursor cur = col.Find(query);

foreach (Document docx in cur.Documents)

{

Response.Write(docx["id"]+"</br>");

}

mg.Disconnect();//關閉連接

 

索引創建

Mongo mg = new Mongo(localhost,27087);//聲明數據庫操作類

 

 

bool result=mg.Connect();//打開連接

Database db = mg.getDB("db");//打開db數據庫

IMongoCollection col=db.GetCollection("table");//打開db數據庫中的table

Document index = new Document();//創建索引對象

index["id"] = 1;//索引對象賦值

col.MetaData.CreateIndex(index,true);//創建索引

mg.Disconnect();//關閉連接

刪除數據

Mongo mg = new Mongo(localhost,27087);//聲明數據庫操作類

 

 

bool result=mg.Connect();//打開連接

Database db = mg.getDB("db");//打開db數據庫

IMongoCollection col=db.GetCollection("table");//打開db數據庫中的table

Document query = new Document();//創建刪除條件對象

query.Add("id", 1);//條件對象賦值

col.Delete(query,true);//刪除滿足查詢條件的記錄

mg.Disconnect();//關閉連接

 

Python開發幫助說明

python部分來不及寫了,準備離職了。交給後人去吧

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章