文档章节

mongdb安装

wecloudnet
 wecloudnet
发布于 2018/08/24 15:09
字数 1089
阅读 1
收藏 0

卸载:

yum erase mongodb

// 找出mongodb相关的安装包

yum list installed | grep mongo

// 删除指定的安装包,包名由上面的list命令获得

yum erase mongodb.x86_64

yum erase mongodb-server.x86_64

 

利用阿里云的源yum方式安装Mongodb

一、安装

1、配置yum管理包

  1)、在路径/etc/yum.repos.d/下创建文件mongodb-org-3.4.repo

  cd /etc/yum.repos.d/

  touch mongodb-org-3.4.repo

  2)、在文件mongodb-org-3.4.repo中写入如下内容

  [mongodb-org-3.4]

  name=MongoDB Repository

  baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.4/x86_64/

  gpgcheck=1

  enable=1

  gpgkey=https://www.mongodb.org/static/pgp/server-3.4.asc

2、安装mongodb(会安装mongodb-org包及其依赖包mongodb-org-server、mongodb-org-mongos、mongodb-org-shell、mongodb-org-tools

  数据库实例默认在/var/lib/mongo路径下,日志默认在/var/log/mongodb路径下,也可以通过修改/etc/mongod.conf文件的storage.dbPath和systemLog.path配置

  yum install -y mongodb-org

3、开启mongodb服务

  service mongod start

4、通过查看日志方式,验证服务开启成功,其中有一行为:[thread1] waiting for connections on port 27017

  cat /var/log/mongodb/mongod.log

 

 

8、查看安装的版本

 mongod -version

二、卸载

1、停止服务

  service mongod stop

2、删除安装的包

  yum erase $(rpm -qa | grep mongodb-org)

3、删除数据及日志

  rm -r /var/log/mongodb

  rm -r /var/lib/mongo

启动mongodb

systemctl start mongod.service
or
service mongod start

重新启动mongodb

systemctl restart mongod.service
or
service mongod restart

停止mongodb

systemctl stop mongod.service
or
service mongod stop

开机启动mongodb

systemctl enable mongod.service
or
chkconfig mongod on

 

查看mongodb的状态

systemctl status mongod.service

 

mongo登录

mongo

查看数据库

show dbs

配置安全机制和对外访问权限

创建管理员账号

mongo
use admin
db.createUser({user:"root",pwd:"root",roles:[{role: "userAdminAnyDatabase", db: "admin"}]})

用管理员账号登录

mongo -u "root" -p "root" --authenticationDatabase "admin"

创建某个数据库的允许访问账号

mongo
use admin
db.getSiblingDB("spring_boot_test").createUser({"user" : "liang","pwd" : "hahaha", roles: [{"role" : "readWrite", "db" : "spring_boot_test"}]})

用这个账号登录

mongo  -u liang -password hahaha -authenticationDatabase spring_boot_test 

验证用户是否创建成功

db.auth('root','root')

配置mongoDB登录路径

mongodb://user:password@ip:port/db

修改配置文件

vi /etc/mongod.conf

找到bindIp:127.0.0.1 改为:

bindIp:127.0.0.1,192.168.22.210

找到#security,改为:

security:
  authorization: enabled

保存退出,重启mongo服务

添加完用户可能之间出现这个错误

错误1:

pam_unix(runuser:session): session opened for user mongod by (uid=0)
mongod.service: control process exited, code=exited status=1

解决办法:

chown -R mongod:mongod /var/lib/mongo
chown -R mongod:mongod /var/log/mongodb

错误2:

Error starting mongod. /var/run/mongodb/mongod.pid exists.

解决办法:

rm /var/run/mongodb/mongod.pid -f

卸载mongodb

停止服务

service mongod stop

删除软件

yum erase $(rpm -qa | grep mongodb-org)

移除日志

rm -r /var/log/mongodb
rm -r /var/lib/mongo

删除数据

rm -rf /data/db

常用命令

> show dbs  #显示数据库列表 
> show collections  #显示当前数据库中的集合(类似关系数据库中的表)
> show users  #显示用户
> use <db name>  #切换当前数据库,如果数据库不存在则创建数据库。 
> db.help()  #显示数据库操作命令,里面有很多的命令 
> db.foo.help()  #显示集合操作命令,同样有很多的命令,foo指的是当前数据库下,一个叫foo的集合,并非真正意义上的命令 
> db.foo.find()  #对于当前数据库中的foo集合进行数据查找(由于没有条件,会列出所有数据) 
> db.foo.find( { a : 1 } )  #对于当前数据库中的foo集合进行查找,条件是数据中有一个属性叫a,且a的值为1
> db.dropDatabase()  #删除当前使用数据库
> db.cloneDatabase("127.0.0.1")   #将指定机器上的数据库的数据克隆到当前数据库
> db.copyDatabase("mydb", "temp", "127.0.0.1")  #将本机的mydb的数据复制到temp数据库中
> db.repairDatabase()  #修复当前数据库
> db.getName()  #查看当前使用的数据库,也可以直接用db
> db.stats()  #显示当前db状态
> db.version()  #当前db版本
> db.getMongo()  #查看当前db的链接机器地址
> db.serverStatus()  #查看数据库服务器的状态

 

附录:Mongodb数据库恢复

恢复全部数据库:

mongorestore –drop –directoryperdb 
/home/backup/mongod_bak/mongod_bak_now/2017_02_28/

恢复单个数据库:

mongorestore –drop -d dataname –directoryperdb 
/home/backup/mongod_bak/mongod_bak_now/2017_02_28/dataname

–drop参数:恢复数据之前删除原来数据库数据,避免数据重复。

–directoryperdb参数:数据库备份目录

-d参数:后面跟要恢复的数据库名称

© 著作权归作者所有

wecloudnet
粉丝 7
博文 76
码字总数 55861
作品 0
深圳
前端工程师
私信 提问
Node.js和Geddy初学者指南 - 第三部分:使用Mongdb持久化你的数据

日期:2012-4-12 来源:GBin1.com 在这个三个部分的教程中,我们教大家使用Node.js和Geddy来创建了一个todo的管理应用,上一篇我们将数据保存在内存中,在这个系列最后一篇文章中,我们将介绍...

gbin1
2012/04/13
176
0
Windows 10 下 MongoDB初探--安装和启动

版权声明:本文为博主原创文章,未经博主允许不得转载。 在MongoDB中文网下载安装包 链接:https://www.mongodb.com/ 安装 随意安装 next->finish 此时MongDB默认安装在C:Program FilesMongDB...

Sailor20
2016/10/24
43
0
阿里云(ecs服务器)使用1-安装Mongdb数据库以及远程部署

1.下载mongodb 百度云盘连接 :链接:https://pan.baidu.com/s/1b-hTS0XHQKpatecFoumLxw 提取码:z9ax 并送上可视化工具:链接:https://pan.baidu.com/s/16M9N9BRghtt1kS0HN3EtNA 提取码:l...

睡觉了嘛
09/06
0
0
Mac下运行Rocket.chat

1,简介 github Rocket.chat是特性最丰富的Slack开源替代品之一 主要功能:群组聊天,直接通信,私聊群,桌面通知,媒体嵌入,文件上传,语音/视频聊天,截图等等 Rocket.chat原生支持windows...

funnycoderstar
2017/09/17
0
0
mongodb学习笔记(一、Robo的使用)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 https://blog.csdn.net/qtlyx/article/details/91491326 mongodb安装、启动什么的就不说了,...

钱塘小甲子
06/21
0
0

没有更多内容

加载失败,请刷新页面

加载更多

zk中快速选举FastLeaderElection实现

选举涉及概念 服务器状态 投票 如何选择投票? 协议 选举 如何进行选举? epoch 发送者 接收者 发送队列 接收队列 服务器状态 public enum ServerState { LOOKING,寻找Leader状态,当服务处于...

writeademo
1分钟前
0
0
Knowage 6.2安装部署

注意:需要正确配置JAVA_HOME和JRE_HOME还有catalina_home,否则启动的时候tomcat一闪而过,想要获得报错信息,可以打开cmd,在dos命令行运行开始命令 官网:https://www.knowage-suite.com/s...

阿伦哥-
2分钟前
0
0
c++11 左值引用和右值引用

#include <iostream>using namespace std;void Print(string& s){ cout << s;}int main(){ string s="abc"; Print(s); // OK Print("abc"); // parse error......

SibylY
4分钟前
0
0
浅谈Facade外观模式

一、前言 外观模式是一种非常简单的模式,简单到我们经常都会使用,比如对于类A和B,如果两者需要交互,经过一定的处理过程才能实现某一个具体的功能,那么我们可以将这个处理的过程定义为一...

青衣霓裳
5分钟前
0
0
AnalyticDB for PostgreSQL 6.0 新特性介绍

阿里云 AnalyticDB for PostgreSQL 为采用MPP架构的分布式集群数据库,完备支持SQL 2003,部分兼容Oracle语法,支持PL/SQL存储过程,触发器,支持标准数据库事务ACID。ADB PG通过行存储、列存...

Mr_zebra
7分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部