1. 程式人生 > >安裝mongodb遇到的一些問題 以及一些指令 及 插件運用方式

安裝mongodb遇到的一些問題 以及一些指令 及 插件運用方式

name 數據庫的操作 版本 跳過 log win host 監聽 shell

安裝 註意事項 在`Mongodb`官網下載最新版本的[Mongodb下載地址](https://cloud.mongodb.com/) 下載`msi`的`window`安裝包,可以裝到C盤或者D盤目錄下 > 由於我是安裝在D盤的環境下 > > ```shell > D:\Program Files (x86)\MongoDB\Server\3.2\bin > ``` > > 所以在bin文件夾下找到mongod.exe命令,然後通過管理員執行`mongod --dbpath x路徑x`,路徑可以是任何地方,我這裏選擇在D盤的MongoDB目錄下,當然路徑不要包含特殊的字符串,比如`Program Files (x86)`也不行 > > ```shell > mongod --dbpath D:\mongodb\data\db > ``` > > ![image](https://user-images.githubusercontent.com/17243165/31977540-fc0a5a6e-b96f-11e7-9a2b-34d66d7241c4.png) 默認安裝c盤 安裝時不要勾選 install compass 否則可能會持續在安裝中 安裝完成運行指令 mongod 則復制c盤 Program Files/mongodb/bin文件 復制目錄 將其配置到系統環境變量中即可 數據庫
-------啟動數據庫 開啟指令:mongod (如果自啟動 就無需執行該指令) -------連接數據庫:mongo -------無問題就查看數據庫:show dbs -------創建數據庫:use dbname use有兩個功能 1、新建數據庫 沒有該數據庫 use表示新建 2、切換數據庫 有該數據庫 use表示切換到該數據庫 新建的數據庫為空是一個臨時的庫 ------刪除數據庫: db.dropDatabase() 刪除前一定要切換到需要刪除的庫 use 1823 --db.dropDatabase() ------查數據庫:show dbs 查詢所有的數據庫 db 查詢當前使用的db 集合 (即數據庫裏的表)不要以數字命名集合
-------增加集合:db.createCollection(‘users‘) users即集合的名字 ------刪除集合:db.name.drop() 需要切換到當前集合 然後執行該指令 ------查找集合 show collectoins() 文檔(即表格中的數據內容) -------增加數據:db.collecionName.insert({obj}) -------刪除數據:db.collecionName.remove({條件}) 是一個空對象時 表示全部刪除 -------修改數據:db.collectionName.updata(查詢條件,修改($set),修改全部)
-------查找數據:db.collectionName.find(查詢條件) db.collectionName.find().pretty() 將查詢後的結果進行格式化 db.collecitonName.save()//有該條數據表示修改 沒有該條數據表示新插入 根據_id 判斷是否存在 分頁 db.user.find().skip(0).limit(2) 1-2 1頁 db.user.find().skip(2).limit(2) 3-4 2頁 db.user.find().skip(4).limit(2) 5-6 3頁 公式:db.user.find().skip((page-1)*pageSize).limit(pageSize) 固值查找 db.user.find({name:‘李四‘,age:30}) 範值查找 db.user.find({age:{$ite:30}}) 查找年齡小於等於30 大於等於詳看官方文檔 且或 $and $or db.user.find({$and:[{name:李四},{age:39}]}) db.user.find().skip(2)跳過2條數據 db.user.find().limit(3) 截取3條數據 db.user.find().skip().limit()跳過數據再截取數據 db.user.find().sort({age:18}:1) 排序 1升序 -1降序 通過node的mongoose 插件操作數據庫 (mongodb也是操作數據庫的插件) mongoose 插件有封裝好的promise 可以直接使用then方法等 1. 下載mongoose npm 2. 連接數據庫 3. 創建schema對象 4. 將schema轉化為數據模型 5. 通過數據模型執行查詢操作 var mongoose = require(‘mongoose‘); // 此插件內部已有封裝好的promis對象 可以使用.then方法 mongoose.connect(‘mongodb://localhost:27017/1823‘);//默認占用端口27017 於數據庫1823進行連接 var db = mongoose.connection;// 獲取連接對象進行監聽 db.on(‘error‘,(err)=>{ console.log(‘連接錯誤‘) }); db.on(‘open‘, function() { console.log(‘連接ok‘) }); // 創建schema 對象 理解成一個表頭 var UserSchema = new mongoose.Schema({ name: String, age :Number, pass: String, }); // 4. 將schema轉化為數據模型 let user = mongoose.model(‘logs‘, UserSchema); //參數1 是集合的名字 與數據模型關聯的schema對象 // 註意註意:參數1數據庫裏數據表的名字一定是復數形式 如果不是復數會默認變成復數格式 這樣就插不到原來的log表裏了 而是在logs裏 // 5.進行數據庫的操作 //插入數據 user.insertMany([{name:"張三",age:18,pass:123},{name:"李四",age:18,pass:345},{name:"王五",age:18,pass:434}]) .then((data)=>{ console.log(data); }) .catch((err)=>{ console.log(err) }) // 查找 // user.find({name:‘李四‘,pass:345}) // .then((data)=>{ // console.log(data) // }) // .catch((err)=>{ // console.log(err) // }) //刪除 // user.deleteMany({name:‘張三‘}) // .then((data)=>{ // console.log(data.deletedCount) // }) // 修改 user.updateMany({name:‘李四‘},{name:‘六六‘}) .then((data)=>{ console.log(data) }) .catch((err)=>{ console.log(err) })

安裝mongodb遇到的一些問題 以及一些指令 及 插件運用方式