由于项目上需要对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 字段中。

mongodb的简单操作记录-LMLPHP

--"show dbs" 命令可以显示所有数据的列表。mongodb的简单操作记录-LMLPHP

--“db” 可以显示当前数据库的信息mongodb的简单操作记录-LMLPHP

有一些数据库名是保留的,可以直接访问这些有特殊作用的数据库。

  • 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

mongodb的简单操作记录-LMLPHP

可以看到,我们刚创建的数据库 runoob 并不在数据库的列表中, 要显示它,我们需要向 runoob 数据库插入一些数据。

 mongodb的简单操作记录-LMLPHP

如上图所示分别创建了一个数据库 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


05-11 20:02