前言
本文介紹的是關(guān)于Oracle同義詞+dblink的實際應(yīng)用,下面話不多說了,來一起看看詳細的介紹吧。
業(yè)務(wù)需求:原數(shù)據(jù)庫(10.2.0.4.0),新數(shù)據(jù)庫(11.2.0.3)
由于程序的需求原因,現(xiàn)在需要把新庫上的某個用戶直接映射到老庫用戶下:
1. 備份原庫的用戶
nohup exp scott/scott OWNER=scott BUFFER=10240000 STATISTICS=none RESUMABLE=y FILE=scott_all_exp.dmp LOG=scott_all_exp.log
2. 刪除原庫的用戶下的表
set linesize 180 pagesize 1000 SELECT 'DROP TABLE '||table_name||' CASCADE CONSTRAINTS PURGE;' FROM user_tables;
得出SQL的命令vi保存到droptable.sql
然后SQL> @droptable
3. 在原庫上創(chuàng)建到新庫的dblink
create public database link link167 connect to scott identified by scott using '(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.167)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = NEWDB) ) )';
測試dblink可用:
select * from dual@link167;
4. 在原庫上創(chuàng)建同義詞
create synonym MDRT_12E92$ for MDRT_12E92$@link167;
在新庫查詢user_tables得到table_name的列表,
set pagesize 1500 select table_name from user_tables;
命令用UE列編輯處理好,vi保存到createsynonym.sql
然后SQL> @createsynonym
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。
您可能感興趣的文章:- oracle跨庫查詢dblink的用法實例詳解
- Oracle10g通過DBLink訪問MySQL示例
- Oracle DATABASE LINK(DBLINK)創(chuàng)建與刪除方法
- oracle數(shù)據(jù)庫在客戶端建立dblink語法
- Oracle中建立了dblink怎么使用