Node+Express+MongoDB+Socket.io搭建實時聊天應用實戰教程(一)--MongoDB入門

jopen 9年前發布 | 43K 次閱讀 MongoDB NoSQL數據庫

前言

本文并不是網上流傳的多少天學會MongoDB那種全面的教程,而意在總結這幾天使用MongoDB的心得,給出一個完整的Node+Express+MongoDB+Socket.io搭建實時聊天應用實戰教程。寫博客的目的,一來是為了方便自己日后查閱某些語法,二來是本著學習和共享的精神,與大家探討技術。本系列教程同步到個人的Github:https://github.com/yuanzm/MongoDB-demo

MongoDB簡介

MongoDB是目前在IT行業非常流行的一種非關系型數據庫(NoSql),其靈活的數據存儲方式備受當前IT從業人員的青睞。MongoDB很好的實現了面向對象的思想(OO思想),在MongoDB中每一條記錄都是一個Document對象。MongoDB最大的優勢在于所有的數據持久操作都無需開發人員手動編寫SQL語句,直接調用方法就可以輕松的實現CRUD操作。--百度百科
從個人這幾天對于MongoDB的使用情況看來,非常喜歡MongoDB的面向對象的風格,因為這在JavaScript和node編程中顯得尤為合適。在這里博主也不想比較拿MongoDB和傳統的關系型數據庫比較,因為這和語言的對比一樣,都是沒有意義的,每種語言/工具都有各自適用的場景。

MongoDB安裝

MongoDB的安裝在Linux等系統下非常簡單,只要按照官網的教程幾行命令就能搞定。但是在Windows下面顯得尤為麻煩,可能會遇到各種蛋疼的情況。無論如何,按照官網的教程是不二的選擇,因為很多博客都沒有正確的說明安裝步驟,到最后搞得一團糟。這里同樣給出Windows下面的安裝教程

  • Step1: 下載適合自己電腦的MongoDB版本,下載鏈接:DownLoads
  • Step2:新建目錄D:\MongoDB,解壓下載到的安裝包,把bin文件夾拷貝到剛創建的目錄下。
  • Step3: 在D:\MongoDB目錄下新建data文件夾,它將會作為數據存放的根文件夾。
  • Step4: 在D:\MongoDB目錄下新建log文件夾,它將會作為數據存放的根文件夾。
     Node+Express+MongoDB+Socket.io搭建實時聊天應用實戰教程(一)--MongoDB入門
  • Step5: 配置Mongo服務端:
    打開CMD窗口(管理員身份),按照如下方式輸入命令:
     Node+Express+MongoDB+Socket.io搭建實時聊天應用實戰教程(一)--MongoDB入門
    用網頁打開http://127.0.0.1:27017/
    會看到:You are trying to access MongoDB on the native driver port. For http diagnostic access, add 1000 to the port number
  • Step6: 繼續用管理員身份打開命令行,進入D:\MongoDB\bin路徑,敲如下命令:
    echo logpath=d:\MongoDB\log\mongodb.log > d:\MongoDB\mongod.cfg
    輸入圖中指令:
     Node+Express+MongoDB+Socket.io搭建實時聊天應用實戰教程(一)--MongoDB入門
    打開D:\MongoDB\log\mongodb.log會看到:
     Node+Express+MongoDB+Socket.io搭建實時聊天應用實戰教程(一)--MongoDB入門
  • Step7: 客戶端連接驗證
    新打開一個 CMD 輸入圖中指令:
     Node+Express+MongoDB+Socket.io搭建實時聊天應用實戰教程(一)--MongoDB入門
    如果出現圖中提示,那么您就可以開始MongoDB 之旅了

常用命令行操作

在開發的過程中時不時需要用命令行查看數據庫當前的狀態,于是記住幾條最常用的命令還是非常必要的。在這里我用windows8的命令行演示一些常用的操作。
(1)查看所有的數據庫:show dbs
 Node+Express+MongoDB+Socket.io搭建實時聊天應用實戰教程(一)--MongoDB入門
可以看出,這條命令顯示了當前所有數據庫的名字和內存大小信息
(2)切換到某一個數據庫:use
 Node+Express+MongoDB+Socket.io搭建實時聊天應用實戰教程(一)--MongoDB入門
(3)查看當前數據庫的集合:show collections
 Node+Express+MongoDB+Socket.io搭建實時聊天應用實戰教程(一)--MongoDB入門
(4)查看各collection的狀態:db.printCollectionStats()
 Node+Express+MongoDB+Socket.io搭建實時聊天應用實戰教程(一)--MongoDB入門
(5)刪除當前的數據庫:db.dropDatabase()
 Node+Express+MongoDB+Socket.io搭建實時聊天應用實戰教程(一)--MongoDB入門
(6)查看某個集合:db..find()
 Node+Express+MongoDB+Socket.io搭建實時聊天應用實戰教程(一)--MongoDB入門
(7)刪除某個集合:db..drop()
 Node+Express+MongoDB+Socket.io搭建實時聊天應用實戰教程(一)--MongoDB入門

由于是系列文章,所以第一篇就不展開過多的敘述,歡迎大家持續關注后續文章

來自:http://www.cnblogs.com/yuanzm/p/4179766.html

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!