`

oracle的导出、导入和数据迁移

 
阅读更多
这段是网上看到的导出教程(英文说明说中的)
$exp   test/test123@appdb
Enter   array   fetch   buffer   size:   4096   >   回车
Export   file:   expdat.dmp   >   m.dmp     生成导出的文件名  
(1)E(ntire   database),   (2)U(sers),   or   (3)T(ables):   (2)U   >   3
Export   table   data   (yes/no):   yes   >   回车
Compress   extents   (yes/no):   yes   >   回车
Export   done   in   ZHS16GBK   character   set   and   ZHS16GBK   NCHAR   character   set
About   to   export   specified   tables   via   Conventional   Path   ...
Table(T)   or   Partition(T:P)   to   be   exported:   (RETURN   to   quit)   >   cmamenu     要导出的表名
.   .   exporting   table                                                 CMAMENU               4336   rows   exported
Table(T)   or   Partition(T:P)   to   be   exported:   (RETURN   to   quit)   > 要导出的表名n
Table(T)   or   Partition(T:P)   to   be   exported:   (RETURN   to   quit)   >   回车
Export   terminated   successfully   without   warnings.


以下是我自己写的:
//数据迁移

//登陆
sqlplus
sys as sysdba
sys

//查询数据库文件路径
select file_name from  dba_data_files;

select tablespace_name, file_id, file_name,
   round(bytes/(1024*1024),0) total_space
   from dba_data_files
   order by tablespace_name;
//查询所在路径方法2
select name from v$datafile;


//操作spfile

show parameter spfile;
create pfile from spfile;

修改spfile 的指向路径

开数据库
startup mount


alter database RENAME FILE 'F:\oracle\product\10.2.0\oradata\orcl\system01.dbf' TO 'D:\oracle\product\10.2.0\oradata\orcl\system01.dbf';

alter database RENAME FILE 'F:\oracle\product\10.2.0\oradata\orcl\SYSAUX01.DBF' TO 'D:\oracle\product\10.2.0\oradata\orcl\SYSAUX01.DBF';

alter database RENAME FILE 'F:\oracle\product\10.2.0\oradata\orcl\TEMP01.DBF' TO 'D:\oracle\product\10.2.0\oradata\orcl\TEMP01.DBF';

alter database RENAME FILE 'F:\oracle\product\10.2.0\oradata\orcl\UNDOTBS01.DBF' TO 'D:\oracle\product\10.2.0\oradata\orcl\UNDOTBS01.DBF';

alter database RENAME FILE 'F:\oracle\product\10.2.0\oradata\orcl\USERS01.DBF' TO 'D:\oracle\product\10.2.0\oradata\orcl\USERS01.DBF';

//修改数据库日记
alter database RENAME FILE 'F:\oracle\product\10.2.0\oradata\orcl\REDO03.LOG' TO 'D:\oracle\product\10.2.0\oradata\orcl\REDO03.LOG';

alter database RENAME FILE 'F:\oracle\product\10.2.0\oradata\orcl\REDO02.LO
G' TO 'D:\oracle\product\10.2.0\oradata\orcl\REDO02.LOG';

alter database RENAME FILE 'F:\oracle\product\10.2.0\oradata\orcl\REDO01.LO
G' TO 'D:\oracle\product\10.2.0\oradata\orcl\REDO01.LOG';

//修改资源文件
SQL> alter database RENAME FILE 'F:\oracle\product\10.2.0\oradata\orcl\CONTROL03
.CTL' TO 'D:\oracle\product\10.2.0\oradata\orcl\CONTROL03.CTL';

SQL> alter database RENAME FILE 'F:\oracle\product\10.2.0\oradata\orcl\CONTROL02
.CTL' TO 'D:\oracle\product\10.2.0\oradata\orcl\CONTROL02.CTL';

SQL> alter database RENAME FILE 'F:\oracle\product\10.2.0\oradata\orcl\CONTROL01
.CTL' TO 'D:\oracle\product\10.2.0\oradata\orcl\CONTROL01.CTL';

//*备注:控制文件可以不迁移。迁移后可能导致数据文件路径不对!

//导出导入
exp
$exp userid=sys/orcl@orcl //简单命令输入这个后可以按提示操作
导出的文件肯能在c:\ 或是在 database下
或是C:\Documents and Settings\Administrator



//以下是比较健全的写法。最好记得加上log 属性
$EXP USERID='SYS/orcl@orcl as sysdba' FILE=E:\orcl.DMP LOG=e:\orcl.log FULL=Y BUFFER=604000

REM -----导入备份的数据文件到ORCL备份数据库

$IMP USERID='SYS/oracle@local as sysdba' FILE=E:\hisback\ZLHIS0.DMP FULL=Y IGNORE=Y  COMMIT=Y  BUFFER=1024000

REM ---导入后对无效对象进行重新编译

sqlplus sys/oracle@local @e:\hisback\invalid.txt




分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics