摘要:數(shù)據(jù)的遷移由于需要換引擎,所以原來的數(shù)據(jù)不能直接使用了,必須使用和兩個(gè)工具來遷移數(shù)據(jù)。指定一個(gè)時(shí)間限制以毫秒為單位。以上是新版本用戶角色權(quán)限的一些說明。到這里,單實(shí)例的從遷移到就基本完成了。
首發(fā)于 搞起博客
總共有這么幾個(gè)問題需要解決:
1. mongodb3.0版本的二進(jìn)制包
1. wiredTiger引擎的配置
1. 數(shù)據(jù)的遷移
1. 權(quán)限
這個(gè)就不用多說了,直接去官網(wǎng)選擇對(duì)應(yīng)的系統(tǒng)下載就好
https://www.mongodb.org/downloads
我是centos 6.3,對(duì)應(yīng)的發(fā)行版貌似是redhat6.x,所以選擇的redhat6 64bit
官方給的例子是以yaml形式寫的配置,我還是以conf文件形式,所以就在后面追加了一個(gè)選項(xiàng)就可以了。當(dāng)然我是重建的庫路徑,如果原有的數(shù)據(jù)路徑的話,啟用wiredTiger是會(huì)報(bào)錯(cuò)的。這就是下面要說的一個(gè)部分。
dbpath=/your/data/path logpath=/your/log/path logappend=true bind_ip = 127.0.0.1 auth = true port = 27017 journal = true #fork=true storageEngine=wiredTiger數(shù)據(jù)的遷移
由于需要換引擎,所以原來的數(shù)據(jù)不能直接使用了,必須使用monogodump 和mongorestore兩個(gè)工具來遷移數(shù)據(jù)。
具體操作可以參見這篇文章
通過mongodump和mongorestore實(shí)現(xiàn)Mongodb備份和恢復(fù)
那么將數(shù)據(jù)導(dǎo)入之后,如果需要設(shè)置權(quán)限的話,首先是需要admin庫中創(chuàng)建一個(gè)user的,還是先把auth=true給注釋掉了,創(chuàng)建個(gè)用戶,到這里懵逼了一下,提示addUser方法錯(cuò)誤,查了一下發(fā)現(xiàn),3.0的用戶及權(quán)限有些改變。
定義創(chuàng)建一個(gè)數(shù)據(jù)庫新用戶用db.createUser()方法,如果用戶存在則返回一個(gè)用戶重復(fù)錯(cuò)誤。
語法db.createUser(user, writeConcern)
* user這個(gè)文檔創(chuàng)建關(guān)于用戶的身份認(rèn)證和訪問信息;
* writeConcern這個(gè)文檔描述保證MongoDB提供寫操作的成功報(bào)告。
· user文檔,定義了用戶的以下形式:
{ user: "user文檔字段介紹:", pwd: " ", customData: { }, roles: [ { role: " ", db: " " } | " ", ... ] }
user字段,為新用戶的名字;
pwd字段,用戶的密碼;
cusomData字段,為任意內(nèi)容,例如可以為用戶全名介紹;
roles字段,指定用戶的角色,可以用一個(gè)空數(shù)組給新用戶設(shè)定空角色;
在roles字段,可以指定內(nèi)置角色和用戶定義的角色。
1. 數(shù)據(jù)庫用戶角色:read、readWrite; 2. 數(shù)據(jù)庫管理角色:dbAdmin、dbOwner、userAdmin; 3. 集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager; 4. 備份恢復(fù)角色:backup、restore; 5. 所有數(shù)據(jù)庫角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase 6. 超級(jí)用戶角色:root // 這里還有幾個(gè)角色間接或直接提供了系統(tǒng)超級(jí)用戶的訪問(dbOwner 、userAdmin、userAdminAnyDatabase) 7. 內(nèi)部角色:__system PS:關(guān)于每個(gè)角色所擁有的操作權(quán)限可以點(diǎn)擊上面的內(nèi)置角色鏈接查看詳情。writeConcern文檔 官方說明
w選項(xiàng):允許的值分別是 1、0、大于1的值、"majority"、;
j選項(xiàng):確保mongod實(shí)例寫數(shù)據(jù)到磁盤上的journal(日志),這可以確保mongd以外關(guān)閉不會(huì)丟失數(shù)據(jù)。設(shè)置true啟用。
wtimeout:指定一個(gè)時(shí)間限制,以毫秒為單位。wtimeout只適用于w值大于1。
例如:在products數(shù)據(jù)庫創(chuàng)建用戶accountAdmin01,并給該用戶admin數(shù)據(jù)庫上clusterAdmin和readAnyDatabase的角色,products數(shù)據(jù)庫上readWrite角色。
use products db.createUser( { "user" : "accountAdmin01", "pwd": "cleartext password", "customData" : { employeeId: 12345 }, "roles" : [ { role: "clusterAdmin", db: "admin" }, { role: "readAnyDatabase", db: "admin" }, "readWrite" ] }, { w: "majority" , wtimeout: 5000 } )
以上是新版本用戶、角色、權(quán)限的一些說明。
看看我們現(xiàn)在要做的:
先創(chuàng)建個(gè)管理員
use admin db.createUser( { user: "adminuser", pwd: "12345678", roles: [ { role: "userAdminAnyDatabase", db: "admin" } ] } )
再創(chuàng)建我們應(yīng)用庫的用戶
use appdb db.createUser( { user: "luoyjx", pwd: "12345678", roles: [ { role: "readWrite", db: "appdb" } ] } )
使用db.auth(username,pwd)可以驗(yàn)證一下
創(chuàng)建用戶大概到這里了,創(chuàng)建完admin,再創(chuàng)建一個(gè)普通用戶就基本OK了。
到這里,單實(shí)例的mongodb從2.6遷移到3.0就基本完成了。
TODO副本集(沒有折騰)
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/18766.html
摘要:于是就有了這次的版本升級(jí)任務(wù)。如果返回的值小于,那么則需要用在庫里具有權(quán)限的用戶連上的庫然后執(zhí)行用戶認(rèn)證格式轉(zhuǎn)換。參考文檔及軟件下載鏈接升級(jí)官方指南升級(jí)官方指南警告的解決方案下載下載 最近為了長遠(yuǎn)考慮想把項(xiàng)目MongoDB里存放的400多萬數(shù)據(jù)遷移到云服務(wù)廠商提供的MongoDB服務(wù)上,省去自己去維護(hù)的時(shí)間,但是看了下云服務(wù)對(duì)MongoDB數(shù)據(jù)遷移上云的要求是自建MongoDB數(shù)據(jù)庫的...
摘要:概述使用這個(gè)教程在使用軟件包安裝社區(qū)版本安裝教程僅支持位操作系統(tǒng)詳細(xì)信息請(qǐng)參閱平臺(tái)支持軟件包在自己的存儲(chǔ)庫中提供官方支持軟件包此存儲(chǔ)庫包含以下軟件包軟件名簡介一個(gè)元軟件包將自動(dòng)安裝下面列出的四個(gè)組件包包含守護(hù)程序和關(guān)聯(lián)配置和初始化腳本 概述 使用這個(gè)教程在 Amazon Linux 使用 .rpm 軟件包安裝 MongoDB 社區(qū)版. 本安裝教程僅支持64位操作系統(tǒng). 詳細(xì)信息請(qǐng)參閱平...
摘要:概述使用這個(gè)教程在企業(yè)版或者使用軟件包安裝社區(qū)版雖然一些發(fā)行版包含自己的軟件包官方的社區(qū)版包通常是最新的平臺(tái)支持本安裝教程僅支持位操作系統(tǒng)詳細(xì)信息請(qǐng)參閱平臺(tái)支持不建議對(duì)企業(yè)版的支持軟件包在自己的存儲(chǔ)庫中提供官方支持軟件包此存儲(chǔ)庫包含以下軟件 概述 使用這個(gè)教程在 Red Hat 企業(yè)版 Linux 或者 CentOS6/7 Linux 使用 .rpm 軟件包安裝 MongoDB 社區(qū)版...
摘要:一前言提綱基于和框架寫的一個(gè)全棧購物商城,記錄項(xiàng)目過程中遇到的一些問題以及經(jīng)驗(yàn)和技巧。服務(wù)端技術(shù)棧登錄授權(quán)用認(rèn)證機(jī)制,來實(shí)現(xiàn)登錄登出。服務(wù)器配置和緩存策略,根據(jù)不同的來代理。申請(qǐng)證書全站升級(jí)到,配置的協(xié)議。一、前言提綱 基于Vue和Express框架寫的一個(gè)全棧購物商城,記錄項(xiàng)目過程中遇到的一些問題以及經(jīng)驗(yàn)和技巧。 二、歷史版本 基于Vue-CLI2.0:點(diǎn)我查看 這個(gè)分支版本是一兩年前...
摘要:一前言提綱基于和框架寫的一個(gè)全棧購物商城,記錄項(xiàng)目過程中遇到的一些問題以及經(jīng)驗(yàn)和技巧。服務(wù)端技術(shù)棧登錄授權(quán)用認(rèn)證機(jī)制,來實(shí)現(xiàn)登錄登出。服務(wù)器配置和緩存策略,根據(jù)不同的來代理。申請(qǐng)證書全站升級(jí)到,配置的協(xié)議。 一、前言提綱 基于Vue和Express框架寫的一個(gè)全棧購物商城,記錄項(xiàng)目過程中遇到的一些問題以及經(jīng)驗(yàn)和技巧。 二、歷史版本 基于Vue-CLI2.0:點(diǎn)我查看這個(gè)分支版本是一兩...
閱讀 770·2021-11-18 10:02
閱讀 2305·2021-11-15 18:13
閱讀 3316·2021-11-15 11:38
閱讀 3078·2021-09-22 15:55
閱讀 3746·2021-08-09 13:43
閱讀 2522·2021-07-25 14:19
閱讀 2523·2019-08-30 14:15
閱讀 3510·2019-08-30 14:15