国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
[轉]在oracle下如何創(chuàng)建database link全面總結 - 天堂的狼 - 博客園

[轉] 在oracle下如何創(chuàng)建database link全面總結

物理上存放于網絡的多個ORACLE數據庫,邏輯上可以看成一個單一的大型數據庫,用戶可以通過網絡對異地數據庫中的數據進行存取,而服務器 之間的協(xié)同處理對于工作站用戶及應用程序而言是完全透明的,開發(fā)人員無需關心網絡的鏈接細節(jié)、數據在網絡節(jié)點中的具體分布情況和服務器間的協(xié)調工作過程。

數據庫之間的鏈接建立在DATABASE LINK上。要創(chuàng)建一個DATABASE LINK,必須首先在建立鏈接的數據庫上設置鏈接字符串,即配置一個遠程數據庫的本地網絡服務名。

鏈接字符串的配置參見《客戶端連接服務器》一節(jié)。


數據庫全局名稱可以用以下命令查出:

SELECT * FROM GLOBAL_NAME;

修改可以用以下語句來修改參數值:

ALTER SYSTEM SET GLOBAL_NAME=TRUE/FALSE;

<1>、當數據庫參數global_name=false時,就不要求數據庫鏈接名稱跟遠端數據庫名稱一樣。

oracle數據庫之間進行連接通訊。
創(chuàng)建數據庫鏈接的語法如下:
CREATE [PUBLIC] DATABASE LINK link

CONNECT TO username IDENTIFIED BY password

USING ‘connectstring’

其中:
--demona為用net8 easy config創(chuàng)建的連接字符串
目的方數據庫的init.ora文件中的global_names設為false
重新啟動數據庫設置才能生效
或者用sys用戶執(zhí)行

注意:創(chuàng)建數據庫鏈接的賬號必須有CREATE DATABASE LINK或CREATE PUBLIC DATABASE LINK的系統(tǒng)權限,用來登錄到遠程數據庫的賬號必須有CREATE SESSION權限。這兩種權限都包含在CONNECT角色中(CREATE PUBLIC DATABASE LINK權限在DBA中)。

一個公用數據庫鏈接對于數據庫中的所有用戶都是可用的,而一個私有鏈接僅對創(chuàng)建它的用戶可用。由一個用戶給另外一個用戶授權私有數據庫鏈接是不可能 的,一個數據庫鏈接要么是公用的,要么是私有的。

創(chuàng)建數據庫鏈接時,還可以使用缺省登錄方式,即不指定遠程數據庫的用戶名和密碼:

create public database link zrhs_link

using ‘zrhs’;

在不指定用戶名和口令的情況下,ORACLE使用當前的用戶名和口令登錄到遠程數據庫。

USING后面指定的是鏈接字符串,也就是遠程數據庫的網絡服務名,這個服務名保存在TNSNAMES.ORA文件中,在該文件中定義了協(xié)議、主機 名、端口和數據庫名。

刪除數據庫鏈接的語句是:

DROP [PUBLIC] DATABASE LINK zrhs_link

數據庫鏈接的引用

一般情況下引用數據庫鏈接,可以直接將其放到調用的表名或視圖名稱后面,中間使用一個 @ 作為分割符:

SELECT * FROM worker@zrhs_link;

對于經常使用的數據庫鏈接,可以建立一個本地的同義詞,方便使用:

CREATE SYNONYM worker_syn FOR worker@zrhs_link;

還可以建立一個本地的遠程視圖,方便使用:

CREATE VIEW worker AS SELECT * FROM worker@zrhs_link where… ;

現在本視圖可與本地數據庫中的任何其它視圖一樣對待,也可以授權給其它用戶,訪問此視圖,但該用戶必須有訪問數據庫鏈接的權限。

對于另外一種情況,所要訪問的表不在數據庫鏈接中指定的遠程帳戶下,但該帳戶有訪問該表的權限,那么我們在表名前要加上該表的用戶名:

SELECT * FROM camel.worker@zrhs_link ;

<2>、當數據庫參數global_name=true時,那就要求數據庫鏈接名稱跟遠端數據庫名稱一樣
數據庫全局名稱可以用以下命令查出

SELECT * FROM GLOBAL_NAME;

atabase link(dblink)--數據庫鏈路
創(chuàng)建dblink的語法:
sql>create database link 數據庫鏈路名
connect to 用戶名 identified by 口令
using '主機字符串名';
如:
sql>create database link ora9i.us.oracle.com ### 這里的us.oracle.com為oracle默認域名 ###
connect to scott identified by tiger
using 'sun';

1)dblink名必須與遠程數據庫的全局數據庫名(global_name)相同;
2)用戶名,口令為遠程數據庫用戶名,口令;
3)主機字符串為本機tnsnames.ora中定義的串;
4)兩個同名的數據庫間不得建立dblink;
然后,你就可以通過dblink訪問遠程數據庫了。
如:
sql>select * from 表名@ora9i.us.oracle.com;
還可以建立快照(snapshot)通過dblink實現遠程數據自動傳輸。

查看所有的數據庫鏈接,進入系統(tǒng)管理員SQL>操作符下,運行命令:

SQL>select owner,object_name from dba_objects where object_type='DATABASE LINK';

本站僅提供存儲服務,所有內容均由用戶發(fā)布,如發(fā)現有害或侵權內容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
oracle新手入門指導之八—數據庫遠程訪問小知識[天源迪科論壇]
分布式數據庫組件——Database Link
oracle通過透明網關,創(chuàng)建dblink,訪問ms sql server和其他數據庫 -...
實戰(zhàn)演練丨SCN太大引發(fā)ORA-600[2252]
Oracle dblink詳解(轉)
使用dblink出現ORA
更多類似文章 >>
生活服務
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯系客服!

聯系客服