您的位置:首页 > 数据库 > Oracle

<Oracle数据库备份>

2014-04-22 11:09 281 查看
一般来说大家都有几种备份数据的办法 从简单的excel导出 到 建立临时表备份,这些手段大家都在日常生活中使用过

这里我简单的说下我平时备份数据使用的办法,如有错误的地方请读者们指出互相促进

数据泵 (这个词应该不陌生)

简单的画一个流程图:

这里我们需要做的就是 EXPDP 和 IMPDP 语句的书写

EXPDP 语法:EXPDP USER/PWD KEYWORD = VALUE ;

使用这个语句之前须知:我们必须有一个目录对象,而且用户必须对这个目录具有写的权限

如何检测这个目录是否存在可使用如下方式:

SQL> conn system/Oracle@orl

已连接。

SQL> col directory_name for a15

SQL> col owner for a23

SQL> col directory_path for a50

SQL> SELECT *

2 FROM dba_directories

3 WHERE directory_name = 'DATA_PUMP_DIR';

如果目录存在就会显示具体目录,如果目录不存就会报错;

假如目录不存在 我们先在操作系统上创建一个目录然后授权这个目录

创建目录 SQL> CREATE directory pump_dir as 'f:\pump';

授权目录 SQL> GRANT read on directory pump_dir to user;

EXPDP 参数

关键字 说明

------------------ --------------------------------

ATTACH 连接到现有作业

COMPRESSION 减小有效的存储文件的大小(METADATA_ONLY,NONE)

DUMPFILE 目标存储文件的列表

ENCRYPTION_PASSWORD 创建加密列数据的口令

ESTIMATE 计算作业估计值(BLOCKS , STATISTICS)

EXCLUDE 排除特定的对象类型

FILESIZE 以字节为单位指定每个存储文件的大小

FLASHBACK_SCN 将会话快照设置回以前状态的SCN

FLASHBACK_TIME 获取最接近指定时间的SCN的时间

FULL 导出整个数据库(N)

HELP 显示帮助消息(N)

INCLUDE 包括特定的对象类型

JOB_NAME 要创建的导出作业的名称

LOGFILE 日志文件名

NETWORK_LINK 链接到源系统的远程数据库的名称

NOLOGFILE 不写入日志文件

PAPRALILE 更改当前作业的活动 worker 数目

PARFILE 指定参数文件

QUERY 用于导出表的子集的谓词子句

SAMPLE 要导出的数据的百分比

SCHEMAS 要导出的方案的列表

STATUS 在默认值(0)将显示可用时的新状态的情况下,要见识的频率(以秒计)作业状态

TABLESPACES 标识要导出的表空间的列表

TRANSPORT_FULL_CHECK 验证所有表的存储段

TRANSPORT_TABLESPACES 要从中卸载元数据的表空间的列表

VERSION 要导出的对象的版本(COMPATIBLE),LATEST 或 任何有效的数据库版本

DIRECTORY 目录对象

TABLES 标示要导出的表的列表

CONTENT 指定要卸载的数据(ALL,DATA_ONLY,NONE)

eg: D:\>expdp user/pwd directory = pump_dir:filename.dat tables = tablename

再续敬请关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: