mongodb的安裝和許可權管理
阿新 • • 發佈:2018-11-05
mongodb4.0已經發布,但是鑑於線上環境更多的是使用舊版本的mongodb,我們這裡使用的mongodb3.4版本。
官網下載地址為:https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.4.18.tgz
直接解壓 tar zxvf mongodb-linux-x86_64-rhel62-3.4.2.tgz 然後移動修改目錄名字(可以做成軟連線的形式) mv mongodb-linux-x86_64-rhel62-3.4.2 /usr/local/mongodb mongodb的二進位制預編譯方式已經安裝完成。 [[email protected]mongodb]# pwd /usr/local/mongodb [[email protected] mongodb]# ls bin GNU-AGPL-3.0 MPL-2 README THIRD-PARTY-NOTICES [[email protected] mongodb]# 需要注意的是二進位制預編譯包沒有預設的配置檔案,但是預設的配置引數。 #還有就是mongodb的啟動一定要放在配置檔案中啟動不要在命令列指定引數啟動 #在當前目錄建立conf目錄 mkdir conf #編寫配置檔案mongod.cnf #配置檔案如下
[[email protected]mongodb簡易配置檔案conf]# cat mongod.conf # for documentation of all options, see: # http://docs.mongodb.org/manual/reference/configuration-options/ # where to write logging data. systemLog: destination: file logAppend: true path: /data/mongod/log/mongod.log # Where and how to store data. storage: dbPath: /data/db journal: enabled:true # engine: # mmapv1: # wiredTiger: # how the process runs processManagement: fork: true # fork and run in background pidFilePath: /var/run/mongodb/mongod.pid # location of pidfile # network interfaces net: port: 27017 bindIp: # Listen to local interface only, comment to listen on all interfaces. #security: # security: # authorization: enabled #operationProfiling: #replication: #sharding: ## Enterprise-Only Options #auditLog: #snmp:
配置檔案引數簡易說明: --dbpath: 資料檔案目錄,預設是/data/db.需要建立 --logpath:指定日誌檔案的儲存目錄。預設日誌輸出是在標準輸出。對應配置檔案中systemlog. --port: 指定mongodb監聽的埠,預設是27017. --fork: 以守護程序執行,只在類unix系統上有用。 使用以上四個引數就可以啟動mongodb服務了. [[email protected] conf]# cd /usr/local/mongodb/bin/ [[email protected] bin]# ./mongod -f ../conf/mongod.conf [[email protected] bin]# ./mongo #進入mongodb的shell互動 MongoDB shell version v3.4.2 connecting to: mongodb://127.0.0.1:27017 MongoDB server version: 3.4.2 >
mongodb預設是不用使用者認證的,因此上面可以直接進入shell互動介面進行crud操作。
需要注意的是: mongodb3.0之後的配置檔案時以yaml格式寫的!
開啟mongodb的auth認證,如下:
#security:
security:
authorization: enabled #開啟auth認證
mongodb的官方文件感覺和MySQL差距好大,查了部落格,連結https://www.cnblogs.com/xiaoqian1993/p/5944039.html
mongodb的賬戶組成:
- 使用者名稱
- 密碼
- role(角色中有對資料庫的訪問許可權設定,把定義的使用者歸檔到需求的角色類中)
- db: 指定某使用者對某個庫(庫名由db指定)的訪問。
博文中有一句話: 帳號是跟著庫走的,所以在指定庫裡授權,必須也在指定庫裡驗證(auth)