- 一、下載並解壓壓縮包
https://www.mongodb.com/download-center?jmp=nav#community 下載最新的壓縮包
mongodb-linux-x86_64-4.0.12.tgz
tar -zxvf mongodb-linux-x86_64-4.0.1.tgz
mv /usr/local/mongodb/bin
- 二、配置系統環境變量:
vim /etc/profile
export PATH=$PATH:/usr/local/mongodb/bin
:wq 保存退出,source /etc/profile使修改生效
- 三、創建數據和日誌的存放文件夾
mkdir -p /usr/local/mongodb/data/db
mkdir -p /usr/local/mongodb/logs
- 四、進入/usr/local/mongodb/bin的目錄 創建mongodb.conf配置文件
vim mongodb.conf
寫入
dbpath = /usr/local/mongodb/data/db #數據文件存放目錄
logpath = /usr/local/mongodb/logs/mongodb.log #日誌文件存放目錄
port = 27017 #端口
fork = true#以守護程序的方式啓用,即在後臺運行
#auth=true #需要認證。如果放開註釋,就必須創建MongoDB的賬號,使用賬號與密碼纔可遠程訪問>,第一次安裝建議註釋
bind_ip=0.0.0.0 #允許遠程訪問,或者直接註釋,127.0.0.1是隻允許本地訪問
:wq 保存退出
- 五、啓動MongoDB服務
進入/usr/local/mongodb/bin 目錄下 輸入命令 ./mongod -f mongodb.conf
至此,MongoDB在Linux上的安裝完畢。
查看端口映射檢查是否啓動成功:netstat -nltp|grep mongod 或者top命令
- 六、創建管理員
use admin
添加管理員用戶
db.createUser( {user: "admin",pwd: "123456",roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]})
user:用戶名
pwd:密碼
roles:指定用戶的角色,可以用一個空數組給新用戶設定空角色;在roles字段,可以指定內置角色和用戶定義的角色。role裏的角色可以選:
Built-In Roles(內置角色):
1. 數據庫用戶角色:read、readWrite;
2. 數據庫管理角色:dbAdmin、dbOwner、userAdmin;
3. 集羣管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager;
4. 備份恢復角色:backup、restore;
5. 所有數據庫角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase
6. 超級用戶角色:root
// 這裏還有幾個角色間接或直接提供了系統超級用戶的訪問(dbOwner 、userAdmin、userAdminAnyDatabase)
7. 內部角色:__system
具體角色:
Read:允許用戶讀取指定數據庫
readWrite:允許用戶讀寫指定數據庫
dbAdmin:允許用戶在指定數據庫中執行管理函數,如索引創建、刪除,查看統計或訪問system.profile
userAdmin:允許用戶向system.users集合寫入,可以找指定數據庫裏創建、刪除和管理用戶
clusterAdmin:只在admin數據庫中可用,賦予用戶所有分片和複製集相關函數的管理權限。
readAnyDatabase:只在admin數據庫中可用,賦予用戶所有數據庫的讀權限
readWriteAnyDatabase:只在admin數據庫中可用,賦予用戶所有數據庫的讀寫權限
userAdminAnyDatabase:只在admin數據庫中可用,賦予用戶所有數據庫的userAdmin權限
dbAdminAnyDatabase:只在admin數據庫中可用,賦予用戶所有數據庫的dbAdmin權限。
root:只在admin數據庫中可用。超級賬號,超級權限。
剛建立了 userAdminAnyDatabase 角色,用來管理用戶,可以通過這個角色來創建、刪除用戶。
- 七、開啓auth參數,認證通過後才能訪問數據庫
vim mongodb.conf
#auth=true 去掉#註釋
- 八、數據庫創建用戶
1、認證管理員(登錄)
db.auth("admin", "123456")
2.切換數據庫
use test
3.創建用戶
db.createUser({user: "root", pwd: "123456", roles: [{ role: "dbOwner", db: "test" }]})
- 九、導出MongoDB數據
常用命令格式
mongoexport -h IP --port 端口 -u 用戶名 -p 密碼 -d 數據庫 -c 表名 -f 字段 -q 條件導出 --csv -o 文件名
.\mongoexport -h 127.0.0.1:27017 -d vn_db -c statisticsNorth -o E:\data\dump\statisticsNorth.csv
- 十、導入MongoDB數據
常用命令格式
恢復整表導出的非csv文件
mongoimport -h IP --port 端口 -u 用戶名 -p 密碼 -d 數據庫 -c 表名 --upsert --drop 文件名
--upsert:插入或者更新現有數據
恢復部分字段的導出文件
mongoimport -h IP --port 端口 -u 用戶名 -p 密碼 -d 數據庫 -c 表名 --upsertFields 字段 --drop 文件名
--upsertFields:更新部分的查詢字段,必須爲索引,以逗號分隔.
恢復導出的csv文件
mongoimport -h IP --port 端口 -u 用戶名 -p 密碼 -d 數據庫 -c 表名 --type 類型 --headerline --upsert --drop 文件名
--type:導入的文件類型(默認json)
.\mongoimport -h 192.168.1.129:27017 -u ro p 1235 -d vn_db -c statisticsNorth --upsert --drop E:\data\dump\statisticsNorth.csv
- 十一、springboot 配置MongoDB,配置賬戶名和密碼登錄驗證
uri方式:#uri: mongodb://username:password@ip:port/dbname
spring:
profiles:
active: dev
application:
name: spirng-boot-mongodb
data:
mongodb:
uri: mongodb://root:[email protected]:27017/vn_db
MongoDB日常運維操作命令小結:https://www.cnblogs.com/kevingrace/p/8184087.html