1. 程式人生 > >Ubuntu下Mongodb的配置和使用

Ubuntu下Mongodb的配置和使用

轉自https://my.oschina.net/kakoi/blog/515603

MongoDB沒有建立資料庫的命令,但有類似的命令。

如:如果你想建立一個“myTest”的資料庫,先執行use myTest命令,之後就做一些操作(如:db.createCollection('user')),這樣就可以建立一個名叫“myTest”的資料庫。

今天實驗了mongodb在unbuntu下的使用
//首先安裝mongodb
sudo apt-get install mongodb-server
sudo apt-get install mongodb-client
搭建mongodb的簡單服務
新建一個資料夾
mongod_simple 中包含以下四個檔案
bin
conf  
data
log
//在檔案conf 資料夾下新建一個mongod.conf 檔案
port = 12345        //埠號
depath = data        //資料存貯的目錄
logpath = log/mongod.log   //日誌檔案的路徑  需要指明實際的檔案
fork =true       //後臺程序




//進行上層目錄 cd ..
/usr/bin/mongo -f conf/mongod.conf
/usr/bin/mongo 127.0.0.1:12345/test
//如果出現了向右的箭頭標記 表示啟動成功




//關閉mongod服務兩種方法
1
use admin
db.shutdownServer();
2
//kill -15




//重新啟動Mongod
//此處需要先安裝 sudo apt-get install numactl
numactl --interleave=all /usr/bin/mongod -f conf/mongod.conf
//啟動之後我們可以檢視日誌
//mongd在12345等待連結
/usr/bin/mongo 127.0.0.1:12345
mongodb的基本操縱
show dbs;// 檢視當前系統有多少資料庫
use qq    //使用use切換資料庫
db.dropDatabase();//刪除資料庫
use qq //此處無需建立資料庫,MONGOd會在需要的時候自己建立資料庫
db.qq_data.insert({x:1}) //寫入的資料為JSON資料
show dbs
//能看到qq資料庫重新建立了
查詢資料庫
db.qq_data.find()  //_id 全域性唯一的欄位mongod自己建立的
db.qq_data.insert({x:2,_id:1}) //_id可以自己指定
find 支援limit,skip(跳過)資料


插入多條資料,使用語法
for(i=3;i<100;i++)db.qq_data.insert({x:i})  // 插入了97條資料
db.qq_data.find().cout()//算出有多少條資料
mongodb支援連續操作 db.qq_data.find().skip(3),limit(2).sort({x:1})




資料的更新
查詢的記錄的條件 和更新的資料


db.qq_data.update({x:1},{x:999})
此處有兩個引數
第一個引數表示查詢的地方,第二個表示要改的地方
db.qq_data.insert({x:100,y:100,z:100})
db.qq_data.update({z:100},{$set:{y:99}}) // 此處表示若更改則會把X,Z的值覆蓋 使用set能夠避免覆蓋
更改一條不存在的資料的時候 預設插入到資料庫中
db.qq_data.update({y:100},{y:999},true)  //此處增加TRUE 表示增加一天不存在的資料
//update更新多條資料
db.qq_data.insert({c:1})
db.qq_data.insert({c:1})
db.qq_data.insert({c:1})
db.qq_data.update({c:1},{$set:{c:2}},false,true)
//刪除資料
db.qq_data.remove({x:3})
//刪除資料表
db.qq_data.drop()
//檢視索引
db.qq_data.getIndexes()
//簡歷索引
db.qq_data.ensureIndex({x:1})   x= 1表示正向排序,x=-1表示逆向排序