mongo資料庫單節點搭建
安裝
wget mongo.tar
tar -zxvf mongo.tar
cd mongo
mkdir log data conf
touch conf/mongod.conf
配置
vi conf/mongod.conf
port=27017
dbpath=data
logpath=log/mongod.log
fork=true # 後臺啟動
bind_ip_all=true #允許所有的ip訪問
auth=true # 開啟使用者名稱密碼認證
啟動
bin/mongod -f conf/mongod.conf
關閉
pkill mongod
開啟安全認證
開啟安全認證必須同時滿足以下兩個條件:
- mongod啟動以auth引數啟動
- 資料庫中建立了user
1. 對所有的dbs全域性認證
# 建立超級管理員,超級管理員的資訊只儲存在admin資料庫中,超級管理員登入可以對所有的資料庫進行操作
use admin
db.createUser({ user: "root", pwd: "123456", roles: [{ role: "root", db: "admin" }] })
db.auth("root","123456") # 驗證是否成功 返回1說明成功
現在有兩種方式進行使用者身份的驗證
# 方式一
bin/mongo --port 27017 -u "root" -p "123456" --authenticationDatabase "admin"
# 方式二
bin/mongo --port 27017
use admin
db.auth("root", "123456") # 輸出 1 表示驗證成功
2. 對具體的資料庫db認證
use test #在哪個資料庫中建立的使用者,就要用哪個資料庫驗證,使用者的資訊跟隨資料庫
db.createUser(
{
user: "wms",
pwd: "123456",# 這裡最好給四個基本role
roles: [ { role: "read", db: "test" },{ role: "readWrite", db: "test" },
{ role: "dbAdmin", db: "test" },{ role: "userAdmin", db: "test" } ]
}
)
bin/mongo -u wms -p 123456 --authenticationDatabase test
show tables
# 更新使用者
db.updateUser("wms",
{pwd: "123456",
roles: [ { role: "read", db: "test" },{ role: "readWrite", db: "test" },
{ role: "dbAdmin", db: "test" },{ role: "userAdmin", db: "test" } ]
}
)
還有一點需要注意,如果 admin 庫沒有任何使用者的話,即使在其他資料庫中建立了使用者,啟用身份驗證,預設的連線方式依然會有超級許可權
內建role
- read:允許使用者讀取指定資料庫
- readWrite:允許使用者讀寫指定資料庫
- dbAdmin:允許使用者在指定資料庫中執行管理函式,如索引建立、刪除,檢視統計或訪問system.profile
- userAdmin:允許使用者向system.users集合寫入,可以找指定資料庫裡建立、刪除和管理使用者
- clusterAdmin:只在admin資料庫中可用,賦予使用者所有分片和複製集相關函式的管理許可權。
- readAnyDatabase:只在admin資料庫中可用,賦予使用者所有資料庫的讀許可權
- readWriteAnyDatabase:只在admin資料庫中可用,賦予使用者所有資料庫的讀寫許可權
- userAdminAnyDatabase:只在admin資料庫中可用,賦予使用者所有資料庫的userAdmin許可權
- dbAdminAnyDatabase:只在admin資料庫中可用,賦予使用者所有資料庫的dbAdmin許可權。
- root:只在admin資料庫中可用。超級賬號,超級許可權
- 只在admin資料庫中可用,意思是資料儲存在admin資料庫中,在其它資料庫中不可用儲存資料
- 在那個資料庫中儲存的資訊(可用),只能在那個資料庫下驗證,在其它的資料庫下驗證不了。也就是說有些role,是在admin下操作的,需要在admin下驗證,但是可用對說有的db進行操作
使用yum安裝
ali映象源
[mongodb-org]
name=MongoDB Repository
baseurl=http://mirrors.aliyun.com/mongodb/yum/redhat/7Server/mongodb-org/3.2/x86_64/
gpgcheck=0
enabled=1
yum install -y mongodb-org
service mongod start
chkconfig mongod on
配置檔案在/etc/mongod.conf
相關文章
- linux下單節點oracle資料庫間ogg搭建LinuxOracle資料庫
- 主庫RAC,備庫單節點ASM的dataguard搭建ASM
- 雲資料庫MongoDB單節點系列釋出資料庫MongoDB
- Oracle RAC恢復成單節點資料庫Oracle資料庫
- Mongo 資料庫 基本操作Go資料庫
- Mongo資料庫安裝Go資料庫
- consul 多節點/單節點叢集搭建
- RAC資料庫的RMAN備份異機恢復到單節點資料庫資料庫
- 聊聊分散式資料庫中單節點故障的影響分散式資料庫
- java操作 mongo DB 資料庫例子JavaGo資料庫
- 【MongoDB】windows平臺搭建Mongo資料庫複製集(相似叢集)(一)MongoDBWindows資料庫
- oracle11g單節點DataGuard搭建Oracle
- mongo資料庫備份與恢復Go資料庫
- 使用mongo-express管理mongodb資料庫ExpressMongoDB資料庫
- 3節點RAC資料庫夯故障分析資料庫
- exadata vmwate 安裝資料庫節點資料庫
- oracle11g單節點DGbroker搭建Oracle
- Mongo 資料庫備份和恢復命令Go資料庫
- 【RAC】刪除RAC資料庫節點(一)——刪除資料庫例項資料庫
- Gbase 8a資料庫節點替換資料庫
- inode節點耗盡導致資料庫OOM資料庫OOM
- hadoop叢集搭建——單節點(偽分散式)Hadoop分散式
- rhel6.4-11.2.0.3-RAC搭建單節點DG
- mongo副本集搭建Go
- mongo資料備份Go
- 【Mongo】單節點升級為複製集再升級為分片加複製集Go
- RAC 資料庫節點間的關係及資源管理資料庫
- dg搭建 單點-單點
- 單機Linux下搭建MongoDB副本集-三節點LinuxMongoDB
- python 連線 mongo 資料庫連線超時PythonGo資料庫
- RAC 雙節點 轉單節點流程
- 【RAC】刪除RAC資料庫節點(二)——刪除ASM資料庫ASM
- 【RAC】刪除RAC資料庫節點(五)——刪除ONS資料庫
- RAC資料庫只能啟動一個節點的故障資料庫
- MongoDB叢集搭建(包括隱藏節點,仲裁節點)MongoDB
- 父子節點資料統計
- Oracle 資料庫庫配置多路歸檔,防止單點故障Oracle資料庫
- 4節點的10gRAC,單節點的Logical Standby資料同步完全不能跟上