[zt] 使用SQL Server中的Linked Server及Remote Server

tolywang發表於2009-05-16

如何使用MS SQL7的REMOTE SERVER

設定SERVER:
  一、在Client Network Utility中新增目標伺服器的聯接
  二、開啟ENTERPRISE MANGER,展開源伺服器的Security,在REMOTE SERVERS上單擊右鍵,
  單擊彈出選單中的NEW REMOTE SERVER
  三、在REMOTE SERVER PROPERTIES視窗中,輸入Server Name,選中RPC,
  REMOTE LOGIN MAPPING可以用預設值,然後單確定
  四、同樣的方法設定目標伺服器
  
  使用
  對於REMOTE SERVER 上的表和過程用一般的過程和表的使用方法即可,不過在表和過程名前要加上SERVER NAME
  
  例
  
  select * from remoteserver.databasename.dbo.tablename
  
  exec remoteserver.databasename..sp_test @cs1,@cs2,@cs3 output
  
  在兩臺同樣裝有NT4+SP5,MSSQL7+SP1的伺服器上測試成功。

 

 --------------------------------------------------------------------------------------------------------------------------------------- 

 

           REMOTE SERVER,雖說使用起來很方便,但是隻能在MSSQL之間使用,如果要將SQL7同SQL 6.5聯接應該怎麼?或者用SQL7同ORACLE或SYSBASE聯接應該怎麼辦呢?這就需要用到LINKED SERVER。

    今天先說一下SQL7之間使用LINKED SERVER的方法: 

    一、在源伺服器的Client Network Utility中新增目標伺服器的聯接
    二、開啟ENTERPRISE MANGER,展開源伺服器的Security,在LINKED SERVERS
        上單擊右鍵,單擊彈出選單中的NEW LINKED SERVER
    三、在LINKED SERVER PROPERTIES視窗中,在LINKED SERVER框輸入目標服務
        器名(在CLIENT NETWORK UTILITY中的伺服器名),在SERVER部分選中
        SQL Server,在SERVER OPTIONS中根據選中RPC和RPC OUT
    四、切換到安全(Security),根據實際設定。
        (我一般選擇“THEY WILL BE MAPPED TO”,然後輸入帳號和口令)
    五、單擊確定完成設定

    需要說明的是,在使用時同REMOTE SERVER有點不同,用REMOTE SERVER可以
省略CATALOG(DBO),但使用LINKED SERVER時卻不能省略,當時我在試時就因為
這個問題耽誤了不少時間。

    以上在WIN98+SQL7 DESKTOP同NT4+SP5+SQL7之間測試成功

 

曾因工作的原因,在別人的督促之下,試了SQL 7同ORACLE聯接,在SQL7中直接訪問ORACLE的資料庫方法,下面將該方
法簡單說一下。

    當時用的是LINKED SERVER直接聯接對方資料庫。

    一、先在SQL伺服器裝上ORACLE的客戶端,並設定好
    二、然後開啟ENTERPRISE MANGER,與昨天相同的方法進到新增LINKED SERVER視窗
    三、在LINKED SERVER框輸入要使用的伺服器名,伺服器名允許按命名規則任意命名,但不能與已有的REMOTE SERVER
或LINKED SERVER重名。
    四、在SERVER區選中“OTHER DATA SOURCE”
    五、Provider name選擇“Microsoft OLE DB Provider for Oracle”
    六、在Product name處輸入“Oracle”
    七、在Data source處輸入在Oracle客戶端程式中設定的伺服器名
    八、在Provider處輸入“MSDAORA” 注:用ORACLE就是這個,不能改
    九、在Server opentions區選擇“RPC”和“RPC OUT”
    十、再切換到安全(Security),根據實際設定。        
        (我都是選擇“THEY WILL BE MAPPED TO”,然後輸入帳號和口令)
    十一、單擊確定完成設定

    我按這個步驟設定成功,但因時間和條件的問題,一直沒再繼續試其它的設定,如果各位那位有這樣的條件的話,請
再試一下其它的選項,看有什麼不同,試完希望能將步驟和結果給我發一份。

    另需說明的是,這種的聯接的穩定性還是可以的,在設好以後的一年中,只因為對方伺服器出問題重設了一次,還有
一次是ORACLE的客戶端被管理員不小心刪了個檔案,又重設了一次,然後一直沒出問題,並且速度也還可以,一個過程,
在ORACLE客戶端執行需要0.1秒鐘,透過LINKED SERVER執行需要0.2秒鐘左右。

    明天給大家寫一下上面同樣的設定用SQL7的系統過程設定的方法。

    以上在UNIX+ORACLE7和NT4+SP5+SQL7上測試成功。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/35489/viewspace-598316/,如需轉載,請註明出處,否則將追究法律責任。

相關文章