1.連接阿里雲服務器
連接阿里雲服務器較為簡單,這里不再贅述!
2.下載mongodb
curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.2.9.tgz
3.解壓下載mongodb文件
tar zxvf mongodb-linux-x86_64-3.2.9.tgz
4.將解壓過后的包移動到指定目錄
mv mongodb-linux-x86_64-3.2.9/ /usr/local/mongodb
5.創建數據文件夾和日志文件等
mkdir -p /usr/local/mongodb/data
touch /usr/local/mongodb/logs
touch /usr/local/mongodb/mongodb.conf
6.啟動
(1):第一種啟動方式:
##進入mongo的bin目錄下:
cd /usr/local/mongodb/bin
##通過參數無權限啟動(通過mongodb客戶端工具可直接訪問)--權限不足的話加上sudo
./mongod --dbpath=/usr/local/mongodb/data --logpath=/usr/local/mongodb/logs --logappend --port=27017 --fork
##通過參數有權限啟動--權限不足的話加上sudo
./mongod --dbpath=/usr/local/mongodb/data --logpath=/usr/local/mongodb/logs --logappend --auth --port=27017 --fork
###mongodb非法關閉的時候若出現 about to fork child process, waiting until server is ready for connections 那么需要執行:
rm /data/mongodb/mongo.lock 命令 ###權限不足的話加上sudo
###再執行:
./mongod --repair (命令修復) ###權限不足的話加上sudo
(2):第二種啟動方式:
###通過配置文件啟動 首先進行配置:
vim /usr/local/mongodb/mongodb.conf ###權限不足的話加上sudo
###在配置中加入如下代碼:
dbpath=/usr/local/mongodb/data
logpath=/usr/local/mongodb/logs
logappend = true
port = 27017
fork = true
auth = true
###加入后保存退出:
:wq
###進入mongo的bin目錄下:
cd /usr/local/mongodb/bin
###再執行:
./mongod --config /usr/local/mongodb/mongodb.conf
###如果執行以上命令出現權限問題則修改權限:
sudo chmod 777 mongodb.conf
7.啟動起來之后我們ps看一下有沒有當前進程,如果有的話那么就進入到bin目錄下直接./mongo進入數據庫:
ps aux | grep mongod
進入之后因為沒有賬戶信息,所以需要我們創建一個MongoDB用戶,創建命令如下:
# 先進入到管理員下
use admin
# 創建root用戶
db.createUser({user:"root",pwd:"123456",roles:[{role:"root",db:"admin"}]})
# 驗證用戶
db.auth("root","123456")
8.停止mongodb
./mongod -shutdown -dbpath=/usr/local/mongodb/data
9.開機啟動的配置
##加入開機啟動
vim /etc/rc.local
##在最下面加入
/usr/local/mongodb/mongodb/bin/mongod --dbpath=/usr/local/mongodb/data/db --logpath=/usr/local/mongodb/logs --logappend --auth --port=27017 --fork
##或者創建配置文件(編輯mongodb.conf)
dbpath=/usr/local/mongodb/data
port=27017
auth=true
logpath=/usr/local/mongodb/logs
logappend=true
fork=true
##在/lib/systemd/system/目錄下新建mongodb.service文件(mongodb.service)
[Unit]
Description=mongodb
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
ExecStart=/usr/local/mongodb/mongodb/bin/mongod --config /usr/local/mongodb/mongodb.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/usr/local/mongodb/mongodb/bin/mongod --shutdown --config /usr/local/mongodb/mongodb.conf
PrivateTmp=true
[Install]
WantedBy=multi-user.target
##設置權限
chmod 754 mongodb.service
##開機啟動
systemctl enable mongodb.service
##啟動服務
systemctl start mongodb.service
##關閉服務
systemctl stop mongodb.service
##加入環境變量
vim /etc/profile
#在最后加入
export PATH="/usr/local/mongodb/mongodb/bin:$PATH"
#保存后執行
source /etc/profile
##mongodb導出導入
導出:mongodump -h 127.0.0.1 --port 27017 -u username -p password -d dbName -o D:\dbName
導入:mongorestore -h 127.0.0.1 --port 27017 -u username -p password -d dbName --drop D:\dbName
##windows下添加mongo啟動到windows服務
mongod.exe --auth --config D:\mongodb\data\mongo.conf --install --serviceName "MongoDB" --journal
##如果忘記超級用戶密碼,可以先把配置文件的 auth=true 注釋,然后重啟mongo,之后進入終端用下面命令修改密碼
db.changeUserPassword("root","root")