数据库(表)的逻辑备份与恢复
逻辑备份是指使用工具export将数据对象的结构和数据导出到文件的过程,逻辑恢复是指当数据库对象被误操作而损坏后使用工具import利用备份的文件把数据库导入到数据库的过程。
物理备份即可在数据库open状态下进行也可在关闭数据库后进行,但是逻辑备份和恢复只能在open的状态下进行。
n 导出
导出具体的分为:导出表、导出方案、导出数据库三种方式…
导出使用exp命令来完成的,该命令常用的选项有:
userid:用于指定执行导出操作的用户名、口令、连接字符串
tables:用于指定执行导出操作的表
owner:用于指定执行导出操作的方案
full=y:用于指定执行导出操作的数据库
inctype:用于指定执行导出操作的增量类型
rows:用于指定执行导出操作的是否要导出表中的数据
file:用于指定导出文件名
n 导出表
(1)导出自己的表
exp userid=用户名/密码@数据库实例名 tables=(表名1,表名2…)file=备份路径文件名
(2)导出其它方案的表
如果用户要导出其它方案的表,则需要dba的权限或是exp_full_database的权限,比如system就可以导出scott的表
exp userid=用户名/密码@数据库实例名 tables=(方案名.表名1,方案名.表名2…)file=备份路径文件名
特别说明:备份文件的后缀名一般是.dmp,但这不是必须的。
该命令需要在dos下执行
(3)导出表的结构
exp userid=用户名/密码@数据库实例名 tables=(表名1…)file=备份路径文件名 rows=n
(4)使用直接导出方式
exp userid=用户名/密码@数据库实例名 tables=(表名1…)file=备份路径文件名 direct=y
这种方式比默认的常规方式速度要快,当数据量大时,可以考虑使用这样的方法
这时需要数据库的字符集要与客户端字符集完全一致,否则会报错…
n 导出方案
导出方案是指使用export工具导出一个方案或是多个方案中的所有对象(表、索引、约束…)和数据,并存放到文件中。
(1)导出自己的方案
exp userid=用户名/密码@数据库实例名 owner=所有者 file=备份路径文件名
(2)导出其它方案
如果用户要导出其它方案,则需要dba的权限或是exp_full_database的权限,例如system就可以导出任何方案
exp userid=用户名/密码@数据库实例名 owner=(所有者1,所有者2…) file=备份路径文件名
如果用户的权限够大,则可一次性导出多个用户的方案,比如system