腾讯云服务器(CentOS)安装配置mongodb

安装须知

  1. mongo DB下载地址mongodb官网下载
  2. Linux须知知识:

安装过程

  1. 服务器下载安装包

    • 下载: 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
  2. 配置环境变量:export PATH=/usr/local/mongodb/bin:$PATH,直接执行此命令,只会创建出临时的环境变量,即重新断开连接服务器后会失效;

    • 环境变量持久化配置:需要将mongod路径添加到系统路径中,
    1. 在/etc/profile文件中,添加 export PATH=/usr/local/mongodb/bin:$PATH;
    2. 执行source /etc/profile,使系统环境变量立即生效
  3. 验证是否安装成功: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启动配置

  1. 创建数据库存放和日志目录
  • 因为MongoDB的数据存储在data目录的db目录下,而该目录在安装过程中并不会自动创建,所以需要手动创建data目录,并在data目录中创建db目录。
  • mongoDB启动默认使用的数据哭存储目录是根目录/data/db;当然也可以在其他目录下创建,然后通过--dbpath来指定;
  • 根目录下创建:mkdir -p /data/db;这里为了后期好查找,就不创建在根目录下,而是放在mongodb目录下/usr/local/mongodb/data/db
  • 日志目录创建/usr/local/mongodb/logs
  1. 配置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
  1. 启动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;如果不验证或验证失败,是做不了任何操作的
  1. 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==~~

你可能感兴趣的:(腾讯云服务器(CentOS)安装配置mongodb)