下載安裝篇html
MongoDB 提供了 linux 各發行版本 64 位的安裝包,你能夠在官網下載安裝包。java
下載地址:https://www.mongodb.com/download-center#communitylinux
首先:任意目錄下 下載mongodbgit
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel62-3.4.10.tgz # 下載mongodb
tar -zxvf mongodb-linux-x86_64-rhel62-3.4.10.tgz # 解壓數據庫
其次: 創建mongodb的文件(我這裏選擇在/usr/local/下創建)安全
1) : cd /usr/local 服務器
2) : mkdir mongodbapp
3) : cd mongodb yii
4): mkdir data
5) : cd data
6) : mkdir db
7) : cd ./..
8): mkdir log
9) : cd log
10): touch logs
11): cd /usr/local/mongodb
12): mkdir mongodb-config
13): cd mongodb-config
14): touch server.conf
以上在/usr/local 建立好mongodb的文件夾,結構爲:
/usr/local/
--mongodb
--data
---db : 存放數據文件
--log
--logs : 存放日誌文件
--mongodb-config
--server.conf 存放mongodb配置
最後:將解壓包移動到指定目錄
mv mongodb-linux-x86_64-3.0.6/ /usr/local/mongodb # 將解壓包拷貝到指定目錄
1): cd /
2): /sbin/iptables -I INPUT -p tcp --dport 27017 -j ACCEPT
3): /etc/rc.d/init.d/iptables save
4): /etc/init.d/iptables restart
5): /etc/init.d/iptables status
這裏有兩種啓動方式
a: 直接敲命令
1): cd /usr/local/mongodb/bin
2): ./mongod -dbpath=/usr/local/mongodb/data/db -logpath=/usr/local/mongodb/log/logs --fork
b: 配置文件的方式啓動
1): cd/usr/local/mongodb
2):
[root@gitlab mongodb]# vi mongodb-config/server.conf
logpath=/usr/local/mongodb/log/logs
logappend=true
dbpath=/usr/local/mongodb/data/db
fork=true
bind_ip=0.0.0.0
port=27017
參數解釋: --dbpath 數據庫路徑(數據文件)
3): ./bin/mongod -f mongodb-config/server.conf
注意 bind_ip=0.0.0.0 這項設置是爲 本地鏈接遠程 作準備
fork參數指定後臺運行方式,關閉窗口mongodb服務不中止,false或不寫該參數則爲窗口模式,必須打開保持窗口打開狀態才行。
再經過本地窗口連接
MongoDB默認設置爲無權限訪問限制,上面咱們也沒有進行特殊的認證配置,因此能夠直接連接
經過命令 : mongo IP地址:端口,便可遠程登陸服務器了(能夠配置mongo的bin目錄的環境變量,方便調用客戶端程序)
至此,mongodb服務器已經安裝配置完畢,並實現了遠程訪問。
帳號權限設置篇
實戰應用中,咱們通常都會指定MongoDB的帳戶和權限,提供安全性。
首先,先創建帳號 受權
1. 輸入命令:show dbs,你會發現它內置有兩個數據庫,一個名爲admin,一個名爲local。
2. 輸入命令:use admin,你會發現該DB下包含了一個system.user表,呵呵,沒錯,這個表就等同於MsSql中的用戶表,用來存放超級管理員的,那咱們就往它裏面添加一個超級管理員試試看
3.輸入命令:db.createUser({user:"admin",pwd:"123456",roles:[{"role":"userAdminAnyDatabase","db":"admin"}]})
4. 輸入命令:show collections,查看該庫下全部的表,你會發現,MongoDB並無提示你輸入用戶名、密碼,那就奇怪了,這是怎麼回事呢?在文章最開始提到了,
MongoDB默認設置爲無權限訪問限制,即然這樣,那咱們就先把它設置成爲須要權限訪問限制。
5.修改咱們前面配置的mongdb配置文件mongodb.conf
[root@gitlab mongodb]# vi mongodb-config/server.conf
logpath=/usr/local/mongodb/log/logs
logappend=true
dbpath=/usr/local/mongodb/data/db
fork=true
bind_ip=0.0.0.0
port=27017
auth=true #添加這句即爲開通帳號認證
6.經過命令 ps -ef|grep mongo 查看mongo的進程號,而後kill 9472 ,
重啓mongod服務,命令: ./bin/mongod -f mongodb-config/server.conf
7. 遠程鏈接mongo服務器,
切換到admin數據庫: use admin
而後輸入命令:db.auth('admin','123456'),輸出一個結果值爲1,說明這個用戶匹配上了,若是用戶名、密碼不對,會輸入0
8. 輸入命令:show collections,呵呵,結果出來了,到這裏,權限設置還只講到一多半,接着往下講
9. use mybook 切換到mybook數據庫,接下來爲該數據庫創建帳號
db.createUser({user:'test', pwd:'123456',roles:[{role:'readWrite', db:'mybook'}]})
10. 輸入ctrl+c,退出以前的帳號admin
11.輸入命令:db.auth('test','123456'),輸出結果1,用戶存在,驗證成功
12)遠程直接訪問對應的數據庫方式,mongo 192.168.220.128:27017/mybook -u test -p 123456,以下圖
固然,也能夠先鏈接到mongo服務器,再切換數據庫,最後經過db.auth('用戶名',‘密碼’) 的方式鏈接到對應的數據庫,以下圖
至此,帳號分配已經所有完成。
經常使用命令篇
mongod --repair
show users 顯示用戶
db 顯示當前數據庫
db.system.users.find() 顯示全部用戶
db.auth('username','password') 用戶登陸
java 調用篇
http://www.runoob.com/mongodb/mongodb-java.html
http://www.yiibai.com/mongodb/mongodb_java.html
參考
http://blog.csdn.net/qq_26677157/article/details/60960333
http://www.cnblogs.com/zengen/archive/2011/04/23/2025722.html
http://www.cnblogs.com/PheonixHkbxoic/p/5665499.html