mongodb的简单操作记录
由于项目上需要对mongodb进行监控,所以需要先熟悉下什么是mongobd以及mongodb的简单操作
mongodb的安装:
curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.0.6.tgz # 下载
tar -zxvf mongodb-linux-x86_64-3.0..tgz # 解压 mv mongodb-linux-x86_64-3.0./ /usr/local/mongodb # 将解压包拷贝到指定目录
MongoDB 的可执行文件位于 bin 目录下,所以可以将其添加到 PATH 路径中:
export PATH=<mongodb-install-directory>/bin:$PATH
<mongodb-install-directory> 为你 MongoDB 的安装路径。如本文的 /usr/local/mongodb 。
MongoDB的数据存储在data目录的db目录下,但是这个目录在安装过程不会自动创建,所以你需要手动创建data目录,并在data目录中创建db目录。
以下实例中我们将data目录创建于根目录下(/)。
注意:/data/db 是 MongoDB 默认的启动的数据库路径(--dbpath)。
mkdir -p /data/db
启动mongodb ----- mongod 如果安装路径不是默认的,那么可以--dbpath 指定路径
进入交互式模式 mongo ----(MongoDB Shell是MongoDB自带的交互式Javascript shell) 它默认会链接到 test 文档(数据库)在里面的操作默认都会存放到test数据库里面去 如下
将数字 10 插入到 runoob 集合的 x 字段中。
--"show dbs" 命令可以显示所有数据的列表。
--“db” 可以显示当前数据库的信息
有一些数据库名是保留的,可以直接访问这些有特殊作用的数据库。
- admin: 从权限的角度来看,这是"root"数据库。要是将一个用户添加到这个数据库,这个用户自动继承所有数据库的权限。一些特定的服务器端命令也只能从这个数据库运行,比如列出所有的数据库或者关闭服务器。
- local: 这个数据永远不会被复制,可以用来存储限于本地单台服务器的任意集合
- config: 当Mongo用于分片设置时,config数据库在内部使用,用于保存分片的相关信息。
mongodb的连接方式
mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database][?options]]
mongodb:// 这是固定的格式,必须要指定。
username:password@ 可选项,如果设置,在连接数据库服务器之后,驱动都会尝试登陆这个数据库
host1 必须的指定至少一个host, host1 是这个URI唯一要填写的。它指定了要连接服务器的地址。如果要连接复制集,请指定多个主机地址。
portX 可选的指定端口,如果不填,默认为27017
/database 如果指定username:password@,连接并验证登陆指定数据库。若不指定,默认打开 test 数据库。
?options 是连接选项。如果不使用/database,则前面需要加上/。所有连接选项都是键值对name=value,键值对之间通过&或;(分号)隔开
创建数据库:如果不存在就新创建一个
use DATABASE_NAME
可以看到,我们刚创建的数据库 runoob 并不在数据库的列表中, 要显示它,我们需要向 runoob 数据库插入一些数据。
注意: 在 MongoDB 中,集合只有在内容插入后才会创建! 就是说,创建集合(数据表)后要再插入一个文档(记录),集合才会真正创建。

如上图所示分别创建了一个数据库 runnoob 在数据库里面创建了一个表 runnoob,并且插入了数据, 然后删除了这个表
创建集合(理解为创建一个表)可以参考 http://www.runoob.com/mongodb/mongodb-create-collection.html
常用的操作集合
##暴力重启操作
killall mongod
killall mongos
rm -f /usr/local/mongodb/config/data/mongod.lock
rm -f /usr/local/mongodb/shard1/data/mongod.lock
rm -f /usr/local/mongodb/shard2/data/mongod.lock
rm -f /usr/local/mongodb/shard3/data/mongod.lock mongod --repair --dbpath=/usr/local/mongodb/config/data
mongod --repair --dbpath=/usr/local/mongodb/shard1/data/
mongod --repair --dbpath=/usr/local/mongodb/shard2/data/
mongod --repair --dbpath=/usr/local/mongodb/shard3/data/ #mongod服务启动 mongod -f /usr/local/mongodb/conf/config.conf
mongod -f /usr/local/mongodb/conf/shard1.conf
mongod -f /usr/local/mongodb/conf/shard2.conf
mongod -f /usr/local/mongodb/conf/shard3.conf
mongos -f /usr/local/mongodb/conf/mongos.conf # 查看mongodb状态 加入了验证之后
./mongostat -h0.0.0.: -uroot -p123456 --authenticationDatabase=admin #创建用户 db.createUser(
{
user:"root",
pwd:"zfno11",
roles:[{role:"root",db:"admin"}]
}
) # 查看mongodb的状态----配置zabbix做监控
./mongo --port -uroot -pabc123 --authenticationDatabase=admin ./mongostat -h0.0.0.: -uroot -pabc123 --authenticationDatabase=admin echo "db.serverStatus()" | /opt/mongodb/bin/mongo --port -uroot -pabc123 --authenticationDatabase=admin admin
mongodb的简单操作记录的更多相关文章
- NOSQL -- Mongodb的简单操作与使用(wins)
NOSQL -- Mongodb的简单操作与使用(wins) 启动mongodb: 1.首先启动服务 dos命令下:net start Mongndb 也可以查询服务,手动开启服务: 完成后: 2.启 ...
- NOSQL -- Mongodb的简单操作与使用(win10)
NOSQL -- Mongodb的简单操作与使用(wins) MongoDB 创建集合: db.createCollection(name, options) use huhu db.createCo ...
- MongoDB数据库简单操作
之前学过的有mysql数据库,现在我们学习一种非关系型数据库 一.简介 MongoDB是一款强大.灵活.且易于扩展的通用型数据库 MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数 ...
- win7 安装 MongoDB 及简单操作
下载地址 http://dl.mongodb.org/dl/win32/x86_64 这里用的版本是 mongodb-latest-signed.msi 同时下载 mongodb-compass 下载 ...
- MongoDB的简单操作
一.简介 二.MongoDB基础知识 三.安装 四.基本数据类型 五.增删改查操作 六.可视化工具 七.pymongo 一.简介 MongoDB是一款强大.灵活.且易于扩展的通用型数据库 MongoD ...
- MongoDB的简单操作(asp.net)
using System; using System.Collections.Generic; using System.Linq; using System.Web; using MongoDB.D ...
- mongodb sharding 简单部署记录
创建目录 mkdir {mongos,config,shard1,shard2} mkdir -p mongos/{data,log} mkdir -p config/{data,log} mkdir ...
- Python mongoDB 的简单操作
#!/usr/bin/env python # coding:utf-8 # Filename:mongodb.py from pymongo import MongoClient,ASCENDING ...
- xShell的简单操作记录
查看java进程: ps ux | grep java 显示当前所有java进程pid的命令:jps 将压缩文件从本地上传到服务器上:rz 打包成jar包:mvn clean package -Dma ...
随机推荐
- leetcode73矩阵置零
https://leetcode-cn.com/problems/set-matrix-zeroes/ 解答: 两种方法时间复杂度都为O(mn) O(m+n)空间方法: 用两个容器储存为0的行和列 c ...
- Linux的组成
1.内核:是系统的心脏,是运行程序和管理像磁盘和打印机等硬件设备的核心程序. 2.Shell:是系统的用户界面,提供了用户和内核进行交互操作的一种接口.它接收用户输入的命令并把它送入内核去执行,是一个 ...
- 自定义Dialog布局的弹窗功能的简单实现
package com.loaderman.dialogdemo; import android.os.Bundle; import android.support.v7.app.AlertDialo ...
- 八十一:memcached之telnet操作memcached
先打开telnet服务否则会报错 确认memcached服务已启动 telnet ip 端口 连上以后敲一下回车 常用的命令: 1.set:在memcached中添加一个key->value,如 ...
- OpenCV-Python画直方图和累积直方图
代码如下: import cv2 import numpy as np import matplotlib.pyplot as plt img = cv2.imread('C:\\Users\\adm ...
- vim简单题练习-------出自《鸟哥的linux私房菜》第309页码题目
用vim打开文件,在第34行向右移动15字符,怎么做? 34G 15->或者15j 如何到达文件的页首或者页尾? 1G或者gg G 如何在光标所在行中,移动到行头及行尾? home end vi ...
- python利用smtp发送邮件
#!/usr/bin/env python # -*- encoding: utf-8 -*- # author:IversOn5 import requests import json import ...
- webdriervAPI(多窗口切换)
两个方法 driver.current_window_handle 获取当前窗口句柄 driver.window_handles 获取所有窗口句柄 from selenium import webdr ...
- Microsoft Visual Studio 中工具箱不显示DevExpress控件的解决办法
我安装的是DevExpress15.2 1.找到安装目录D:\Program Files\DevExpress15.2\Components\Tools, 运行控制台 内容换成cmd 2.执行下面的命 ...
- dstat 好用的命令 cpu mem io
1.dstat dstat -lrpm --top-io --top-mem --top-cpu 2.安装 yum -y install dstat