1. MongoDB:
MongoDB 是由C++語言編寫的,是一個基於分佈式文件存儲的開源數據庫系統。在高負載的情況下,添加更多的節點,可以保證服務器性能。MongoDB 旨在爲WEB應用提供可擴展的高性能數據存儲解決方案。
MongoDB 將數據存儲爲一個文檔,數據結構由鍵值(key=>value)對組成。MongoDB 文檔類似於 JSON 對象。字段值可以包含其他文檔,數組及文檔數組。
Mongo支持豐富的查詢表達式。查詢指令使用JSON形式的標記,可輕易查詢文檔中內嵌的對象及數組。
Mongodb中的Map/reduce主要是用來對數據進行批量處理和聚合操作。
2. MongoDB下載與配置
1. 下載地址:https://www.mongodb.com/download-center#community 。設置環境變量
2. 配置
如果直接在cmd下使用mongo會得到如下信息,因爲mongo服務器沒有運行
Failed to connect to 127.0.0.1:27017 after 5000ms milliseconds, giving up.
windows cmd下:在指定文件夾下:
mkdir c:\data\db mkdir c:\data\log
mongod --dbpath c:\data\db
如果執行成功,會輸出如下信息:
2015-09-25T15:54:09.212+0800 I CONTROL Hotfix KB2731284 or later update is not installed, will zero-out data files 2015-09-25T15:54:09.229+0800 I JOURNAL [initandlisten] journal dir=c:\data\db\j ournal ... waiting for connections on port 27017
這個時候 “you have started the server, it is running and listening on port 27017
. Now you can start to interact with the server, for example just open a new terminal tab and run mongo
,which will open mongo's interactive console and connects to the default server”可以開啓另外一個cmd窗口輸入mongo進入shell
If you want to run mongod as a background process (to get back the console) you can use --forkcommand option. This requires you to use some sort of logging.
Eg. mongod --dbpath /path/to/my/mongodata --fork --logpath /path/to/my/mongod.log
由於這樣操作比較繁瑣,我們可以設置mongoDB服務。
創建MongoDB服務:
在任意地址新建文件mongod.cfg.
systemLog: destination: file path: path\to\log\mongod.log storage: dbPath: path\to\data\db在cmd下。
C:\mongodb\bin\mongod.exe --config "C:\mongodb\mongod.cfg" --install
有可能會創建失敗,這個時候搜索cmd右鍵管理員模式運行,再次運行以上代碼
如果看到,則可以啓動服務
[SC] CreateService SUCCESS |
net start MongoDB
之後直接在cmd中輸入mongo就可以進入shell了
移除服務:
mongod.exe --remove
3. MongoDB 概念
1. MongoDB的默認數據庫爲"db",該數據庫存儲在data目錄中。
MongoDB 中默認的數據庫爲 test,如果你沒有創建新的數據庫,集合將存放在 test 數據庫中。
4. MongoDB語法
1. 創建與刪除數據庫:
MongoDB 創建數據庫的語法格式如下:
use DATABASE_NAME
如果數據庫不存在,則創建數據庫,否則切換到指定數據庫。
db.dropDatabase()
刪除當前數據庫
db.collection.drop()
刪除數據庫集合
>db.setName.drop()刪除某一個集合
2. 查看數據庫
> show dbs
查看所有數據庫,只有非空纔會顯示
> db
查看當前數據庫
>show collections查看當前數據庫的所有集合
3.