安裝須知
- mongo DB下載地址mongodb官網下載
- Linux須知知識:
安裝過程
-
服務器下載安裝包
- 下載: curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel62-4.0.6.tgz (或者 wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel62-4.0.6.tgz);
- 解壓:tar -zxvf mongodb-linux-x86_64-rhel62-4.0.6/;
- 移動到需要存放的目錄下mv mongodb-linux-x86_64-rhel62-4.0.6/ /usr/local/mongodb
-
配置環境變量:export PATH=/usr/local/mongodb/bin:$PATH,直接執行此命令,只會創建出臨時的環境變量,即重新斷開連接服務器后會失效;
- 環境變量持久化配置:需要將mongod路徑添加到系統路徑中,
- 在/etc/profile文件中,添加 export PATH=/usr/local/mongodb/bin:$PATH;
- 執行source /etc/profile,使系統環境變量立即生效
-
驗證是否安裝成功:mongod --version
db version v4.0.6 git version: caa42a1f75a56c7643d0b68d3880444375ec42e3 OpenSSL version: OpenSSL 1.0.1e-fips 11 Feb 2013 allocator: tcmalloc modules: none build environment: distmod: rhel62 distarch: x86_64 target_arch: x86_64
mongod啟動配置
- 創建數據庫存放和日志目錄
- 因為MongoDB的數據存儲在data目錄的db目錄下,而該目錄在安裝過程中并不會自動創建,所以需要手動創建data目錄,并在data目錄中創建db目錄。
- mongoDB啟動默認使用的數據哭存儲目錄是根目錄/data/db;當然也可以在其他目錄下創建,然后通過--dbpath來指定;
- 根目錄下創建:mkdir -p /data/db;這里為了后期好查找,就不創建在根目錄下,而是放在mongodb目錄下/usr/local/mongodb/data/db
- 日志目錄創建/usr/local/mongodb/logs
- 配置mongod啟動文件
- /usr/local/mongodb/etc下創建配置文件mongod.config:
dbpath=/usr/local/mongodb/data # 數據庫存放位置(之前創建的)
logpath=/usr/local/mongodb/logs/mongodb.log # 數據庫日志存放位置(之前創建的)
port=27017
fork=true #后臺運行
auth=false # 初次配置先關了權限驗證登陸模式
journal=false
- 啟動mongod
- 啟動:mongod -f /usr/local/mongodb/etc/mongod.config;
- 進入數據庫管理命令界面:mongo;
- 創建數據庫管理角色
db.createUser({user:'root',pwd:'1234567',roles:[{'role':'userAdminAnyDatabase','db':'admin'}]})
- 運行結果:
Successfully added user: {
"user" : "root",
"roles" : [
{
"role" : "userAdminAnyDatabase",
"db" : "admin"
}
]
}
- 退出服務,謹慎使用kill直接去殺掉mongodb進程,可以使用db.shutdownServer()關閉。
- 使用權限方式啟動MongoDB,在配置文件中添加:auth=true , 然后啟動:mongod -f /usr/local/mongodb/etc/mongod.config
- 進入mongo shell,使用admin數據庫use admin并進行驗證db.auth('root','123456'),驗證成功返回1失敗返回0;如果不驗證或驗證失敗,是做不了任何操作的
- MongoDB設置為系統服務并且設置開機啟動
- 在服務器的系統服務文件中添加mongod配置:vim /etc/rc.d/init.d/mongod,輸入:
start() {
/usr/local/mongodb/bin/mongod --config /usr/local/mongodb/etc/mongod.config
}
stop() {
/usr/local/mongodb/bin/mongod --config /usr/local/mongodb/etc/mongod.config --shutdown
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
*)
echo
$"Usage: $0 {start|stop|restart}"
exit 1
esac
- 保存并添加腳本執行權限:chmod +x /etc/rc.d/init.d/mongod;
- 現在可以試試使用service mongod [start|stop|restart|try-restart|reload|force-reload| status]來直接管理MongoDB服務啦;
- 試試關閉服務:
[lwh@insnce-4ep /]# service mongod stop
2019-03-10T16:45:22.360+0800 I CONTROL [main] log file "/usr/local/mongodb/logs/mongodb.log" exists; moved to "/usr/local/mongodb/logs/mongodb.log.2019-03-10T08-45-22".
killing process with pid: 10652
- 試試開啟服務:service mongod start ;ok!!
轉載自https://cloud.tencent.com/developer/article/1405256 ==原文中有2處mongod -f /usr/local/mongod/etc/mongod.config中的mongod應該改成mongodb==~~