遷移資料到Oracle的方法思考
/*Oracle遷移到Oracle的方案一--DBLINK*/
資料字典被破壞,無法修復,無法用正常的oracle匯入匯出工具匯入匯出資料。考慮使用DBLINK方式。DBLINK無法完成CLOB,BLOB,LONG,LONG RAW型別的資料抽取。所以要將相關的表排除。
--生成啟用表的nologging屬性的批次SQL
select 'alter table '||owner||'.'||table_name||' nologging;' from dba_tables where owner in ('SSO','WEBLOGIC') ;
--where table_name not in (
--select table_name from dba_tab_columns where owner in ('SSO','WEBLOGIC') and (data_type like '%LOB' or --data_type='LONG' or data_type='LONG RAW'));
--生成禁用表的約束的批次SQL
select 'alter table '||owner||'.'||table_name||' disable constraint '||constraint_name||';' from dba_constraints where owner in ('SSO','WEBLOGIC');
--where table_name not in (
--select table_name from dba_tab_columns where owner in ('SSO','WEBLOGIC') and (data_type like '%LOB' or --data_type='LONG' or data_type='LONG RAW'));
--生成清空表的資料,%_BAK是系統中的備份表,可以排除
select 'truncate table '||owner||'.'||table_name||';' from dba_tables where owner in ('SSO','WEBLOGIC') and table_name not in (
select table_name from dba_tab_columns where owner in ('SSO','WEBLOGIC') and (data_type like '%LOB' or data_type='LONG' or data_type='LONG RAW')) and table_name not like '%_BAK';
--生成插入資料的批次SQL,@QHPORTAL87是連線到遠端伺服器的DBLINK。
select 'insert into /*+append nologging*/ '||owner||'.'||table_name ||' select * from '||owner||'.'||table_name from dba_tables where owner in ('SSO','WEBLOGIC') and table_name not in (
select table_name from dba_tab_columns where owner in ('SSO','WEBLOGIC') and (data_type like '%LOB' or data_type='LONG' or data_type='LONG RAW')) and table_name not like '%_BAK';
--完成插入後,再修改上面的指令碼生成啟用約束和啟用logging屬性的批次SQL,執行這些批次SQL完成dblink資料的抽取工作。
/*剩餘的包含CLOB,BLOB,LONG,LONG RAW欄位的表用SQLSERVER DTS進行抽取。*/
/*Oracle遷移到Oracle的方案二--使用RMAN進行遷移*/
/*Oracle遷移到Oracle的方案三--直接複製資料檔案、控制檔案、日誌檔案、引數檔案*/
/*Oracle遷移到Oracle的方案四--使用exp、expdp|imp、impdp工具完成遷移*/
/*Oracle遷移到Oracle的方案五--使用pl/sql(ODBC轉換器) DBArtiscan工具(資料庫同步工具) sqlserver dts的匯入匯出工具 powercenter等第三方抽取工具*/
/*Oracle遷移到Oracle的方案六--生成資料的批次SQL(pl/sql、oracle sql developer等)*/
/*Oracle遷移到Oracle的方案七--GodenGate、DataGuard*/
/*匯入表結構*/
--1.使用原有的dmp檔案,利用imp或impdp工具將表結構匯入。
--2.使用erwin,power designer等工具的反轉功能匯入資料庫的表,生成表結構的DDL語句,然後執行。
--3.使用dblink執行CTAS方式進行表的COPY。
/*非Oracle資料庫與Oracle資料庫的遷移*/
--1.部署oracle gateway組建,利用這個組建+DBLINK+CTAS方式完成資料的抽取,BLOB,CLOB,LONG,LONG RAW使用sqlserver dts完成抽取。
--2.使用DBArtiscan、sqlserver dts、powercenter等第三方遷移工具。
--3.Sybase使用bcp,sqlserver使用企業管理器的匯出成文字功能匯出成文字,然後使用oracle sqlloader工具匯入到資料庫。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/23135684/viewspace-674034/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 從Sql Server遷移資料到OracleSQLServerOracle
- 資料到hadoop的遷移Hadoop
- 遷移sqlserver資料到MongoDbSQLServerMongoDB
- Oracle使用RMAN從Windows遷移資料到LinuxOracleWindowsLinux
- 遷移ORACLE資料到MogDB/openGauss時的字符集問題Oracle
- Django資料從sqlite遷移資料到MySQLDjangoSQLiteMySql
- 【Redis】redis遷移資料到redis-clusterRedis
- 單機遷移資料到RAC完整案例
- mysqldump從mysql遷移資料到OceanBaseMySql
- 專案遷移的思考
- Oracle10g 中的資料遷移的方法Oracle
- oracle 表遷移方法 (一)Oracle
- ORACLE 資料遷移Oracle
- 高速遷移MySQL資料到分散式時序資料庫DolphinDBMySql分散式資料庫
- ORACLE 跨平臺遷移方法Oracle
- SQL 遷移資料庫至ORACLE簡易方法SQL資料庫Oracle
- 自動化遷移七牛雲的資料到阿里雲 OSS阿里
- 自動化遷移七牛雲的資料到阿里雲OSS阿里
- Mysql資料遷移方法MySql
- ORACLE資料庫遷移Oracle資料庫
- Oracle資料庫升級或資料遷移的方法探討Oracle資料庫
- 伺服器資料遷移的方法-硬體不同如何遷移資料伺服器
- oracle xtts資料庫遷移方法測試之一OracleTTS資料庫
- AWS RDS Oracle資料遷移Oracle
- oracle 資料檔案遷移Oracle
- oracle遷移資料經驗Oracle
- oracle資料檔案遷移Oracle
- Oracle資料遷移參考Oracle
- MySQL 資料遷移Oracle工作MySqlOracle
- 遷移式升級的一點思考
- oracle 表空間下資料檔案遷移的三種方法Oracle
- 用最簡單的方法複製或遷移Oracle資料庫Oracle資料庫
- Oracle資料庫資料遷移流程Oracle資料庫
- 遷移資料時oracle字符集的轉換遷移資料時oracle字符集的轉換Oracle
- 用prebuild mv 方法遷移資料Rebuild
- FreeBSD 資料遷移方法(轉)
- sqlldr 完成mysql到oracle的資料遷移MySqlOracle
- Oracle_遷移資料檔案Oracle