MongoDB导入、导出、备份、恢复、用户授权(四)

五:MongoDB导入、导出、备份、恢复、用户授权

一:数据导出,数据导入

作为DBA(管理员),经常会碰到导入导出数据的需求,下面介绍实用工具(自带的):

1:数据导入 mongoexport

导出csv格式的文件

./mongoexport -d Test -c user1 -o /tmp/user1.out     --指定导出文件位置及文件名

数据库       集合(表)

./mongoexport -d my_mongodbTest -c user --csv -f uid,name,age -o user_csv.dat

参数说明:

-d  是数据库

-c  是集合

-o  输出的文件名

-csv 指要导出为csv格式

-f 指明需要导出那些列(字段)

更详细的用法可以 mongoexport -h查看

2: 数据导入 mongoimport

./mongoimport -d test -c user1 /tmp/user1.out      --将/tmp/user1.out的文件导入test数据库user1集合中

二:数据备份、数据恢复  --备份的文件是一堆bson文件

作为DBA(管理员),经常会碰到导入导出数据的需数据备份是非常重要的工作,下面介绍实用工具(自带的):

1:数据备份 mongodump(一个大的集合会有个bson文件)

./mongodump -d test -o /tmp/       --将test数据库备份到/tmp/下,就会产生个 /tmp/test/xxx.bson ...文件

-d  数据库

-h  查看详细参数

*如果不指定目录默认会备份在当前文件目录(bin)下创建一个dump目录,用于存放备份出来的文件

自己可以指定目录:后面加上 -o /tmp/my_mongodb_dump     备份到哪里去

2: 数据恢复 mongorestore

./mongorestore -d test /tmp/test    --将/tmp/test的数据恢复到test的数据库

三:用户安全与认证(用户授权)

mongodb管理员:超级管理员 、每个数据库的管理员

每个mongodb实例中实例中的数据库都有许多用户,如果启用了安全性认证后,只有数据库认证的用户才可以进行读写操作,

mongodb默认的启动是不验证用户名和密码的,启动mongodb后可以直接用mongo链接使用,对所有数据都有root权限。

所以启动的时候指定参数,可以阻止客户端的访问和链接。

只需在启动时指定 --auth 参数即可

详细操作步骤:(第一次进来的时候默认都是超级管理员,登入时候加上--auth 进来的时候就可以设置权限)

1->  ./mongod --auth --dbpath=/usr/local/mongodb/data/ --logpath=/usr/local/mongodb/dblogs --fork   启动mongodb

1-> show dbs

2->  use admin    --进入mongodb ,show dbs就可以看到admin数据库

3->  db.addUser("root","123456"); 回车   -- 建立个超级管理员,回车有个值readOnly : false 表示可读可写

4->  exit      --设置你会发现什么都干不鸟,退出重新登录

5->  ./mongo -h    --看下参数  -u -p

6->  ./mongo localhost:27017/test    匿名用户登录到test数据库,你会发现不能操作

7->  ./mongo -uroot -p123456 localhost:27017/test  --你会发现这样也不行,这里进入的是test,必须进入admin数据库验证

--因为我们刚加的root用户是在admin数据库加的,是admin库和全站的超级用户,要在admin下进行验证登录

8->  ./mongo -uroot -p123456 localhost:27017/admin  --这样就行

去test添加用户(其他创建使用的库也如此)

*注意:在test添加的用户只能对test数据有操作权限,不能操作别的库,admin里面是超级管理员可以

use test

db.addUser("user1","123456");

./mongo -uuser1 -p123456 localhost:27017/test    --即可验证

设置完之后:下次用mongodb的时候就得:

1:启动mongodb

./mongod --auth --dbpath=/usr/local/mongodb/data/ --logpath=/usr/local/mongodb/dblogs --fork

2:用户登录:

./mongo -uroot -p123456 localhost:27017/admin

时间: 2024-09-30 22:55:38

MongoDB导入、导出、备份、恢复、用户授权(四)的相关文章

mongodb导入导出备份恢复

mongodb数据库同样离不开必要的维护,如备份.恢复.导入.导出. 其实备份和恢复比导入和导出要方便些,而且一般不会出错,所以大部分时候使用备份和恢复操作就可以了 1. 备份Mongodb mongodump -h RuiyIp -d dataname -o /home/aa/dev/mongodb/data mongodump mongo导出数据库命令 mongodump --help 可以查看该命令下所有的帮助 -h 导出源 -d 要导出的数据库名称 -o 数据库要导出的位置 在终端滚过N

mongodb的导入/导出/备份/还原

mongodb的导入/导出/备份/还原 1.mongoexport是mongo自带的数据导入工具,使用方法比较简单, 以下是mongoexport常用的几个参数. [[email protected] admin]# mongoexport --help -h [ --host ]              #  主机ip --port                   # 端口 -u [ --username ]          # 验证用户名 -p [ --password ]     

mongodb 导入导出

(mongoexport导出工具 MongoDB提供了mongoexport工具,可以把一个collection导出成json格式或csv格式的文件.可以指定导出哪些数据项,也可以根据给定的条件导出数据.工具帮助信息如下: [[email protected] bin]# ./mongoexport --help options: --help produce help message -v [ --verbose ] be more verbose (include multiple time

mysqldump、into outfile和load data进行数据库导入导出备份差别

遇到了大批量导入导出数据的时候真的比较麻烦,动则几G的数据,操作起来也是比较慢的,而且如果稍有不慎,还要重写处理,最简单的方法也是效率最低的方法就是使用PHP写导入导出数据程序,用Shell来跑PHP,可是大家一直忽略了mysqldump 和mysql的into outfile 与load data ,如果这几个命令使用灵活了,对于数据库导入导出以及备份是很方便的. 使用mysqldump 和 source导入导出备份数据 如果要导出整个数据库或者某一个数据库的一个表,并且保持数据库中表的名字不

(8)mongodb 导入导出

mongodb 可以导出 json.csv.二进制格式.导出的工具是 mongoexport,在/bin 目录下.导出导入的参数有以下一些: -h:服务器路径 --port:端口号 -d:database 数据库 -c:collection 表 -f:field 列 -q:query 查询条件 --csv:导出csv 格式,csv 可以用excel打开,mysql可以直接导入 csv 格式的数据,csv 格式的数据方便在不同数据库之间转换 -o:导出文件名 --type:导入的类型 csv/js

【转】MongoDB导入导出以及数据库备份

-------------------MongoDB数据导入与导出------------------- 1.导出工具:mongoexport 1.概念: mongoDB中的mongoexport工具可以把一个collection导出成JSON格式或CSV格式的文件.可以通过参数指定导出的数据项,也可以根据指定的条件导出数据. 2.语法: mongoexport -d dbname -c collectionname -o file --type json/csv -f field 参数说明:

MongoDB导入导出以及数据库备份

-------------------MongoDB数据导入与导出-------------------1.导出工具:mongoexport1.概念:mongoDB中的mongoexport工具可以把一个collection导出成JSON格式或CSV格式的文件.可以通过参数指定导出的数据项,也可以根据指定的条件导出数据.2.语法:mongoexport -d dbname -c collectionname -o file --type json/csv -f field参数说明:-d :数据库

mysql 增查删改,备份恢复,授权等基础常用命令

增 创建库,表 查 查看有哪些表,哪些库 删 删除库,删除表 改 修改表数据 mysql 登录   mysql -uroot -p(跟密码)mysql 命令大部分都是以:结尾 增   create   (da1 库名 ta1 表名) 创建库 create database da1; 创建表 create table ta1 (`id` int(4), `name` char(40)); id/第1个字段名字   int/类型 /整形4位   第2个是name    类型是char  字符串最多4

Oracle数据库导入导出备份

以下命令都在终端doc 下执行 (一)整库导出与导入  整库导出命令 exp system/itcast full=y             #添加参数 full=y 就是整库导出    system 账号   itcast 密码 执行命令后会在当前目录下生成一个叫 EXPDAT.DMP,此文件为备份文件. 如果想指定备份文件的名称,则添加 file 参数即可,命令如下 exp system/itcast file=文件名 full=y 整库导入命令 imp system/itcast ful

windows 导入导出备份MySQL数据库命令行

备份 1    开始菜单 | 运行 | cmd | 2    MySQL命令行导出数据库: 进入MySQL目录下的bin文件夹:cd MySQL中到bin文件夹的目录如我输入的命令行:cd D:\mysql-5.6.24-win32\bin (或者直接将windows的环境变量path中添加该目录) 3    导出数据库:mysqldump -u 用户名 -p 数据库名 > 导出的文件名 如我输入的命令行:mysqldump -u root -p yyp > yyp.sql   (输入后会让你