使用expdp和impdp来给方案(用户)转移表空间收藏
公司的系统使用的是Orcalce 10g。但安装时,默认创建的方案(用户old_user)的默认表空间是SYSTEM,这里使用expdp和impdp将其转移到新的表空间。
这里假如用户名为:new_user,其默认的表空间为:new_tablespace。
0、使用expdp和impdp前,需要设置DIRECTORY对象,并给用户赋予读写权限。
SQLconn systemmanager
SQLCREATE DIRECTORY dump_dir AS 'Ddump';
SQLGRANT read,write ON DIRECTORY dump_dir TO new_user;
1、导出方案,命令如下:
cmd
expdp systemmanager DIRECTORY=dump_dir DUMPFILE=schema.dmp SCHEMAS=old_user LOGFILE=export2009021601.log
2、导入方案到新的表空间:
cmd
impdp new_userpassword DIRECTORY=dump_dir DUMPFILE=schema.dmp SCHEMAS=old_user REMAP_SCHEMA=old_usernew_user REMAP_TABLESPACE=systemnew_tablespace LOGFILE=import2009021601.log
另附:常规的表空间导入和导出命令:
expdp systemmanager DIRECTORY=dump_dir DUMPFILE=xxx.dmp TABLESPACES=username LOGFILE=export2009021601.log
impdp systemmanager DIRECTORY=dump_dir DUMPFILE=xxx.dmp TABLESPACES=username LOGFILE=import2009021601.log
公司的系统使用的是Orcalce 10g。但安装时,默认创建的方案(用户old_user)的默认表空间是SYSTEM,这里使用expdp和impdp将其转移到新的表空间。
这里假如用户名为:new_user,其默认的表空间为:new_tablespace。
0、使用expdp和impdp前,需要设置DIRECTORY对象,并给用户赋予读写权限。
SQLconn systemmanager
SQLCREATE DIRECTORY dump_dir AS 'Ddump';
SQLGRANT read,write ON DIRECTORY dump_dir TO new_user;
1、导出方案,命令如下:
cmd
expdp systemmanager DIRECTORY=dump_dir DUMPFILE=schema.dmp SCHEMAS=old_user LOGFILE=export2009021601.log
2、导入方案到新的表空间:
cmd
impdp new_userpassword DIRECTORY=dump_dir DUMPFILE=schema.dmp SCHEMAS=old_user REMAP_SCHEMA=old_usernew_user REMAP_TABLESPACE=systemnew_tablespace LOGFILE=import2009021601.log
另附:常规的表空间导入和导出命令:
expdp systemmanager DIRECTORY=dump_dir DUMPFILE=xxx.dmp TABLESPACES=username LOGFILE=export2009021601.log
impdp systemmanager DIRECTORY=dump_dir DUMPFILE=xxx.dmp TABLESPACES=username LOGFILE=import2009021601.log
本文介绍如何使用Oracle的expdp和impdp工具将一个用户的表空间从SYSTEM迁移到新的表空间new_tablespace。首先需要创建目录对象并授予用户权限,然后通过expdp导出老用户的数据,再使用impdp导入到新用户的新表空间中。

被折叠的 条评论
为什么被折叠?



