Oracle數(shù)據(jù)庫連接并訪問Microsoft?SQL?Server數(shù)據(jù)庫操作步驟
說明:
1.實際開發(fā)中,Oracle數(shù)據(jù)庫與SQLServer數(shù)據(jù)庫之間可能需要相互進行訪問,方便業(yè)務數(shù)據(jù)抽取,編寫視圖及表等操作。
2.SQLServer訪問Oracle數(shù)據(jù)庫配置相對較為簡單,但是Oracle數(shù)據(jù)庫訪問SQLServer數(shù)據(jù)庫相對來講較為復雜,需要安裝相關軟件以及配置相關文件。本案例使用Oracle官網(wǎng)提供的gateways來演示操作。
注意:筆者操作系統(tǒng)環(huán)境為RHEL9,數(shù)據(jù)庫為Oracle19C.案例中連接的SQLServer數(shù)據(jù)部署在Windows系統(tǒng)中。本案例同樣適用于Oralce連接其他類型數(shù)據(jù)庫,并且同操作系統(tǒng)關系不大,Windows系統(tǒng)中大同小異!
操作步驟:
1.下載gateways
2.上傳gateways并解壓
3.安裝(注意:為了防止安裝亂碼,安裝報錯,需要將系統(tǒng)語言臨時修改,臨時修改RHEL系統(tǒng)版本為9.0`)
export CV_ASSUME_DISTID=RHEL8.0 export LANG=en_US
注意:上圖中SQLServer數(shù)據(jù)庫地址是必填的,其他三項可以暫時不用填寫,之后可以修改相應配置文件后生效。
4.查看(配置)initdg4msql.ora文件(因為部署的時候已經(jīng)配置過了,所以initdg4msql.ora文件中不需要重復配置,如果部署的時候只填寫了SQLServer服務器地址,則需要按照以下格式書寫)
# This is a customized agent init file that contains the HS parameters # that are needed for the Database Gateway for Microsoft SQL Server # # HS init parameters # HS_FDS_CONNECT_INFO=[192.168.227.134]:1433//UFDATA_999_2023 # alternate connect format is hostname/serverinstance/databasename HS_FDS_TRACE_LEVEL=OFF HS_FDS_RECOVERY_ACCOUNT=RECOVER HS_FDS_RECOVERY_PWD=RECOVER
5.配置Oracle中的listener.ora文件(可以按如下格式書寫,也可以將/u01/app/oracle/product/19.3.0/dbhome_1/dg4msql/admin/listener.ora.sample文件中的內(nèi)容復制到Oracle的listener.ora文件中)
SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (GLOBAL_DBNAME = orcl) (ORACLE_HOME = /u01/app/oracle/product/19.3.0/dbhome_1) (SID_NAME = orcl) ) (SID_DESC= (SID_NAME=dg4msql) (ORACLE_HOME=/u01/app/oracle/product/19.3.0/dbhome_1) (PROGRAM=dg4msql) ) ) LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = Java)(PORT = 1521)) (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521)) ) )
6.配置Oracle中的tnsnames.ora文件(可以按如下格式書寫,也可以
將/u01/app/oracle/product/19.3.0/dbhome_1/dg4msql/admin/tnsnames.ora.sample文件中的內(nèi)容復制到Oracle的tnsnames.ora文件中)
注意:該配置文件中必須填寫Oracle服務器計算機名!
# tnsnames.ora Network Configuration File: /u01/app/oracle/product/19.3.0/dbhome_1/network/admin/tnsnames.ora # Generated by Oracle configuration tools. LISTENER_ORCL = (ADDRESS = (PROTOCOL = TCP)(HOST = Java)(PORT = 1521)) ORCL = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = Java)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orcl) ) ) dg4msql = (DESCRIPTION= (ADDRESS=(PROTOCOL=tcp)(HOST=Java)(PORT=1521)) (CONNECT_DATA=(SID=dg4msql)) (HS=OK) )
7.重啟監(jiān)聽
7.創(chuàng)建數(shù)據(jù)庫連接
# dg4msql是在Oracle服務器上配置的ODBC數(shù)據(jù)源名稱。 # sa和password是用于連接到SQL Server的憑據(jù). # gl_accvouch是SQL Server上訪問的表的名稱 CREATE DATABASE LINK hrpsv665 CONNECT TO "sa" IDENTIFIED BY "password" USING 'dg4msql'; # 查詢示例 SELECT * FROM gl_accvouch@hrpsv665;
注意:查詢語句中如果想要過濾字段,無論是按特定字段查詢還是條件查詢中的字段,必須要加雙引號,否則提示字段無效!
總結(jié)
到此這篇關于Oracle數(shù)據(jù)庫連接并訪問Microsoft SQL Server數(shù)據(jù)庫操作步驟的文章就介紹到這了,更多相關Oracle連接并訪問SQL Server數(shù)據(jù)庫內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
關于sql腳本導入Oracle時重復生成check約束的問題解決
這篇文章主要給大家介紹了關于sql腳本導入Oracle時重復生成check約束的問題解決方法,文中給出了詳細的檢查步驟,對大家理解和解決這個問題具有很好的幫助,需要的朋友們下面來一起看看吧。2017-05-05