上一篇文檔講述的是如何搭建mongodb副本集
這一篇講述啟用auth
一、為了方便啟動,我們在Mongodb目錄下新建conf目錄,用於保存mongodb的配置文件
#進入mongod目錄 cd mongodb/ #創建conf目錄 mkdir conf #新增mongodb.conf vim mongodb.conf
寫入如下內容---------------------------------------:
#日志文件位置 logpath=/data/bigdata/software/mongodb/logs/mongodb.log #以追加方式寫入日志 logappend=true #端口 port=27017 #數據庫文件位置 dbpath=/data/bigdata/software/mongodb/replset/data/ #是否以進程守護方式運行 fork=true #是否以安裝認證方式運行 auth=true replSet=repset #keyfile keyFile=/data/bigdata/software/mongodb/keyfile
需要注意的是如果啟用auth=true,那么logpath必須要有,否則會報錯!
二、創建好了mongodb.conf后,回到mongodb目錄
#回到mongodb cd .. #接下來就是生成keyfile了 openssl rand -base64 95 > keyfile
查看keyfile內容:
然后分發到其他2台服務器去:
scp /data/bigdata/software/mongodb/keyfile root@BIGDATA-28217:/data/bigdata/software/mongodb/ scp /data/bigdata/software/mongodb/keyfile root@BIGDATA-28219:/data/bigdata/software/mongodb/
注:這里需要注意keyfile的權限必須相同
命令:chmod 600 keyfile
三、回到mongo客戶端創建用戶
#使用admin use admin #查看role show roles #根據我們的需求來創建用戶,我這里創建root用戶 db.createUser( ...{ ...user:"root", ...pwd:"root", ...roles:[{role:"root",db:"admin"}] ...} ) #執行成功以后關閉數據庫 db.shutdowServer() #如果是直接kill掉的話,再次啟動會報錯,此時我們只需要去relpset/data/下刪除mongodb.lock即可。
四、認證方式啟動mongodb
bin/mongod -f conf/mongodb.conf