1.下載
官方下載地址:https://www.mongodb.com/download-center/community
2.解壓
tar -zxvf mongodb-linux-x86_64-rhel70-5.0.3.tgz
3.配置環境變量
vi /etc/profile
在配置文件中添加如下內容(路徑應對應mongodb安裝路徑)
export MONGODB_HOME=/opt/mongodb-linux-x86_64-rhel70-5.0.3 export PATH=$PATH:${MONGODB_HOME}/bin
記得使環境變量生效
source /etc/profile
4.相關配置
創建db目錄和log目錄
cd /opt/mongodb-linux-x86_64-rhel70-5.0.3 mkdir -p ./data/db mkdir -p ./logs touch ./logs/mongodb.log
創建mongodb.conf配置文件,內容如下(路徑應對應之前創建的db/log目錄):
#端口號 port=27017 #db目錄 dbpath=/opt/mongodb-linux-x86_64-rhel70-5.0.3/data/db #日志目錄 logpath=/opt/mongodb-linux-x86_64-rhel70-5.0.3/logs/mongodb.log #后台 fork=true #日志輸出 logappend=true #允許遠程IP連接 bind_ip=0.0.0.0
5.啟動測試
mongod --config mongodb.conf
mongo
連接成功!
6.設置開機自啟動
編輯開機啟動文件
vi /etc/rc.d/rc.local
加入如下語句,以便啟動時執行:
mongod --config /opt/mongodb-linux-x86_64-rhel70-5.0.3/mongodb.conf #mongodb.conf修改為對應路徑
可以重啟服務器,檢測是否設置成功:
7.設置用戶名、密碼與數據庫連接
通過向表admin中添加用戶來設置
如添加root用戶:
use admin db.createUser({ user: 'root', // 用戶名 pwd: '12345678', // 密碼 roles:[{ role: 'root', // 角色 db: 'admin' // 數據庫 }] })
查看是否創建成功:
show users;
在mongodb.conf配置文件中開啟驗證,添加如下語句:
auth=true
重啟MongoDB驗證是否設置成功:
顯示連接成功,但是當我們輸入其他指令時,會提示沒有權限
登錄數據庫:
// 方式一 mongo use admin db.auth('root', '12345678') // 方式二 mongo admin -uroot -p12345678
這時候我們就可以正常訪問和操作數據了。
除了可以設置數據庫的超級管理員以外,還可以給每個數據庫設置單獨的管理員。其只有操作單獨數據的一定權限。
use test // 如果數據庫不存在,則創建數據庫,否則切換到指定數據庫 db.createUser({ user: 'testadmin', // 用戶名 pwd: '12345678', // 密碼 roles:[{ role: 'readWrite', // 角色 db: 'test' // 數據庫名 }] })
隨便用一個MongoDB可視化工具訪問測試是否連接成功(如MongoDB Compass\NoSQLBooster for MongoDB)
連接成功:
常用命令:
show users // 查看當前庫下的用戶 db.dropUser('testadmin') // 刪除用戶 db.updateUser('root', {pwd: '87654321'}) // 修改用戶密碼 db.auth('root', '87654321') // 密碼認證
MongoDB 數據庫默認角色
1 數據庫用戶角色:read、readWrite 2 數據庫管理角色:dbAdmin、dbOwner、userAdmin 3 集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager 4 備份恢復角色:backup、restore 5 所有數據庫角色: readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase 6 超級用戶角色:root