mongodb基本操作

mongodb 基本操作

mongoDB 是一个基于分布式文件存储的数据库,C++语言编,介于关系数据库和非关系数据库之间的产品,最像关系数据库的,它支持的数据结构非常松散,是类似 json 的 bson 格式,因此可以存储比较复杂的数据类型。Mongo 最大的特点是它支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。高性能,易部署,易使用是最典型的特点。

1.安装


cd /opt/
# 官网下载所需要的版本
tar -xzvf mongodb-linux-x86_64-2.4.9.tar   
mv mongodb-linux-x86_64-2.4.9 mongodb-2.4.9
mkdir /opt/mongodbdata
mkdir /opt/mongodbdata/mongodb_db
mkdir /opt/mongodbdata/mongodb_logs

# 启动
cd mongodb-linux-x86_64-2.4.9/bin/
./mongod  --dbpath=/opt/mongodbdata/mongodb_db --logpath=/opt/mongodbdata/mongodb_logs/mongodb.log --logappend&

3.建库 建表


./mongo
MongoDB shell version: 2.0.4connecting to: test
>use mongo_test 创建库
>db.createCollection("test1") 创建表

3.清空文件夹


rm -rf /opt/mongodbdata/*
mkdir /opt/mongodbdata/mongodb_db
mkdir /opt/mongodbdata/mongodb_logs
cd /opt/mongodb-2.4.9/bin
./mongod -f /opt/mongodb-2.4.9/conf/mongod.conf
./mongo

4.查看库表


show dbs
show collections;

5.备份还原库


# 备份
./mongodump -h 192.168.189.132 -d frank -o /root/dump/
# 还原
./mongorestore -h 192.168.189.132 -d frank--directoryperdb /root/dump/frank/
>mongodump -h dbhost -d dbname -o dbdirectory

# -h:MongDB 所在服务器地址,例如:127.0.0.1,当然也可以指定端口号:127.0.0.1:27017
# -d:需要备份的数据库实例,例如:test
# -o:备份的数据存放位置,例如:c:\data\dump,当然该目录需要提前建立,在备份完成后,系统自动在 dump 目录下建立一个 test 目录,这个目录里面存放该数据库实例的备份数据。

7.删除数据库表


# 删除数据库
use frank
db.dropDatabase();
# 删除表
db.mytable.drop();
# 实例
> show dbs
local 0.078125GB
frank 0.203125GB
> use frank
switched to db frank
> db.dropDatabase();
{ "dropped" :
"frank", "ok" : 1 }
> show dbs
local 0.078125GB
> show dbs # 还原后
local 0.078125GB
frank 0.203125GB

8.权限管理常用命令


# 进入数据库 admin
use admin
# 增加或修改用户密码
db.addUser('name','pwd')
# 查看用户列表
db.system.users.find()
# 用户认证
db.auth('name','pwd')
# 这一个返回 1 就认证成功了,只有认证成功才能对数据库进行操作
# 删除用户
db.removeUser('name')
# 查看所有用户
show users
# 查看所有数据库
show dbs
# 查看所有的 collection
show collections
# 查看各 collection 的状态
db.printCollectionStats()
#查看主从复制状态
db.printReplicationInfo()

9.bin 目录下的工具用途


# 数据库服务端,类似 mysqld,每个实例启动一个进程,可以 fork 为 Daemon 运行
mongod 
# 客户端命令行工具,类似 sqlplus/mysql,其实也是一个 js 解释器,支持 js 语法
mongo
# 将数据导入为 bson 格式的文件/将 bson 文件恢复为数据库,类似 xtracbackup
mongodump/mongorestore 
# 将 collection 导出为 json/csv 格式数据/将数据导入数据库,类似 mysqldump/mysqlimport
mongoexport/mongoimport
# 将 bson 格式的文件转储为 json 格式的数据
bsondump
# 分片路由,如果使用了 sharding 功能,则应用程序连接的是 mongos 而不是 mongod
mongos
# GridFS 管理工具
mongofiles
#实时监控工具
mongostat
© 版权声明

☆ END ☆
喜欢就点个赞吧
点赞0 分享
图片正在生成中,请稍后...