备份和恢复数据
逻辑备份:使用工具EXPORT将数据库中的内容导出到的一种方式。以后用到这些内容要导入import就是恢复。长用于数据库对象误操作后进行的操作。只能最数据库打开的状态下进行。
物理备份:是在数据库打开的状态下进行也可在关闭数据库后进行。
导出的方式
1. 导出表,导出方案,导出数据库三种。
导出表使用export来完成。
选项
Userid:指定执行导出操作的用户名,口令,连接字符串
Tables:指定执行导出操作的表
Owner:指定执行导出的操作方案
Full=y:指定执行导出操作的整个数据库
Inctype:指定执行导出操作的增量类型
Rows:指定执行导出操作是否要导出表的数据
File:指定导出文件名
导出表(导出自己表)
导入和导出要到oracle目录下的bin文件夹下,执行。在dos下进行
Exp userid=scott/tiger@数据库实例 tables=(emp) file=d:\1.dmp;
导出表(导出别人的表)
用户要导出其他方案的表,需要dba的权限或者 exp_full_database的权限。
如:system就可以导出scott的表
Exp userid=system\tiger@数据库实例 tables=(scott.emp) file=d:\123.dmp;
导出表结构
Exp userid=scott/tiger@数据库实例 tables=(emp) file=d:\1.dmp rows=n;
使用直接导出的方式(适合大表)
Exp userid=scott/tiger@数据库实例 tables=(emp) file=d:\1.dmp direct=y;
导出方案
导出一个方案或者多个方案,(表,视图,表空间,索引等)和数据并存放到文件里。
导出自己的方案
Exp userid=scott/tiger @数据库实例 owner=scott file=d:\11.dmp;
导出别人的方案
用户要导出其他方案,需要dba的权限或者 exp——full_database的权限,system可以导出任何方案。不能导出sys的方案
Exp userid=system/tiger@数据库实例owner=(scott)file=d:\2.dmp;
导出数据库
导出数据库中的所有数据和对象,需要dba的权限或者 exp——full_database的权限。
Exp userid=system/tiger@数据库实例 full=y inctype=complete file= 123.dmp;//增量备份,第二次就会对照有的就不备份了。
数据库导入
2. 导入表,导入方案,导入数据库三种。
导入表使用import来完成。
Imp
Userid:指定执行导入操作的用户名,口令,连接字符串
Tables:指定执行导入操作的表
Formuser:指定源用户
Touser:指定目标用户
File :导入文件名
Full=y:指定执行导入整个文件
Inctype:用于指定执行导入操作的增量类型
Rows:指定是否要导入表行(数据)
Ignore:如果表存在,则只导入数据
导入自己的表
Imp userid= scott/tiger@数据库实例 tables=(emp) file:d\**.dmp;
导入别人的表
要求用户拥有具有DBA的权限,或者是imp_full_database权限
假如:导出了一张表,这个表还可以导入到别的方案里,
Imp userid= system/tiger@数据库实例 tables=(emp) file:d\**.dmp touser=scott;
导入表结构
Imp userid=scott/tiger@数据库实例 tables=(emp) file:d:\**.dmp rows=n;(y,n)导入数据和不导入数据
导入数据
如果对象(比如表)已经存在可以只导入表的数据
Imp userid=scott/tiger@数据库实例 tables=(emp) file:d:\**.dmp ignore=y(y,n) 导入数据和不导入数据
导入方案
是将文件中的对象和数据导入到一个或者多个方案中。如果要导入其他方案,要求该用户具有dba的权限 或者是imp_full_database权限
导入自己的方案
Imp userid=scott/tiger file=d:\xxx.dmp;
导入其他方案
Imp userid=system/tiger file=d:\xx.dmp fromuser=system(源用户) touser=scott;(目标用户)
导入数据库
在默认情况下,会导入所有对象和结构数据,自动回创建一个实例
Imp userid=system/tiger full=y file=d:\xx.dmp;