公司的系统使用的是Orcalce 10g。但安装时,默认创建的方案(用户old_user)的默认表空间是SYSTEM,这里使用expdp和impdp将其转移到新的表空间。
这里假如用户名为:new_user,其默认的表空间为:new_tablespace。
0、使用expdp和impdp前,需要设置DIRECTORY对象,并给用户赋予读写权限。
SQL>conn system/manager
SQL>CREATE DIRECTORY dump_dir AS 'D:/dump';
SQL>GRANT read,write ON DIRECTORY dump_dir TO new_user;
1、导出方案,命令如下:
>cmd
>expdp system/manager DIRECTORY=dump_dir DUMPFILE=schema.dmp SCHEMAS=old_user LOGFILE=export2009021601.log
2、导入方案到新的表空间:
>cmd
>impdp new_user/password DIRECTORY=dump_dir DUMPFILE=schema.dmp SCHEMAS=old_user REMAP_SCHEMA=old_user:new_user REMAP_TABLESPACE=system:new_tablespace LOGFILE=import2009021601.log
另附:常规的表空间导入和导出命令:
>expdp system/manager DIRECTORY=dump_dir DUMPFILE=xxx.dmp TABLESPACES=username LOGFILE=export2009021601.log
>impdp system/manager DIRECTORY=dump_dir DUMPFILE=xxx.dmp TABLESPACES=username LOGFILE=import2009021601.log