基於NodeBB的網站伺服器遷移步驟
網站伺服器遷移步驟:
一、首先你拿到的是一個新的伺服器,這裡以我的阿里雲伺服器為例。
二、安裝MongoDB
2.1 匯入包管理的祕鑰:
sudo apt-key adv –keyserver hkp://keyserver.ubuntu.com:80 –recv EA312927
2.2 為MongoDB建立列表檔案(對於Ubuntu 14.04來說)
echo “deb http://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.2 multiverse” | sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list
2.3 更新本地的包伺服器
sudo apt-get update
2.4 安裝MongoDB的安裝包(最新版)
sudo apt-get install -y mongodb-org
安裝好了之後,需要開啟mongodb服務。開啟mongodb服務的方法:
mongod -f /etc/mongod.conf -fork
如果mongod 始終啟動不了,那麼很有可能是許可權的問題。請確定/var/log/mongdb資料夾以及/var/lib/mongodb資料夾是否有許可權訪問。
測試一下,目前3.2.3版本的mongoDB有一些瑕疵,主要是LC_ALL的地方,那麼在使用mongo之前,可以這麼做:
export LC_ALL=C
mongo –port 27017
三、為MongoDB新增管理員賬戶
參考這裡:http://blog.csdn.net/gamesdev/article/details/48395825(已經過時了)
(下面文字已經過時了)
下面來查查使用者表裡面是否有資料。
db.system.users.find( )
3.1 建立根使用者,可以執行任何操作:
db.createUser( { user: “username”, pwd: “password”, roles: [ “root” ] } )
3.2 建立資料庫擁有者賬戶:
db.createUser( { user: “username”, pwd: “password”, roles: [ { role: “dbOwner”, db: “qt_dream” } ] } )
新增完畢後還需要修改mongo.conf的配置以便應用認證:
找到下面這一行:#security:
把它變成:
security:
authorization: enabled
這樣就可以達到效果了。這個我查找了很久,因為以前用的是2.49的版本,使用的還是auth=true這樣的配置,現在3.2的早已經不是這樣的了。
四、支援MongoDB遠端連線的方法:
下面這篇文章可以參考,但是我這個的實際操作要對這個參考進行修改:
http://blog.csdn.net/gamesdev/article/details/48973337
注意,我們使用的Robomongo無法在SSL下根據MongoDB的使用者名稱和密碼進行登入了,需要Robomongo換最新的版本(新版本未測試)或者是向該軟體的開發人員提新的需求。
4.1 配置mongodb.conf
vi /etc/mongod.conf
這裡編輯11行的
bind_ip = 127.0.0.1
使用#將其註釋。
4.2 開啟mongodb對應的埠(這裡通常是27017)
iptables -A INPUT -p tcp -m state –state NEW -m tcp –dport 27017-j ACCEPT
4.3 為了保險起見,需要對mongodb服務進行重啟
service mongod restart(3.2版不可用)
五、改變使用者的角色(及許可權)
如果遇到了已經建立的角色,也想要改變使用者的角色和許可權,那麼可能要使用這個方法來授予許可權了:
db.grantRolesToUser(
“username”,
[
“restore”,
{ role: “readWrite”, db: “qt_dream” }
]
)
以上就是我們遷移本站資料庫所需要的知識,如果有什麼疑問的話,歡迎回帖。