Oracle 12C 跨網路傳輸資料庫
跨網路傳輸資料庫,可以透過使用network_link引數來執行匯入操作,匯入操作將使用資料庫鏈路,不需要生成dump檔案。操作步驟如下:
2.在源資料庫上將所有使用者表空間置為只讀模式
3.將源資料庫中所有使用者表空間相關的資料檔案傳輸到目標資料庫。如果源平臺與目標平臺的位元組編碼不同,那麼查詢v$transportable_platform檢視來進行檢視。並且將可以使用以下一種方法來轉換資料檔案:
.使用rman的convert命令來將資料檔案的位元組編碼轉換為目標平臺的位元組編碼。
4.在目標資料庫上執行匯入操作。使用Data Pump工具來匯入所有使用者表空間的後設資料與管理表空間的後設資料與真實資料。確保以下引數正確設定:
如果源資料庫包含任何加密表空間或表空間包含加密列,那麼你必須指定encryption_pwd_prompt=yes或指定encryption_password引數。
Data Pump跨網路匯入將會複製所有使用者表空間所儲存物件的後設資料與管理表空間中的元與使用者物件的真實資料。當匯入完成後,使用者表空間將會置於讀寫模式。
5.可選操作將源資料庫中的所有使用者表空間置為讀寫模式。
下面的例子是將源資料庫jyrac傳輸到目標資料庫jypdb
2.在源資料庫上將所有使用者表空間置為只讀模式
3.在目標資料庫中使用dbms_file_transfer包中的get_file過程將源資料庫中所有使用者表空間相關的資料檔案傳輸到目標資料庫上
在目標資料庫中建立目錄tts_datafile(儲存資料檔案)
在目標資料庫中執行dbms_file_transfer.get_file過程將源資料庫中所有使用者表空間所相關的資料檔案傳輸到目標資料庫中
4.在目標資料庫上執行匯入操作。使用Data Pump工具來匯入所有使用者表空間的後設資料與管理表空間的後設資料與真實資料。
傳輸完成後我們抽查使用者jy的dba_tables表的資料在傳輸後是否與源資料庫中的資料一致。
目標資料庫
查詢傳輸後使用者表空間的狀態是否為online,可以看到test,example,users表空間狀態為online
5.將源資料庫中的所有使用者表空間設定為讀寫模式
到此透過網路執行完整資料庫傳輸的操作就完成了。
1.在目標資料庫中建立連結到源資料庫的資料鏈路。執行匯入操作的使用者必須要有datapump_imp_full_database許可權,並且連線到源資料庫的資料鏈路也必須連線到一個有datapump_exp_full_database角色的使用者。在源資料庫中使用者不能有sysdba管理許可權。
.使用dbms_file_transfer包中的get_file或put_file過程來傳輸資料檔案。這些過程會自動將資料檔案的位元組編碼轉換為目標平臺的位元組編碼。
.transportable=always
.transport_datafiles=list_of_datafiles
.full=y
.network_link=database_link
.version=12
如果源資料庫為11.2.0.3或11g之後的版本,那麼必須設定version=12。如果源資料庫與目標資料庫都是12c,那麼version引數不用設定。
1.在目標資料庫中以sys使用者來建立連結到源資料庫的資料鏈路。源資料庫中的使用者為jy
SQL> conn sys/xxzx7817600@jypdb as sysdba
Connected.
SQL> create public database link jyrac_link
2 connect to jy identified by "jy"
3 using '(DESCRIPTION =
4 (ADDRESS_LIST =
5 (ADDRESS = (PROTOCOL = TCP)(HOST =10.138.130.153)(PORT = 1521))
6 )
7 (CONNECT_DATA =
8 (SERVER = DEDICATED)
9 (SERVICE_NAME =jyrac)
10 )
11 )';
Database link created.
SQL> select tablespace_name,status from dba_tablespaces;
TABLESPACE_NAME STATUS
------------------------------ ---------
SYSTEM ONLINE
SYSAUX ONLINE
UNDOTBS1 ONLINE
TEMP ONLINE
USERS ONLINE
UNDOTBS2 ONLINE
EXAMPLE ONLINE
TEST ONLINE
8 rows selected.
SQL> alter tablespace test read only;
Tablespace altered.
SQL> alter tablespace users read only;
Tablespace altered.
SQL> alter tablespace example read only;
Tablespace altered.
SQL> select tablespace_name,status from dba_tablespaces;
TABLESPACE_NAME STATUS
------------------------------ ---------
SYSTEM ONLINE
SYSAUX ONLINE
UNDOTBS1 ONLINE
TEMP ONLINE
USERS READ ONLY
UNDOTBS2 ONLINE
EXAMPLE READ ONLY
TEST READ ONLY
8 rows selected.
在源資料庫中建立目錄tts_datafile(儲存資料檔案)
SQL> create or replace directory tts_datafile as '+datadg/jyrac/datafile/';
Directory created.
SQL> grant execute,read,write on directory tts_datafile to public;
Grant succeeded.
SQL> create or replace directory tts_datafile as '+DATA/JY/4B2C6373AE2547CCE053AB828A0A7CA3/DATAFILE/';
Directory created.
SQL> grant execute,read,write on directory tts_datafile to public;
Grant succeeded.
SQL> exec dbms_file_transfer.get_file(source_directory_object =>'TTS_DATAFILE',source_file_name => 'test01.dbf',source_database =>'jyrac_link',destination_directory_object => 'TTS_DATAFILE',destination_file_name => 'test01.dbf');
PL/SQL procedure successfully completed.
SQL> exec dbms_file_transfer.get_file(source_directory_object =>'TTS_DATAFILE',source_file_name => 'example.260.930413057',source_database =>'jyrac_link',destination_directory_object => 'TTS_DATAFILE',destination_file_name => 'example01.dbf');
PL/SQL procedure successfully completed.
SQL> exec dbms_file_transfer.get_file(source_directory_object =>'TTS_DATAFILE',source_file_name => 'users.263.930413057',source_database =>'jyrac_link',destination_directory_object => 'TTS_DATAFILE',destination_file_name => 'users01.dbf');
PL/SQL procedure successfully completed.
ASMCMD [+data/jy/4B2C6373AE2547CCE053AB828A0A7CA3/datafile] > ls -lt
Type Redund Striped Time Sys Name
DATAFILE UNPROT COARSE JUN 02 16:00:00 N users01.dbf => +DATA/jy/4B2C6373AE2547CCE053AB828A0A7CA3/DATAFILE/FILE_TRANSFER.298.945620417
DATAFILE UNPROT COARSE JUN 02 16:00:00 N test01.dbf => +DATA/jy/4B2C6373AE2547CCE053AB828A0A7CA3/DATAFILE/FILE_TRANSFER.300.945620337
DATAFILE UNPROT COARSE JUN 02 16:00:00 N example01.dbf => +DATA/jy/4B2C6373AE2547CCE053AB828A0A7CA3/DATAFILE/FILE_TRANSFER.299.945620391
DATAFILE UNPROT COARSE JUN 02 16:00:00 Y FILE_TRANSFER.300.945620337
DATAFILE UNPROT COARSE JUN 02 16:00:00 Y FILE_TRANSFER.299.945620391
DATAFILE UNPROT COARSE JUN 02 16:00:00 Y FILE_TRANSFER.298.945620417
DATAFILE UNPROT COARSE JUN 02 00:00:00 N testtb01.dbf => +DATA/jy/4B2C6373AE2547CCE053AB828A0A7CA3/DATAFILE/TESTTB.295.944828399
DATAFILE UNPROT COARSE JUN 02 00:00:00 Y UNDO_2.277.939167063
DATAFILE UNPROT COARSE JUN 02 00:00:00 Y UNDOTBS2.278.945029905
DATAFILE UNPROT COARSE JUN 02 00:00:00 Y UNDOTBS1.273.939167015
DATAFILE UNPROT COARSE JUN 02 00:00:00 Y TESTTB.295.944828399
DATAFILE UNPROT COARSE JUN 02 00:00:00 Y SYSTEM.274.939167015
DATAFILE UNPROT COARSE JUN 02 00:00:00 Y SYSAUX.275.939167015
[oracle@jytest1 tts]$ impdp system/xxzx7817600@JYPDB_175 full=y network_link=jyrac_link transportable=always transport_datafiles='+data/jy/4B2C6373AE2547CCE053AB828A0A7CA3/datafile/test01.dbf','+data/jy/4B2C6373AE2547CCE053AB828A0A7CA3/datafile/example01.dbf','+data/jy/4B2C6373AE2547CCE053AB828A0A7CA3/datafile/users01.dbf' version=12 directory=TTS_DUMP_LOG logfile=import.log
Import: Release 12.2.0.1.0 - Production on Fri Jun 2 16:30:40 2017
Copyright (c) 1982, 2017, Oracle and/or its affiliates. All rights reserved.
Connected to: Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production
Starting "SYSTEM"."SYS_IMPORT_FULL_01": system/********@JYPDB_175 full=y network_link=jyrac_link transportable=always transport_datafiles=+data/jy/4B2C6373AE2547CCE053AB828A0A7CA3/datafile/test01.dbf,+data/jy/4B2C6373AE2547CCE053AB828A0A7CA3/datafile/example01.dbf,+data/jy/4B2C6373AE2547CCE053AB828A0A7CA3/datafile/users01.dbf version=12 directory=TTS_DUMP_LOG logfile=import.log
Estimate in progress using BLOCKS method...
Processing object type DATABASE_EXPORT/PLUGTS_FULL/FULL/PLUGTS_TABLESPACE
Processing object type DATABASE_EXPORT/PLUGTS_FULL/PLUGTS_BLK
Processing object type DATABASE_EXPORT/EARLY_OPTIONS/VIEWS_AS_TABLES/TABLE_DATA
Processing object type DATABASE_EXPORT/NORMAL_OPTIONS/TABLE_DATA
Processing object type DATABASE_EXPORT/NORMAL_OPTIONS/VIEWS_AS_TABLES/TABLE_DATA
.......
Processing object type DATABASE_EXPORT/SCHEMA/DIMENSION
Processing object type DATABASE_EXPORT/END_PLUGTS_BLK
Processing object type DATABASE_EXPORT/FINAL_POST_INSTANCE_IMPCALLOUT/MARKER
Processing object type DATABASE_EXPORT/SCHEMA/TABLE/POST_INSTANCE/PROCACT_INSTANCE
Processing object type DATABASE_EXPORT/SCHEMA/TABLE/POST_INSTANCE/PROCDEPOBJ
Processing object type DATABASE_EXPORT/SCHEMA/POST_SCHEMA/PROCOBJ
Processing object type DATABASE_EXPORT/SCHEMA/POST_SCHEMA/PROCACT_SCHEMA
Processing object type DATABASE_EXPORT/AUDIT
Processing object type DATABASE_EXPORT/POST_SYSTEM_IMPCALLOUT/MARKER
ORA-39082: Object type PROCEDURE:"APEX_030200"."F" created with compilation warnings
ORA-39082: Object type PROCEDURE:"APEX_030200"."APEX_ADMIN" created with compilation warnings
ORA-39082: Object type PROCEDURE:"APEX_030200"."HTMLDB_ADMIN" created with compilation warnings
Job "SYSTEM"."SYS_IMPORT_FULL_01" completed with 1689 error(s) at Fri Jun 2 16:43:47 2017 elapsed 0 00:13:03
源資料庫
SQL> conn sys/xxzx7817600@jyrac as sysdba
Connected.
SQL> select count(*) from jy.dba_tables;
COUNT(*)
----------
2141
SQL> conn sys/xxzx7817600@jypdb as sysdba
Connected.
SQL> select count(*) from jy.dba_tables;
COUNT(*)
----------
2141
SQL> select tablespace_name,status from dba_tablespaces;
TABLESPACE_NAME STATUS
------------------------------ ---------
SYSTEM ONLINE
SYSAUX ONLINE
UNDOTBS1 ONLINE
TEMP ONLINE
UNDO_2 ONLINE
USERS ONLINE
TESTTB ONLINE
TEMP2 ONLINE
TEMP3 ONLINE
EXAMPLE ONLINE
TEST ONLINE
UNDOTBS2 ONLINE
12 rows selected.
SQL> alter tablespace test read write;
Tablespace altered.
SQL> alter tablespace example read write;
Tablespace altered.
SQL> alter tablespace users read write;
Tablespace altered.
SQL> select tablespace_name,status from dba_tablespaces;
TABLESPACE_NAME STATUS
------------------------------ ---------
SYSTEM ONLINE
SYSAUX ONLINE
UNDOTBS1 ONLINE
TEMP ONLINE
USERS ONLINE
UNDOTBS2 ONLINE
EXAMPLE ONLINE
TEST ONLINE
8 rows selected.
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29734436/viewspace-2140564/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle 12cr2 資料庫之間跨網路傳輸表,分割槽或子分割槽Oracle資料庫
- 使用EXPDP IMPDP傳輸不同資料庫的不同表空間(新增網路傳輸)資料庫
- RMAN跨平臺傳輸資料庫和表空間資料庫
- 12c跨平臺傳輸表空間
- RMAN跨平臺可傳輸表空間和資料庫資料庫
- 12c 資料泵傳輸表空間
- 資料線線損和長度對資料傳輸和網路傳輸的影響
- 【乾貨分享】Ftrans安全資料交換系統 搭建跨網資料傳輸通道
- 網路遊戲資料傳輸:粘包的處理遊戲
- 完成資料的跨界傳輸與驗證
- 檢視可跨系統可傳輸資料
- 使用Oracle可傳輸表空間的特性複製資料(3)跨平臺的傳輸實踐Oracle
- Oracle 12c資料庫安裝Oracle資料庫
- oracle net manager 資料傳輸安全Oracle
- 網路中的資料傳輸模式有哪些-鐳速模式
- TransData for Mac - 網路資料傳輸速率監測軟體Mac
- 網路資料傳輸速率監測軟體:TransData for MacMac
- 技術筆記(12)網路資料傳輸問題筆記
- window.name實現的跨域資料傳輸跨域
- Oracle 12C RAC CDB資料庫部署Oracle資料庫
- 跨國大檔案傳輸需要哪些方面?怎麼實現資料快速傳輸?
- Oracle 12C使用備份集執行只讀表空間的跨平臺傳輸Oracle
- 網路傳輸協議協議
- Python 網路資料傳輸協議 TCP 程式設計Python協議TCP程式設計
- 用傳輸表空間跨平臺遷移資料
- 【12C】Oracle 12c 可插拔資料庫之資料泵功能體驗Oracle資料庫
- ORACLE 12C RAC資料庫的啟停Oracle資料庫
- Oracle 12c資料庫升級實戰Oracle資料庫
- Oracle Database 12c可插拔資料庫案例OracleDatabase資料庫
- 資料檔案在網路“裸奔”,如何在網際網路中進行檔案傳輸?
- Oracle 12c - 普通資料庫與容器資料庫不能相互轉化Oracle資料庫
- oracle 12c 使用RMAN的傳輸表空間功能在PDB之間遷移資料Oracle
- RMAN中CONVERT跨平臺傳輸資料庫時整庫轉換不通過的問題資料庫
- 網路資料傳輸時作業系統幹了什麼?作業系統
- 不安全網路中的資料安全傳輸利器——GnuPG(上)
- 路由器網路中資料包傳輸分析路由器
- 資料出境難?如何打破跨國檔案傳輸的困局?
- oracle資料庫網路相關的若干概念Oracle資料庫