迁移的话,直接导出一个库的dmp文件,之后导入到另外一个库里面就可以了(导出和导入数据库版本必须一直,否则导入可能会报错)。
迁移数据导出:
1 将数据库TEST完全导出,用户名system 密码manager 导出到D:\daochudmp中
exp system/manager@TEST file=d:\daochudmp full=y
2 将数据库中system用户与sys用户的表导出
exp system/manager@TEST file=d:\daochudmp owner=(system,sys)
3 将数据库中的表table1 、table2导出
exp system/manager@TEST file=d:\daochudmp tables=(table1,table2)
4 将数据库中的表table1中的字段filed1以"00"打头的数据导出
Oracle更改数据文件位置
方法一:offline表空间
1、offline表空间:alter tablespace tablespace_name offline;
2、复制数据文件到新的目录;
3、rename修改表空间,并修改控制文件;
4、online表空间;
1、offline表空间zerone
SQL> select name from v$datafile;
NAME
--------------------------------------------------------------------------------
C:\ORACLE\PRODUCT\1020\ORADATA\ORCL\SYSTEM01DBF
C:\ORACLE\PRODUCT\1020\ORADATA\ORCL\UNDOTBS01DBF
C:\ORACLE\PRODUCT\1020\ORADATA\ORCL\SYSAUX01DBF
C:\ORACLE\PRODUCT\1020\ORADATA\ORCL\USERS01DBF
C:\ORACLE\PRODUCT\1020\ORADATA\ORCL\EXAMPLE01DBF
C:\ORACLE\PRODUCT\1020\ORADATA\ZERONE01DBF
C:\ORACLE\PRODUCT\1020\ORADATA\ORCL\RMANTSDBF
已选择7行。
SQL> alter tablespace zerone offline;
表空间已更改。
2、复制数据文件到新的目录
复制数据文件C:\ORACLE\PRODUCT\1020\ORADATA\ZERONE01DBF到C:\ORACLE\PRODUCT\1020\ORADATA\ORCL\ZERONE01DBF。
3、rename修改表空间数据文件为新的位置,并修改控制文件
SQL> alter tablespace zerone rename datafile 'c:\oracle\product\1020\oradata\zerone01dbf' to 'c:\oracle\product\1020\oradata\orcl\zerone01dbf';
表空间已更改。
4、online表空间
SQL> alter tablespace zerone online;
表空间已更改。
SQL> select name from v$datafile;
NAME
--------------------------------------------------------------------------------
C:\ORACLE\PRODUCT\1020\ORADATA\ORCL\SYSTEM01DBF
C:\ORACLE\PRODUCT\1020\ORADATA\ORCL\UNDOTBS01DBF
C:\ORACLE\PRODUCT\1020\ORADATA\ORCL\SYSAUX01DBF
C:\ORACLE\PRODUCT\1020\ORADATA\ORCL\USERS01DBF
C:\ORACLE\PRODUCT\1020\ORADATA\ORCL\EXAMPLE01DBF
C:\ORACLE\PRODUCT\1020\ORADATA\ORCL\ZERONE01DBF
C:\ORACLE\PRODUCT\1020\ORADATA\ORCL\RMANTSDBF
已选择7行。
SQL> select file_name,tablespace_name from dba_data_files where tablespace_name='ZERONE';
FILE_NAME TABLESPACE_NAME
------------------------------------------------------------------------------------------------
ZERONE C:\ORACLE\PRODUCT\1020\ORADATA\ORCL\ZERONE01DBF
方法二:SQL修改数据文件位置
1、关闭数据库;
2、复制数据文件到新的位置;
3、启动数据库到mount状态;
4、通过SQL修改数据文件位置;
5、打开数据库;
1、关闭数据库
SQL> select name from v$datafile;
NAME
--------------------------------------------------------------------------------
C:\ORACLE\PRODUCT\1020\ORADATA\ORCL\SYSTEM01DBF
C:\ORACLE\PRODUCT\1020\ORADATA\ORCL\UNDOTBS01DBF
C:\ORACLE\PRODUCT\1020\ORADATA\ORCL\SYSAUX01DBF
C:\ORACLE\PRODUCT\1020\ORADATA\ORCL\USERS01DBF
C:\ORACLE\PRODUCT\1020\ORADATA\ORCL\EXAMPLE01DBF
C:\ORACLE\PRODUCT\1020\ORADATA\ORCL\ZERONE01DBF
C:\ORACLE\PRODUCT\1020\ORADATA\ORCL\RMANTSDBF
已选择7行。
SQL> shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
2、复制数据文件到新的位置;
将数据文件C:\ORACLE\PRODUCT\1020\ORADATA\ORCL\ZERONE01DBF复制到C:\ORACLE\PRODUCT\1020\ORADATA\ZERONE01DBF。
3、启动数据库到mount状态;
SQL> startup mount
ORACLE 例程已经启动。
Total System Global Area 167772160 bytes
Fixed Size 1247900 bytes
Variable Size 96470372 bytes
Database Buffers 67108864 bytes
Redo Buffers 2945024 bytes
数据库装载完毕。
4、通过SQL修改数据文件位置;
SQL> alter database rename file 'c:\oracle\product\1020\oradata\orcl\zerone01dbf' to 'c:\oracle\product\1020\oradata\zerone01dbf';
数据库已更改。
5、打开数据库;
SQL> alter database open;
数据库已更改。
SQL> select name from v$datafile;
NAME
--------------------------------------------------------------------------------
C:\ORACLE\PRODUCT\1020\ORADATA\ORCL\SYSTEM01DBF
C:\ORACLE\PRODUCT\1020\ORADATA\ORCL\UNDOTBS01DBF
C:\ORACLE\PRODUCT\1020\ORADATA\ORCL\SYSAUX01DBF
C:\ORACLE\PRODUCT\1020\ORADATA\ORCL\USERS01DBF
C:\ORACLE\PRODUCT\1020\ORADATA\ORCL\EXAMPLE01DBF
C:\ORACLE\PRODUCT\1020\ORADATA\ZERONE01DBF
C:\ORACLE\PRODUCT\1020\ORADATA\ORCL\RMANTSDBF
已选择7行。
SQL> select file_name,tablespace_name from dba_data_files where tablespace_name='ZERONE';
FILE_NAME TABLESPACE_NAME
-------------------------------------------------------------------------------------------------
ZERONE C:\ORACLE\PRODUCT\1020\ORADATA\ZERONE01DBF
首先,两台服务器如果可以连通,那么直接使用数据导入导出功能,先在sql2005创建你要的数据库,然后,导入数据,导入时,会提示你要导入那些数据库对象,你可以选择全部对象,然后就ok啦。这是最方便快捷的方式。
导完数据库之后,进系统测试一下,看看有什么错误没有,或者那些数据库对象没有拷贝过去。然后,手动添加过去。
=======================================
你这样做是不行的。sql2000的数据文件,是不能用附加的方式附加到sql2005上去的。我还是不知道你的2台服务器是否能连通,能连通的话,直接在sql2005连接到sql2000,这是可以的,数据库的版本向下兼容。然后在sql2000连接节点中,找到你要导出的数据库,然后右键--任务--导出数据。。。一步一步 *** 作下去就ok,很简单问题,被你搞的这样纠结。。。。。。
以上就是关于怎么将oracle数据库的数据迁移全部的内容,包括:怎么将oracle数据库的数据迁移、如何将Oracle数据库数据文件迁移到其它目录、关于服务器中数据库的迁移。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)