oracle資料庫遠端不落地匯入本地資料庫
1. 在要匯入資料庫的本地主機建立exp(dp)、imp(dp)目錄,此處我用的是impdp/expdp:
SQL> create directory dpdump as '/oradata/dpdump';
Directory created.
SQL> select * from dba_directories;檢視目錄
SQL> grant read,write on directory dpdump to vhfs;
Grant succeeded.
2. 在要匯入資料庫的本地主機建立dblink
1.建立dblink的第一種方式,是在本地資料庫tnsnames.ora檔案中配置了要遠端訪問的資料庫(即資料庫匯入的源端資料庫的tns)。
增加tnsnames.ora檔案遠端資料庫的tnsnames.ora的資訊如下:
ORATEST1 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = oratest1)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = oratest1)
)
) 上面這個是本地主機原來的tnsnames.ora檔案
Oratest2 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = oratest2)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = oratest2)
)
) 後來增加的遠端資料庫tnsnames.Ora的檔案
在本地主機上開始建立dblink,在開始建立前要保證本地tnsping oratest2(遠端資料庫tns) 能通。 (本例中我的資料庫例項名和主機名是一樣的,這個根據自己環境的實際情況來填寫)
以sys使用者登入
SQL>create public database link
oratest2_rt connect to oracle identified by oracle using ‘oratest2'
其中oratest2_rt是你建立的dblink名字,oratest2是遠端資料庫的例項名(instance),oracle/oracle是登入到遠端資料庫的使用者/密碼。然後在本地資料庫中透過dblink訪問遠端資料庫'oratest2'中oracle.tech表sql語句如下所示
SQL> select * from ;
NAME ID PROJECT
---------- -------------------- ----------
白雪 55 鋼琴
黎明 22 化學
大貓 29 生物
小貓 18 語文
2.建立dblink的第二種方式,是在本地資料庫tnsnames.ora檔案中沒有配置要訪問的遠端資料庫,
create database link oratest2_rt
connect to oracle identified by oracle
using ‘(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.5.106)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = oratest2)
)
)';
第二種是把第一種配置在tnsnames.ora檔案中的資訊,直接放在建立dblink語句後面。第一種情況tnsnames.ora檔案中資訊如下:
Oratest2=
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = oratest2)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = oratest2)
)
)
刪除及建立DBlink
SQL> drop public database link oratest2_rt;
Database link dropped.
SQL> create public database link
oratest2_rt connect to oracle identified by oracle using 'oratest2';
3. 根據以上步驟建立資料庫連線完成後,可以做下面的操作
本地資料庫操作遠端資料庫不落地匯入資料:
impdp oracle/oracle DIRECTORY=dpdump NETWORK_LINK=oratest2_rt schemas=oracle
oracle/oracle是遠端資料庫的使用者名稱和密碼,DIRECTORY=dpdump是expdp、impdp目錄(此處的目錄在不落地匯入的時候,只是作為一箇中轉站,不會有資料存在),NETWORK_LINK=oratest2_rt是DBlink,schemas=oracle是要匯入的使用者。
注意:
一、在本地資料庫下要建立好與遠端資料庫同樣數量和大小的資料檔案,然後建立同樣的使用者oracle並授權,
命令如下:
Sys登入
SQL>create user oracle identified by oracle
default tablespace MGRVHFSTBSDEF 此處是設定預設表空間。
temporary tablespace TEMP 此處是設定預設臨時表空間。
profile DEFAULT
quota unlimited on mgrvhfstbs2005 此處是設定可操作的其他表空間
quota unlimited on mgrvhfstbsdef; 此處是設定可操作的其他表空間
使用者授權
SQL>grant connect to oracle;
SQL>grant dba to oracle;
SQL>grant unlimited tablespace to oracle;
二、如果使用者已存在,則刪除使用者下所有資料,並重建使用者。
1.刪除使用者
SQL> drop user oracle cascade;
2.建立使用者
SQL>create user oracle identified by oracle
default tablespace MGRVHFSTBSDEF 此處是設定預設表空間。
temporary tablespace TEMP 此處是設定預設臨時表空間。
profile DEFAULT
quota unlimited on mgrvhfstbs2005 此處是設定可操作的其他表空間
quota unlimited on mgrvhfstbsdef; 此處是設定可操作的其他表空間
使用者授權
SQL>grant connect to oracle;
SQL>grant dba to oracle;
SQL>grant unlimited tablespace to oracle;
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/23490154/viewspace-1061651/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Access 匯入 oracle 資料庫Oracle資料庫
- ORACLE 配置連線遠端資料庫Oracle資料庫
- oracle 備份資料庫,匯出資料庫Oracle資料庫
- 資料庫 MySQL 資料匯入匯出資料庫MySql
- 大文字資料,匯入匯出到資料庫資料庫
- Oracle expdp資料泵遠端匯出Oracle
- PL/SQL Developer連線遠端Oracle資料庫SQLDeveloperOracle資料庫
- Oracle資料庫匯入匯出。imp匯入命令和exp匯出命令Oracle資料庫
- 將資料庫中資料匯入至solr索引庫資料庫Solr索引
- excel 匯入sqlyog資料庫ExcelSQL資料庫
- GeoRapter工具將shapefile資料匯入到Oracle空間資料庫中APTOracle資料庫
- Oracle 19.3資料庫impdp匯入view時hang住Oracle資料庫View
- Mysql 資料庫匯入與匯出MySql資料庫
- 匯入excel資源到資料庫Excel資料庫
- 如何將Excl內資料匯入資料庫?資料庫
- Oracle匯出資料庫與還原Oracle資料庫
- 遠端連線mysql資料庫MySql資料庫
- TP5.1excel匯入資料庫的程式碼?php excel如何匯入資料庫?Excel資料庫PHP
- HHDBCS資料庫一鍵匯入資料庫
- Oracle 28.6資料庫impdp匯入view時hang@11Oracle資料庫View
- Oracle資料匯入匯出Oracle
- Oracle 資料匯入匯出Oracle
- SQL資料庫的匯入和匯出SQL資料庫
- 100萬資料,如何快速的匯入資料庫?資料庫
- 資料庫遠端連線失敗資料庫
- Oracle 資料匯入ExcelOracleExcel
- 然後再全庫匯入排除view資料庫在impdp匯入View資料庫
- java 從EXCEL匯入到資料庫JavaExcel資料庫
- Oracle資料庫-----資料庫的基本概念Oracle資料庫
- DataX將MySql資料庫資料同步到Oracle資料庫MySql資料庫Oracle
- mysql dump 拉取遠端資料同步到本地庫的shell 指令碼MySql指令碼
- Oracle資料庫配置Oracle資料庫
- DataX將Oracle資料庫資料同步到達夢資料庫Oracle資料庫
- PostgreSQL資料庫匯入大量資料時如何最佳化SQL資料庫
- 教你兩種資料庫覆蓋式資料匯入方法資料庫
- 達夢資料庫遷移資料/複製表/匯入匯出2資料庫
- Oracle資料庫遷移至PolarDb(阿里雲資料庫)Oracle資料庫阿里
- oracle資料匯出匯入(exp/imp)Oracle
- Linux基礎命令---mysqlimport匯入資料庫LinuxMySqlImport資料庫