1、Exp/Imp 命令可用的参数:
2、userid 参数必须跟在 Exp/Imp 命令的后面,可以省略,如 Exp Userid=用户名/密码@数据库实例名 或者 Exp 用户名/密码@数据库实例名 都是允许的。
3、四种模式:全数据库模式、对象模式、表模式、表空间模式。而且这四种模式不能同时使用。
初次看到这句话,会有些摸不着头脑。其实所谓的模式,指的是 Exp、Imp命令后面跟着的参数,如下所示
全数据库模式 --- full=y 示例:Exp Userid=用户名/密码@数据库实例名 full=y
对象模式 --- 如果是 Exp 命令,指的是 owner = 用户对象列表 示例:Exp Userid=用户名/密码@数据库实例名 owner = 用户对象
如果是 Imp 命令,指的是 fromuser = 用户对象 touser = 用户对象 示例:Exp Userid=用户名/密码@数据库实例名 fromuser = 用户对象 touser = 用户对象
表模式 --- tables = (表名,表名)示例:Exp Userid=用户名/密码@数据库实例名 tables = (表名,表名)
表空间模式 --- tablespaces 表空间名称 Exp Userid=用户名/密码@数据库实例名 tablespaces 表空间名称
如下使用是错误的, Exp Userid=用户名/密码@数据库实例名 full=y owner = 用户对象,不允许有两种模式,即 full/owner/tables/tablespaces 这四个参数只能使用一个,不能同时出现多个。
4、举几个实际用的例子吧:
4.1 导出数据库里所有内容 Exp aaa/bbb@ccc full=y file=d:\test.dmp log=d:\test.log
如果不加 full=y,那么导出aaa模式下的所有内容,即相当于 Exp aaa/bbb@ccc owner=(aaa) file=d:\test.dmp log=d:\test.log
4.2 导出指定用户下的所有内容 Exp aaa/bbb@ccc owner=(aaa) file=d:\test.dmp log=d:\test.log
4.3 从dmp文件导入指定用户对象的所有内容 Imp aaa/bbb@ccc file=d:\test.dmp fromuser=aaa touser=ddd
5、字符集问题
导出时请检查下数据库使用的字符集,将要导入dmp文件的机器上的数据库也必须使用相同的字符集,否则会导入不成功,将报 IMP-00008 错误。
windows 下检查字符集的方法可通过查看注册表信息得到: