Oracle 10g逻辑备份---ORA-39002、ORA-39070……
逻辑备份是指利用Oracle提供的导出工具,将数据库中选定的记录集或数据字典的逻辑副本以二进制文件的形式存储到操作系统中。逻辑备份的二进制文件称为转储文件,以dmp格式存储。
与物理备份与恢复不同,逻辑备份与恢复必须在数据库运行的状态下进行,因此当数据库发生介质损坏而无法启动时,不能利用逻辑备份恢复数据库。因此,数据库备份与恢复是以物理备份与恢复为主,逻辑备份与恢复为辅的。
逻辑备份与恢复有以下特点及用途:
可以在不同版本的数据库间进行数据移植,可以从Oracle数据库的低版本移植到高版本;
可以在不同操作系统上运行的数据库间进行数据移植,例如可以从Windows NT系统迁移到Unix系统等;
可以在数据库模式之间传递数据,即先将一个模式中的对象进行备份,然后再将该备份导入到数据库其他模式中;
数据的导出与导入与数据库物理结构没有关系,是以对象为单位进行的,这些对象在物理上可能存储于不同的文件中;
对数据库进行一次逻辑备份与恢复操作能重新组织数据,消除数据库中的链接及磁盘碎片,从而使数据库的性能有较大的提高;
除了进行数据的备份与恢复外,还可以进行数据库对象定义、约束、权限等的备份与恢复。
使用Export(9i及之前)备份的转储文件,不能使用Impdp进行导入;同样,使用Expdp(10g)备份的转储文件,也不能使用Import工具进行导入。
两类逻辑备份与恢复实用程序比较
Export和Import是客户端实用程序,可以在服务器端使用,也可以在客户端使用;
Expdp和Impdp是服务器端实用程序,只能在数据库服务器端使用。
利用Expdp,Impdp在服务器端多线程并行地执行大量数据的导出与导入操作。
数据泵技术具有重新启动作业的能力,即当发生数据泵作业故障时,DBA或用户进行干预修正后,可以发出数据泵重新启动命令,使作业从发生故障的位置继续进行。
在使用Expdp,Impdp程序之前需要创建DIRECTORY对
象,并将该对象的READ,WRITE权限授予用户。例如:
但是直接这样会出错:
原因:
在相应的文件下根本找不到目录。它只是在sqlplus里创建一个变量,并为它赋值而已.至于那个值是否合理,目标目录是否存在,它不会帮你去检查。
因此,只需要先创建好目标目录,再执行create directory即可。
实验:
1.首先创建文件夹test_lback
2.创建目录,并赋权限
3.导出
至此,Oracle 简单的逻辑导出完成。