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="保存成功"; } });
以上代碼就可以簡單的操作數據庫了,是不是很方便呢!