express+mongodb+mongoose簡單入門


mongodb安裝

window安裝方法就不討論了,比較簡單~我們來看一下在linux下面的安裝步驟~(這里需要一點linux的簡單命令知識哈)

1.下載文件到服務器(先創建好自己想安裝的目錄)~

curl -O http://fastdl.mongodb.org/linux/mongodb-linux-i686-2.0.1.tgz  #下載安裝文件

 

2.解壓下載的文件

[root@localhost soft]# tar -zxvf mongodb-linux-i686-2.0.2-rc2.tgz

 

3.我們解壓到這么長的文件名(mongodb-linux-i686-2.0.2-rc2)改一下吧,改成(mongodb)就好了,這樣方便我們操作路徑和好看簡潔一點嘛。好啦,下載解壓好改好名,現在我們看到的文件應該是這樣的--->mongodb文件夾下面有bin文件夾,bin文件夾下面有一個應用程序文件。現在我們有下面的命令在mongodb目錄下新建一個data目錄存放數據、新建一個log目錄存放日志,然后在log目錄下新建一個日志文件,例如我們命名為mongodb.log

[root@localhost mongodb]# mkdir log 
[root@localhost mongodb]# mkdir data
[root@localhost mongodb]# cd log
[root@localhost log]# touch mongodb.log 

 

Ok文件夾創建好了,然后我們定位到mongodb/bin目錄中(如下命令)

[root@localhost local]# cd mongodb/bin  

 

雞凍的時刻來了!我們來啟動一下mongodb

1.簡單啟動數據庫

[root@localhost mongodb]# ./bin/mongod(這個很清楚吧就是運行bin下面的mongod.exe文件)  -port 10001(設置端口號為10001,默認的是27017)  --dbpath=data/(設置存放數據庫的路徑)   --logpath=log/mongodb.log  (設置日志文件及路徑)

 

下面來一個上面命令的純靜版

[root@localhost mongodb]# ./bin/mongod -port 10001 --dbpath = data/  --logpath=log/mongodb.log  

 

在后台一直運行版加fork版

[root@localhost mongodb]# ./bin/mongod -port 10001 --dbpath = data/ --logpath=log/mongodb.log --fork

 

需要用戶名密碼登錄版

[root@localhost mongodb]# ./bin/mongod -port 10001 --dbpath = data/  --logpath=log/mongodb.log --fork --auth

 

服務成功啟動有沒有!有沒有!

再接下來我們就要操作數據庫啦 先運行mongodb的shell腳本

[root@localhost mongodb]# ./bin/mongo
//運行之后看到以下信息說明成功運行
MongoDB shell version: 3.2.9
connecting to: test

 

2.好啦我們可以操作數據庫了

show dbs  //查下數據庫列表
admin //會輸出默認的數據庫名admin

 

3.一些簡單常用操作數據庫的命令

1.use mydb  //切換或叫打開數據庫,如果數據庫不存在則會自動創建(mydb為數據庫名)
2.db.dropDatabase()//刪除數據庫
3.db.createCollection(name(集合名稱),options(可選參數太多可自行網上查))   //創建集合(所謂的集合其實就相當於傳統的表)
4.db.mycollection(集合名).drop() //刪除集合
5.db.mycollection(集合名).insert({要存的數據json對象}) //插入數據到集合(表)
6.db.mycollection(集合名).find() //查數據
7.db.mycollection(集合名).find().pretty() //查數據帶格式化
8.db.mycollection.remove({'title':'MongoDB Overview'}) //刪除帶條件title參數的數據
9.db.mycollection.remove({}) //刪除所有數據 網上有很多是這樣寫的db.mycollection.remove() 小sam發現會報錯

 

好啦,先說這些吧,還有很多命令大家網上找找了。

mongodb用戶權限

進入mongodb的操作台

1.創建用戶

db.createUser({user:"你的用戶名",pwd:"密碼",roles:[{role: "userAdminAnyDatabase", db: "admin"}]}) //roles是可選的參數,指用戶指定的角色,可選角色參數如下
 1. 數據庫用戶角色:read、readWrite; 2. 數據庫管理角色:dbAdmin、dbOwner、userAdmin; 3. 集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager; 4. 備份恢復角色:backup、restore; 5. 所有數據庫角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase 6. 超級用戶角色:root // 這里還有幾個角色間接或直接提供了系統超級用戶的訪問(dbOwner 、userAdmin、userAdminAnyDatabase)
 7. 內部角色:__system
 具體角色 Read:允許用戶讀取指定數據庫 readWrite:允許用戶讀寫指定數據庫 dbAdmin:允許用戶在指定數據庫中執行管理函數,如索引創建、刪除,查看統計或訪問system.profile userAdmin:允許用戶向system.users集合寫入,可以找指定數據庫里創建、刪除和管理用戶 clusterAdmin:只在admin數據庫中可用,賦予用戶所有分片和復制集相關函數的管理權限。 readAnyDatabase:只在admin數據庫中可用,賦予用戶所有數據庫的讀權限 readWriteAnyDatabase:只在admin數據庫中可用,賦予用戶所有數據庫的讀寫權限 userAdminAnyDatabase:只在admin數據庫中可用,賦予用戶所有數據庫的userAdmin權限 dbAdminAnyDatabase:只在admin數據庫中可用,賦予用戶所有數據庫的dbAdmin權限。 root:只在admin數據庫中可用。超級賬號,超級權限 

2.在mongodb shell 腳本用戶登錄

db.auth("用戶名","密碼")

好了,mongodb就先分享到這了.

mongoose

首先我們需要知道mongoose是一個模塊,跟其他模塊一樣,用npm就能加到項目中了.確認了已經引入模塊,以下代碼用mongoose連接數據庫

//引用mongoose模塊 
var mongoose = require('mongoose'); //連接數據庫
mongoose.connect('mongodb://數據庫登錄用戶名:數據庫登錄密碼@數據庫連接地址') 例:mongoose.connect('mongodb://:sam:123456@110.36.23.32:27017/samdb') //創建對象定義集合結構類型(其實就是表結構)
var testSchema=new mongoose.Schema({ userID:Number, name:String, comment:String },{collection:'sam'});//collection:'sam'表示操作的集合 //操作數據庫
var Cat=mongoose.model('Cat',testSchemas); var kitty=new Cat({userID:1,name:"李四",comment:"路過路過"}); kitty.save(function(err){ if(err){ console.log(err); data.err="保存失敗"; }else{ data.err="保存成功"; } });

 

以上代碼就可以簡單的操作數據庫了,是不是很方便呢!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM