国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

yum安裝Mongdb3.4

褰辯話 / 900人閱讀

摘要:默認關閉服務刪除用戶刪除用戶需要權限,會將所有數據庫中的用戶刪除刪除用戶權限要求沒有那么高,只刪除本數據中的用戶查詢所有用戶啟動報錯解決在系統上安裝之后報錯。另外,用戶信息保存在中。比如數據庫和都有用戶,以登錄后不能夠登錄到進行數據庫操作

Centos 7
[mongodb-org]
name=MongoDB Repository
baseurl=http://mirrors.aliyun.com/mongodb/yum/redhat/7Server/mongodb-org/3.4/x86_64/
gpgcheck=0
enabled=1

Centos 6
[mongodb-org]
name=MongoDB Repository
baseurl=http://mirrors.aliyun.com/mongodb/yum/redhat/6Server/mongodb-org/3.4/
gpgcheck=0
enabled=1

yum install mongodb-org -y
chkconfig mongod on
service mongodb restart

修改監聽地址
bindIp: 0.0.0.0

開啟認證
修改配置文件/etc/mongodb.conf
security:
  authorization: enabled

重啟mongodb
sudo service mongodb restart
MongoDB用戶角色配置
基本知識介紹
MongoDB基本的角色:
1.數據庫用戶角色:read、readWrite; 
2.數據庫管理角色:dbAdmin、dbOwner、userAdmin; 
3.集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager; 
4.備份恢復角色:backup、restore; 
5.所有數據庫角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase 
6.超級用戶角色:root 
userAdminAnyDatabase:有分配角色和用戶的權限,但沒有查寫的權限

//這里還有幾個角色間接或直接提供了系統超級用戶的訪問(dbOwner 、userAdmin、userAdminAnyDatabase) 
其中MongoDB默認是沒有開啟用戶認證的,也就是說游客也擁有超級管理員的權限。userAdminAnyDatabase:有分配角色和用戶的權限,但沒有查寫的權限
添加管理員

使用命令mongo進入命令行
創建第一個用戶,該用戶需要有用戶管理權限
這里設置其角色為root

use admin
db.createUser({user:"root",pwd:"123456",roles:["root"]})

新增的用戶在system.users中

> db.getCollectionNames()
[ "system.indexes", "system.users", "system.version" ]

第一個用戶添加完成后,便需要認證才能繼續添加其他用戶

使用db.auth("root", "123456")認證

添加普通數據庫用戶

為其他數據庫添加用戶,添加用戶前需要切換到該數據庫
這里設置其角色為dbOwner

use db1
db.createUser({user: "db1", pwd: "123456", roles: [{ role: "dbOwner", db: "db1" }]})

查看用戶

> use admin
switched to db admin
> db.system.users.find()

命令參考
3.1、修改用戶密碼
db.updateUser( "admin",{pwd:"password"});

3.2、密碼認證
db.auth("admin","password");

3.3、MongoDB連接信息查詢
db.serverStatus().connections;
MongoDB實例接受的最多連接數,如果高于操作系統接受的最大線程數,設置無效。net.maxIncomingConnections默認(65536)

3.4、關閉MongoDB服務
use admin;
db.shutdownServer();

3.5、刪除用戶
刪除用戶(需要root權限,會將所有數據庫中的football用戶刪除)
db.system.users.remove({user:"football"});

刪除用戶(權限要求沒有那么高,只刪除本數據中的football用戶)
db.dropUser("football");

3.6  查詢所有用戶
mongo 192.168.1.247/admin -u admin -p 123456
> use admin
switched to db admin
> db.system.users.find();
啟動報錯解決:

在系統上安裝mongodb之后報錯。
錯誤信息:

WARNING: /sys/kernel/mm/transparent_hugepage/enabled is ‘always’.We suggest setting it to ‘never’ 
WARNING: /sys/kernel/mm/transparent_hugepage/defrag is ‘always’.We suggest setting it to ‘never’ 
WARNING: soft rlimits too low. rlimits set to 1024 processes, 65535 files. Number of processes should be at least 32767.5 : 0.5 times number of files. 

解決方案:

前兩個warning
echo never >>  /sys/kernel/mm/transparent_hugepage/enabled
echo never >>  /sys/kernel/mm/transparent_hugepage/defrag

第三個warning
vim /etc/security/limits.conf
添加一下幾行
* soft nofile 64000
* hard nofile 64000
mongod soft nproc 32000
mongod hard nproc 32000

重啟mongod

sudo service mongod restart

成功
重啟成功之后,所有報錯都沒啦,如下

?  ~ git:(master) mongo
MongoDB shell version: 3.2.6
connecting to: test
>
權限說明
作為數據庫軟件,我們肯定不想誰都可以訪問,為了確保數據的安全,MongoDB 也會像其他的數據庫軟件一樣可以采用用戶驗證的方法,那么該怎么做呢?其實很簡單,MongoDB 提供了 addUser 方法,該方法包含三個參數:
user - 字符串,表示用戶名
password - 字符串,對應的密碼bushao
readOnly - boolean,可選參數,默認值為 false,表示是否是只讀用戶
添加用戶:db.addUser("guest", "pass", true)
修改用戶密碼: db.addUser("guest", "newpass")
刪除用戶: db.removeUser("guest")
更復雜的使用方式請參考官方文檔。
可以將 MongoDB 的用戶分為兩類:超級用戶和數據庫用戶。超級用戶擁有最大權限,可以對所有數據庫進行任意操作,超級用戶儲存在 admin 數據庫中,剛安裝的 MongoDB 中 admin 數據庫是空的;數據庫用戶存儲在單個數據庫中,只能訪問對應的數據庫。另外,用戶信息保存在 db.system.users 中。
關于用戶和權限有以下特性:
數據庫是由超級用戶來創建的,一個數據庫可以包含多個用戶,一個用戶只能在一個數據庫下,不同數據庫中的用戶可以同名
如果在 admin 數據庫中不存在用戶,即使 mongod 啟動時添加了 –auth 參數,此時不進行任何認證還是可以做任何操作
在 admin 數據庫創建的用戶具有超級權限,可以對 MongoDB 系統內的任何數據庫的數據對象進行操作
特定數據庫比如 test1 下的用戶 test_user1,不能夠訪問其他數據庫 test2,但是可以訪問本數據庫下其他用戶創建的數據
不同數據庫中同名的用戶不能夠登錄其他數據庫。比如數據庫 test1 和 test2 都有用戶 test_user,以 test_user 登錄 test1 后,不能夠登錄到 test2 進行數據庫操作

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/19361.html

相關文章

  • 『學了就忘』Linux軟件包管理 — 46、yum命令詳細介紹

    摘要:需要自己手動安裝包查詢指定軟件包的信息。而手動安裝,必須區分包名和包全名。升級本機所有軟件包提示上邊這條命令不加最后的包名,會升級系統中所有的軟件包。目錄1、yum命令的查詢操作2、使用yum命令安裝服務3、使用yum命令升級服務4、使用yum命令卸載服務5、yum組管理命令(1)查詢可以安裝的軟件組(2)查詢軟件組內包含的軟件(3)安裝軟件組(4)卸載軟件組1、yum命令的查詢操作(1)查...

    cikenerd 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<