mongodb使用總結

1.建立目錄mongoDBnode

2.建立data目錄,用來放數據文件
建立logs目錄,用來放log日誌
建立etc目錄,用來放配置文件mongodb

3.在etc目錄下建立mongo.conf文件,內容爲
dbpath=/mongodb/data
logpath=/mongodb/logs/mongo.log
logappend=true
journal=true
quiet=true
port=27017數據庫

4.vim的退出
按esc而後shift+:(冒號)
wq退出w保存,q退出vim

5.在bin目錄下,使用
mongodb -f /mongodb/etc/mongo.confapp

6.更改指向,創建軟鏈接
ln -s /mongodb/mongoose

ls -la查看全部軟鏈接函數

mongod -f 測試

若是報mongod: commond not found
由於mongod沒有配置到全局變量內,因此沒法找到
解決
export MONGO_PATH=/User/XXX/mongod
export PATH=$PATH:$MONGO_PATH/binui

在bin目錄下輸入Mongod -f /Uers/xxx/mongodb/etc/mongo.conf日誌

在一個窗口開啓鏈接,mongod -f /Users/xxx/mongodb/mongodb-osx-x86_64-3.4.7/bin
另一個窗口輸入mongo,查看鏈接狀況

出現大於號成功,測試show dbs

受權方式啓動Mongo
mongod -f /User/xxx/mongo/etc/mongod.conf --auth
加上--auth是受權方式

建立用戶權限
db.createUser({user:"admin",pwd:"admin",roles:["root"]})
db.createUser({user:'admin',pwd:'admin',roles:[{role:'dbOwner', db: 'test'}])指定用戶只有訪問某一個數據庫權限

db.auth("admin","admin")驗證權限

控制檯寫入的格式以下:
db.createUser(
... {
... user:"test1",
... pwd: "test1",
... roles: [{ role: "readWrite", db: "test"}]
... }
... )


1.查看數據庫
show dbs
2.建立數據庫
ues dbname(此時數據庫建立可是沒有值是不會顯示的)
3.建立集合(建立表)
db.createCollection("user")
db.users.insert({id:1, name: 'hello'})直接插入數據建立集合
4.查看集合
show collections
5.刪除數據庫
db.dropDatabase()選擇完制定數據庫,而後在執行此命令
6.刪除集合
db.user.drop()
7.插入數據
db.user.insert({userId:101,userName:'jack',userAge:20,class:{name:'tm',num:10}})
8,顯示全部數據
db.user.find()
db.user.find().pretty()格式化數據
db.user.findOne()查詢第一條數據
9,修改數據
db.user.update({userName:'jack'},{$set:{userAge:30}})
10.更新子文檔
db.user.update({'userName:'jack'},{$set:{'class.name':'test'}}) 'class.name'用引號包裹
11.帶條件搜索
db.user.find(userAge:{$lt:40}) 小於某個值
db.user.find(userAge:{$gt:50}) 大於某個值
db.user.find(userAge:{$gte:20}) 大於等於某個值
12.刪除表中數據
db.user.remove({userId:11})

13.導入文件
mongoimport -d db_demo -c users --file /user/xxx/xx
-d(表明鏈接數據庫) 後面跟得是文檔名
-c(鏈接集合) 後面跟的是集合名
--file 是導入文件的路徑

14.node下連接數據庫
//若是是帶帳號和密碼,格式是mongodb://帳號:密碼@ip:端口/數據名稱
mongoose.connect('mongodb://127.0.0.1:27017/dumall')

15.建表時,表要加s如goods
否則在寫關聯數據表時,須要在model中用第三個參數,以下面:
mongoose.model('Good', productSchema, 'good')
第三個參數是制定和哪張表關聯

16.mongoose中排序和分頁函數Goods.find(params).skip(skip).limit(pageSize).sort({'salePrice': sort}).exec(function(err, doc){ })

相關文章
相關標籤/搜索