sql服务器添加oracle的链接服务器步骤
SQLServer链接服务器至Oracle
SQLServer链接服务器至Oracle1. 我方服务器必须安装msdtc服务,并进行相应配置。
2. 我方服务器必须安装oracle client,这个要对应中心站oracle版本的客户端。
3. 我方服务器必须安装Oracle Services For Microsoft Transaction Server [版本]Oracle Provider for OLE DB [版本]这2个可以在Oracle官方网站下载[/technology/software/tech/windows/odpnet/index.html]此文件为分布式事务必须的插件。
4. Oracle给我们分配一个Oracle的用户名和密码,具有写入/读取表的权限。
5. 在我方系统的SQLServer服务器上建立链接服务器,指向Oracle数据库,链接服务器访问接口必须为[Oracle Provider for OLE DB](否则无法启动分布式事务)。
1. 在写存储过程向oracle数据库中 insert、delete、update的时候,一定要加上SET XACT_ABORT ON此为开启镶嵌事务标志,否则分布式事务会失败。
2. 对于从oracle或sqlserver中select数据的时候没有必要加入事务范围内,会锁表浪费时间。
3. 查询语句格式为:SELECT * FROM openquery(ORA_DBENSIS, 'select ID from TEST_TRANS')或者SELECT * FROM ORA_DATABASE..TEST_USER.TEST_TRANS用户名TEST_USER、表名TEST_TRANS必须大写4. 插入语句格式为:INSERT openquery(ORAENSIS, 'select ID from TEST_TRANS where 1=0')values (1)在SQL SERVER中访问ORACLE表的方法在SQL SERVER中,能否访问ORACLE表,进行查询操作呢?答案无疑是可以的,下面就为你介绍在SQL SERVER中访问ORACLE表的实现方法,供您参考。
Sql server建立Oracle的链接服务器, 跟Oracle的dblink差不多
一、安装配置oracle客户端要访问orcale数据,必须在访问的客户端机器上安装oracle客户端。
Orcale有两种形式的客户端:●完整的客户端包括访问服务器端数据库的基本Oracle 的Microsoft OLE DB 访问接口需要Oracle Client Software Support File以及SQL*Net 。
还包括用于配置客户端设置的工具、sqlplus、企业管理器等一系列的工具。
●立即客户端(instant client)这个客户端体积很小,但是只包括了访问orcale服务器的最基本的支撑驱动,没有设置管理工具,也找不到可用的图形界面。
对客户端的设置需要手工就行。
目前orcale比较新的是oracle 10g版本,以这个版本为例。
1、下载oracle 10 的客户端可以到orcale官方网站下载,需要先注册,然后下载。
下载适用于Microsoft Windows (32-bit)的Oracle Database 10g Client Release 2的客户端,下载地址:/otn/nt/oracle10g/10201/10201_client_win32.zip2、安装oracle 10 客户端下载好后,解压,安装。
安装时有四个选项:●Instantclient,相当于最小化安装。
●管理员,完整安装。
●运行时自定义为了管理方便,一般以管理员方式安装。
3、配置oracle 10 客户端在客户端主要需要配置两个设置,命名方法和服务器别名,还有一个监听程序是服务端需要用的,用来监听客户端的访问,客户端不必设置监听程序。
这些设置都能在net manager工具中进行,在oracle程序组中的“配置和移植工具”中的“net manage r”。
如图所示:概要文件就是用来设置命名方法和验证方式的的3.1.命名方法在窗口左面的上部下拉列表中选“命名”,左边窗口显示目前可用的方法,右边是已经选择的命名方法,几个主要的命名方法有:●TNSNAMES表示采用TNSNAMES.ORA文件来解析●ONAMES表示Oracle使用自己的名称服务器(Oracle Name Server)来解析,目前Oracle建议使用轻量目录访问协议LDAP来取代ONAMES●HOSTNAME表示使用host文件,DNS,NIS等来解析一般使用本地命名方式来解析服务器名,即使用TNSNAMES.ORA中设置的服务器名。
sql连接orcale
一、创建sqlserver链接服务(sqlserver链接oracle)首先sqlserver 链接oracle可以通过两个访问接口:“MSDAORA” 和“OraOLEDB.Oracle”1、“MSDAORA”访问接口是由Microsoft OLE DB Provider for Oracle提供的,这里建议不使用此接口进行链接。
通过该访问接口建立的链接服务器在进行查询oracle表(带数据类型CLOB、BLOB字段)时会报这个错误“链接服务器""的 OLE DB 访问接口 "MSDAORA" 返回了消息 "发生了一个Oracle 错误,但无法从 Oracle 中检索错误信息。
"。
链接服务器""的 OLE DB 访问接口 "MSDAORA" 返回了消息 "数据类型不被支持。
"。
消息 7321,级别 16,状态 2,第 1 行准备对链接服务器 "" 的 OLE DB 访问接口 "MSDAORA" 执行查询"select * from SYS_MESSAGE"时出错。
”链接服务器 "LINK2ORACLE" 的 OLE DB 访问接口 "MSDAORA" 为列提供的元数据不一致。
对象 ""CMCC"."OS2_GIS_CELL"" 的列 "ISOPENED" (编译时序号为20)在编译时有 130 的 "DBTYPE",但在运行时有错。
2、“OraOLEDB.Oracle” 访问接口是由oracle 的Oracle Probider forOLE DB 驱动提供的。
它解决了两个数据库类型不一致的的问题。
Oracle与SQLServer建立DBlink连接
Oracl e 与SQL Server建立DBlink连接设置步骤一、主旨:本操作说明主要用于指导实现Oracle 与SQL Server建立DBlink连接二、要求:(1)Oracle版本需在9i以上(2)SQL Server需在2000 SP3以上三、配置方法与步骤:1、通过ODBC建立连接(1)在Oracle服务器上打开“ODBC数据源管理器”。
路径:开始—>控制面板->管理工具-〉数据源(ODBC)。
(2)选中“系统DSN”选项卡,点击“添加"按钮,在弹出的对话框中选中SQL Server 驱动程序,点击“完成"。
(3)在弹出的对话框中输入数据源名称、描述以及需连接到的SQL Server所在服务器IP或服务器名称,点击“下一步”。
(4)选择SQL Server登陆认证模式,根据SQL Server端认证设置,若集成Window认证则选择“使用网络登陆ID的Windows NT验证”,若未SQL Server认证则选择“使用用户输入登陆ID和密码的SQL Server验证”,此处我们选择第二选项,然后输入登陆ID与密码,点击“下一步”.(5)选择需建立连接的SQL Server数据库,点击“下一步"。
(6)根据需求勾选相关选项,点击“完成”(7)点击测试数据源,若出现“连接失败”,根据《远程连接SQL Server失败错误原因排查说明文档》进行检查,若出现“测试成功",则连续点击两次“确定"完成配置。
(8)打开Oracle安装目录,进入hs文件目录%Oracle_Home%/hs/admin,复制inithsodbc。
ora文件,新命名为inithstest。
ora.命名规则init<SID>。
ora(9)编辑inithstest.ora文件内容如下(10)进入hs文件目录%Oracle_Home%/Network/Admin,修改Oracle listener。
记录SQLServer2019链接Oracle11gR2的过程
记录SQLServer2019链接Oracle11gR2的过程前言基于作者项目特性,需要从A方Oracle导出数据到SQL Server 中,A方使用Oracle 11g R2,我方使用SQL Server 2019,在搜集相关资料以及结合项目进展,提出使用SQL Server链接Oracle的方式,便于简化开发环境。
操作过程简述1.安装配置OracleClient在服务器上安装SQL Server和Oracle Client(如win64_11gR2_client),配置tnsnames.ora(以下为测试环境配置)1 ORCLDB=2 (DESCRIPTION =3 (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))4 (CONNECT_DATA =5 (SERVER = DEDICATED)6 (SERVICE_NAME = ORCL)7 )8 )9 #其中HOST = 127.0.0.1输入Oracle服务器IP,PORT输入Oracle端口,SERVICE_NAME输入目标Oracle的服务名。
2.配置SQL Server(非必要配置)打开 SQL Server <version> Configuration Manager选择SQL Native Client <all version> Configuration设置[TCP/IP]为Enable配置SQL Server Network Configuration配置Protocols For MSSQLSERVER中[TCP/IP]为Enable打开MSSM,选择目标数据库,右键[属性]选择[连接],确认勾选[允许远程连接到此服务器]3.配置链接数据库MSSM中目标数据库->服务器对象->链接服务器展开Providers,双击OraOLEDB.Oracle(该选项需要在SQL Server服务器上预装OracleClient),确认勾选[允许进程内]和[支持"Like"运算符],其它不勾选,确认保存右键[链接服务器],选择[新建链接服务器]选择[常规]左侧边栏,提供程序选择[Oracle Profider for OLE DB],产品名称输入Oracle,数据源输入:1)输入tnsnames.ora中配置的数据源,访问接口字符串(以下为测试环境配置):[IP地址]:1521/orcl数据源格式为IP:端口/实例选择[安全性]左侧边栏,单选[使用此安全上下文建立连接(M):],在[远程登录:]和[使用密码:]对应的输入框中输入Oracle访问的用户名和密码。
如何实现SQLServer2008R2连接Oracle11gR2————64位
如何实现SQLServer2008R2连接Oracle11gR2(64位版)一、实现连接前的准备软件准备1、SQLServer2008R2点击下载2、win64_11gR2_client点击下载3、ODAC112021Xcopy_x64点击下载二、连接方法通过SQLServer的LinkedServer功能连接Oracle三、实际操作1.1首先配置Client在SQLServer的主机上安装完Oracle的客户端后,可以在数据源里面看到Oracle的ODBC驱动,注意客户端的版本,最注意的是要根据操作系统来选择是64位或32位(此处选择64位),(在64位操作系统必须安装64位Oracle客户端才会在windows的数据源中才能显示出如下图所示驱动)PS.在64位操作系统中可以同时安装64位和32位Oracle客户端,其中默认配置文件已后面安装的目录和文件为准。
两个客户端都生效。
安装完成后在Oracle_Home(64位)下面查看的NETWORK\ADMIN找到tnsnames并加入如下内容注:ORCL =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = orcl)))1.2安装ODBC驱动先解压安装包ODAC112021Xcopy_x64,把里面的文件都解压到一个文件夹里,我是解压到D:\ODAC112040Xcopy_64bit,然后打开cmd,进入到这个文件夹。
如图输入"install.bat all D:\OracleClient ODAC"(不含双引号)。
这里有几个参数需要特别注意,这里我们传入了三个参数,但最多可以传入四个。
注:后面的“D:\OracleClient ODAC”是安装目录,按照需求更改安装成功后会在SQLServe->Linked Servers中找到OraOLEDB.Oracle 服务,表示安装成功。
sqlserver获取oracle数据库方法
sqlserver获取oracle数据库方法要连接和获取oracle数据库中的数据,可以使用SQL Server的Linked Server功能。
Linked Server允许SQL Server与其他数据库之间建立连接来交互数据。
以下是连接Oracle数据库的步骤:1. 在SQL Server管理工具中,打开“服务器对象”下的“链接服务器”文件夹。
2.右键单击“链接服务器”文件夹,选择“新建链接服务器”。
3.在“常规”选项卡中,输入连接服务器的名称。
可以使用任意合适的名称。
4. 在“服务器类型”下拉菜单中选择“Oracle”。
5. 在“安全性”选项卡中,选择“Be made using this security context”选项,并输入Oracle数据库的用户名和密码。
6.在“服务器选项”选项卡中,为连接服务器设置适当的选项,如超时设置等。
7. 在“测试连接”选项卡中,可以测试连接是否成功。
如果连接失败,请检查Oracle数据库的配置和网络设置。
8.单击“确定”按钮来创建连接服务器。
现在,可以在SQL Server上使用连接服务器来访问Oracle数据库中的数据了。
示例代码:```-- 查询Oracle数据库中的数据SELECT*FROM[LinkedServerName].[OracleDatabaseName].[SchemaName].[TableName] -- 插入数据到Oracle数据库INSERT INTO[LinkedServerName].[OracleDatabaseName].[SchemaName].[TableName] (column1, column2, column3)VALUES (value1, value2, value3)-- 更新Oracle数据库中的数据UPDATE[LinkedServerName].[OracleDatabaseName].[SchemaName].[TableName] SET column1 = value1WHERE condition-- 删除Oracle数据库中的数据DELETE FROM[LinkedServerName].[OracleDatabaseName].[SchemaName].[TableName] WHERE condition```需要注意的是,连接Oracle数据库需要确保SQL Server环境中已安装Oracle客户端软件,并且配置正确。
通过ORACLE通用连接访问SQLServer数据库的方法
通过ORACLE通用连接访问SQLServer数据库的方法要通过Oracle通用连接访问SQL Server数据库,需要使用Oracle 的适配器来连接到SQL Server数据库。
以下是通过Oracle通用连接访问SQL Server数据库的方法:1. 安装并配置Oracle通用连接适配器:- 在Oracle数据库服务器上找到适配器的安装目录。
HS_FDS_CONNECT_INFO = server_nameHS_FDS_TRACE_LEVEL = offHS_FDS_SHAREABLE_NAME = /usr/local/bin/libodbc.so其中server_name是SQL Server数据库的主机名。
SID_LIST_LISTENER=(SID_LIST=(SID_DESC=(SID_NAME = odbc)(ORACLE_HOME = /path/to/oracle_home)(PROGRAM = dg4odbc)其中/oracle_home是Oracle数据库的安装目录。
2.配置ODBC数据源:- 在Oracle数据库服务器上安装必要的ODBC驱动程序以连接到SQL Server数据库。
- 在ODBC数据源管理器中配置一个ODBC数据源,以便Oracle数据库可以通过该数据源连接到SQL Server数据库。
- 确保ODBC数据源名称与initodbc.ora文件中的server_name匹配。
3.创建数据库链接对象:- 在Oracle数据库服务器上创建一个数据库链接对象,该对象将用于连接到SQL Server数据库。
-使用CREATEDATABASELINK语句创建数据库链接对象,语法如下:CREATE DATABASE LINK link_nameCONNECT TO username IDENTIFIED BY passwordUSING 'data_source_name';其中link_name是链接名,username是在SQL Server数据库中的用户名,password是对应的密码,data_source_name是ODBC数据源的名称。
plsql连接oracle配置
PL/SQL连接Oracle配置
介绍
PL/SQL是一种针对Oracle数据库开发的过程性编程语言,可以用于创建存储
过程、函数和触发器等对象。
要使用PL/SQL连接Oracle数据库,需要进行一些
配置。
本文将介绍如何配置PL/SQL连接Oracle数据库。
步骤
步骤1:安装Oracle客户端
在连接Oracle数据库之前,需要先安装Oracle客户端。
Oracle客户端是连接Oracle数据库的驱动程序,在连接数据库时需要使用。
首先,从Oracle官方网站
下载合适的Oracle客户端版本,然后按照安装向导进行安装。
步骤2:配置Oracle客户端
安装完Oracle客户端后,需要进行一些配置以确保连接能够成功。
以下是必要的配置项:
•ORACLE_HOME:指定Oracle客户端的安装目录。
需要将ORACLE_HOME设置为安装目录的路径,以便PL/SQL可以找到需要的文件。
•PATH:将Oracle客户端的bin目录添加到系统的PATH环境变量中,以便PL/SQL能够找到Oracle客户端的可执行文件。
•TNS_ADMIN:设置TNS_ADMIN环境变量为一个目录的路径,在该目录下应该包含一个名为tnsnames.ora的文件,该文件包含了要连接的
Oracle数据库的连接信息。
步骤3:创建数据库连接
在PL/SQL中,可以通过创建一个数据库连接来连接Oracle数据库。
以下是创
建数据库连接的步骤:
1.打开PL/SQL开发工具,如PL/SQL Developer或SQL Developer。
2.单击工具栏上的。
sql server连接Oracle方法(最全)
sql server连接Oracle方法(一)在SQL Server所在服务器中安装Oracle客户端程序,并设定好TNS(二)在SQL Server中添加Link Server,设置方法如下:以上设置也可以透过执行sql server的存储过程实现。
sp_addlinkedserver & sp_addlinkedsrvlogin(三)连接建立完成后,就可以执行查询语句了,查询的示例如下:/*查询*/select * from openquery(TESTORA, 'SELECT t01,t02 FROM tex_file')/*插入数据*/INSERT OPENQUERY(TESTORA, 'select t01 from tex_file')select 'testabc'/*更新数据*/update OPENQUERY(TESTORA, 'select t01 from tex_file') set t01='hellowo'where t01='testabc'/*删除数据*/delete from OPENQUERY(TESTORA, 'select t01 from tex_file')where t01='hellowo'(四)到此基本上无什么问题了,但是把这些语句放在sql server的触发器中的时候,问题产生了。
放入触发器中之后,一开始提示:“服务器'XXXXX' 上的MSDTC 不可用”,于是打开MSDTC服务(方法:切换到cmd窗口,运行net start msdtc,或者到控制台的服务里面启动DTC服务),不再提示这个错误,而是提示“MSDTC不能启动分布式事务”。
Oh my God,还是不行,于是再次去问谷歌,发现是因为微软提供的驱动不支持分布式事务,于是参照网上的方法(点此查看原始解决方案),修改注册表。
oracle数据库链接服务器查询sqlserver的写法
oracle数据库链接服务器查询sqlserver的写法要在Oracle数据库中链接SQL Server并执行查询,可以使用以下步骤:1. 从Oracle的SQL Developer或其他工具中,使用Oracle提供的JDBC驱动程序链接到SQL Server数据库。
2. 编写一个包含连接字符串的SQL语句。
连接字符串包括SQL Server的IP地址、端口号、数据库名称、用户名和密码。
例如,连接字符串可以是这样的:jdbc:sqlserver://10.10.10.10:1433;databaseName=TestDB;user=sa; password=1234563. 在Oracle数据库中创建一个数据库连接,其中包括连接字符串。
例如,可以使用以下PL/SQL代码创建一个数据库连接:CREATE DATABASE LINK sqlserver_link CONNECT TO "sa" IDENTIFIED BY "123456" USING 'jdbc:sqlserver://10.10.10.10:1433;databaseName=TestDB;user=sa; password=123456';4. 在该连接上执行 SELECT 语句以查询SQL Server数据库中的数据。
例如,可以使用以下SQL代码执行查询:SELECT * FROM mytable@sqlserver_link;这将返回来自SQL Server数据库中名为 'mytable'的表中的所有行。
注意,使用Oracle与SQL Server之间的联接需要一些配置和测试,以确认是否可以正确地连接到SQL Server数据库。
具体取决于您的环境和要求。
SQLSERVER建立ORACLE的链接服务器
sql server创建链接服务器以访问Oracle数据库实例创建链接服务器以访问Oracle 数据库实例:1、确保运行SQL Server 的服务器上的Oracle 客户端软件已达到提供程序所要求的级别。
用于Oracle 的Microsoft OLE DB 提供程序要求Oracle 客户端软件支持文件的版本为7.3.3.4.0 或更高版本,并且 SQL*Net 的版本为 2.3.3.0.4。
2、在运行SQL Server 的服务器上创建指向 Oracle 数据库实例的SQL*Net 别名。
有关更多信息,请参见Oracle 文档。
3、执行sp_addlinkedserver 创建链接服务器,指定 MSDAORA 为provider_nam e,指定用于 Oracle 数据库实例的SQL*Net 别名为data_ source。
以下示例假设已将一个 SQL*Net 别名定义为OracleDB。
sp_addlinkedserver 'OrclDB', 'Oracle', 'MSDAORA', 'OracleDB'4、使用sp_addlinkedsrvlogin 创建从 SQL Server 登录到Oracle 登录的登录映射。
以下示例通过Oracle 登录名OrclUsr 和密码OrclPwd 将SQL Server 登录Joe 映射到步骤 3 中定义的链接服务器:sp_addlinkedsrvlogin 'OrclDB', false, 'Joe', 'OrclUsr', 'OrclPwd'每个Oracle 数据库实例仅有一个名称为空的目录。
Oracle 链接服务器中的表必须使用四部分名称格式OracleLinkedServerNam e..OwnerUserNam e.TableNam e 进行引用。
64位WindowsSQLServer2014创建Oracle链接服务器win64_11g。。。
64位WindowsSQLServer2014创建Oracle链接服务器win64_11g。
Oracle Windows 64位客户端安装⽂档1 Oracle Win 64 客户端安装1.1 官⽹下载1.2 安装1.2.1 解压安装包后,运⾏setup.exe1.2.2 弹出DOS窗⼝,后会弹出下图,直接点击是1.2.3 选择管理员类型1.2.4 这⼀步默认1.2.5 安装⽬录设定,可⾃⾏调整,或者保持默认1.2.6 点击完成开始安装1.2.7 完成安装2 64位Windows SQL Server连接服务器配置2.1 Tnsnames.oRA配置2.1.1 打开安装⽬录如下图2.1.2 复制tnsnames.oRA到上⼀层⽬录2.1.3 打开⽂件,23⾏之后内容全部删除2.1.4 配置测试环境PS Oracle数据连接配置粘贴如下内容到tnsnames.oRA⽂件,注意HRTST前不要有空格。
HRTST =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.119.90)(PORT = 1521)) )(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = HRTST)))2.2 配置Oracle Provider for OLE DB允许进程内2.3 SQL SERVER 连接服务器创建2.3.1 新建连接服务器2.3.2 设置凭证2.3.3 创建完成3 连接服务器查询Oracle数据库3.1 相关Blog3.2 本地测试截图SELECT TOP 1 * FROM HRTRN..[PS].[PSDBOWNER]SELECT TOP 10 * FROM HRTRN..[SYSADM].[PS_RS_COST_CENTERS]SELECT TOP 10 * FROM OPENQUERY(HRTRN,'SELECT * FROM SYSADM.PS_RS_COST_CENTERS')。
PLSQL连接oracle数据库配置
PLSQL连接oracle数据库配置方法一:1)点击Net Configuration Assistant2) 在弹出的对话框中选择本地Net服务名配置,点下一步3)在服务名配置对话框中选择添加,点下一步4)在如下对话框中填写要访问的oralce数据库的服务名,该服务名可以通过oralce登录用户名进入环境,在.cshrc中,环境变量ORACLE_SID对应的值便是这个服务名,也可以在oracle用户环境下执行grep | env ORACLE_SID查找。
点击下一步5)选择TCP协议,点下一步6)主机名中填写要访问的oracle数据库服务器,使用标准端口号1521,点下一步7)选中“是,进行测试”,点下一步8) 点更改登录,填写要访问的数据库用户名和密码,确保其正确。
此处主要是验证前面配置是否正确,如正确这里的测试就可以成功。
如果不正确请检查服务名、ip地址、用户名、密码中是否有写错,并改之,就可以成功了。
测试成功后点下一步9)在下图中填写网络服务名,此处的网络服务名可以随意取名,点下一步,后面配置数据源的时候用的就是这个网络服务名方法一用起来有点小复杂,不过可以了解数据库的配置步骤,方法二相对来说简单很多找到本机oracle数据库安装的如下路径,如:F:\app\Administrator\product\11.1.0\client_1\network\admin,在该路径下有个文件tnsnames.ora,打开文件会发现里面有很多连接配置,直接拷贝一个修改如下红色字SYSDB_102 = //对应的就是上面方法一提到的网络服务名(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 10.41.24.102)(PORT = 1521)) //访问数据库的ip)(CONNECT_DATA =(SERVICE_NAME = sysdb) //数据库服务名))当配置好后,就可以用PLSQL访问数据库了PLSQL连接oracle数据库配置方法一:1)点击Net Configuration Assistant2) 在弹出的对话框中选择本地Net服务名配置,点下一步3)在服务名配置对话框中选择添加,点下一步4)在如下对话框中填写要访问的oralce数据库的服务名,该服务名可以通过oralce登录用户名进入环境,在.cshrc中,环境变量ORACLE_SID对应的值便是这个服务名,也可以在oracle用户环境下执行grep | env ORACLE_SID查找。
SQL Server 2008连接Oracle数据库步骤
SQL Server 2008连接Oracle操作步骤详细记录SQL Server Management Studio Express(简写SSMS)SQL Server配置管理器:SQL Server Configuration Manager(简写SSCM)一、开启SQL Server 2008远程连接---如果已经开启,则可以跳过1. 打开SSMS,用Windows身份连接数据库后,右键点击数据库引擎,选择“属性”2. 左侧选择“安全性”,选中右侧的“SQL Server和Windows身份验证模式”以启用混合登录模式3. 左侧选择“连接”,勾选“允许远程连接此服务器”,然后点“确定”4. 打开SSCM,选中左侧的“SQL Server服务”,确保右侧的“SQL Server”以及“SQL Server Browser”正在运行5. 选中左侧“SQL Server网络配置”下的“MSSQLSERVER的协议”,右侧的TCP/IP默认是“Disabled”,双击或右键点击选“属性”,在“协议”选项卡中将其修改为“Enabled”,在“IP Address”选项卡,设置端口“1433”6. 选中左侧“SQL Native Client 10.0配置”下的“客户端协议”,将“TCP/IP”也修改为“Enabled”7. 重新启动SQL Server 20088. 此时应该可以使用了,但还是要确认一下防火墙。
将SQLServr.exe(C:\Program Files \Microsoft SQL Server\MSSQL10.SQLEXPRESS\MSSQL\Binn\sqlservr.exe)添加到允许的列表中二、安装Oracle客户端软件可以去Oracle官网下载,比如“10201_client_win32”安装成功后,在Oracle客户端安装目录下的/network/admin/tnsnames.ora配置所要连接的服务器的相关信息,比如:TEST =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 10.1.11.90)(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME = orcl)))如果admin目录下没有“tnsnames.ora”,新建一个文本文件,改名为“tnsnames.ora”三、添加Windows的ODBC数据源1. 开始->管理工具->数据源(ODBC)有些“开始”菜单中没有放“管理工具”连接,则可以先到“控制面板”中,然后选择“性能和维护”,就可以找到“管理工具”了2. 在“用户DSN”选项卡或者“系统DSN”选项卡下,点击“添加”,选择“Microsoft ODBC f or Oracle”后点击“完成”3. 填写相关信息数据源名称、服务器名称与“tnsnames.ora”中配置的一样,其他两项可以忽略填好后,点击“确定”四、在SSMS中创建链接服务器1. 在SSMS中,展开已经连接上的某数据库引擎,依次选择服务器对象->链接服务器,在“链接服务器”上点右键,选择“新建链接服务器”2. 在“常规”选项卡上按照如下填写:“链接服务器”,随便取个名字“访问接口”和“产品名称”如上图所示,不要做任何改变,包括大小写“数据源”与“tnsnames.ora”中配置的一样,也即与“添加Windows的ODBC数据源”步骤中填写的一样“访问接口字符串”,按照图上的格式来填写,或者“ID=username;Password=userpasswd”也行,这里的username和userpasswd为登录所要连接的Oracle数据库所使用的用户名和密码;这里一定要填写,虽然在“安全性”选项卡中也会填写3. 切换到“安全性”选项卡,做如下配置填写用户名和密码,与上一步所填的用户名和密码一致点击“确定”,完成4. 查看Oracle中的数据此时,在“链接服务器”下面,会出现刚刚创建的链接服务器,展开,可以看到所有的表和视图,但是只能看到表名,不能查看字段要查询可以右键点击某表,选择:编写脚本为->Select 到->新查询编辑器窗口SQL的写法有两种a) 使用T-SQL语法:SELECT * FROM ername.表名注意:在这种方式下取数,如果在oracle中声明表的时候表明用了引号,此处的表明必须和oracle中一致,否则全部使用大写,不然会提示找不到表。
SQLSERVER链接ORACLE服务器问题
端口:1521
名称:Test_192.168.0.11
3 在SqlServer中建立连接数据库
在SqlServer企业管理器中--安全性--链接服务器--新建连接服务器
连接服务器[N]:Test
其它数据源[H]
提供程序名:Microsoft OLE DB Provider for Oracle
)
(CONNECT_DATA =
(sid = blue)
(SERVER = DEDICATED)
)
)
......
3.配置windows的ODBC数据源:
开始菜单—》设置—》管理工具—》数据源(ODBC)—》进入配置用户DSN或者系统DSN均可以:添加—》选择Microsoft ODBC for oracle—》自定义数据源名称(最好跟tns中连接串同名!)—》服务器名称(必填!填写tns文件中的连接串名称)—》完成。
4.配置sqlserver2000中的连接服务器:
企业管理器—》安全性—》连接服务器—》右键新建连接服务器—》定义连接名称; 选其他数据源; 指定程序名称为:Microsoft OLE DB Provider for Oracle; 产品名称可不填; 数据源指定刚才ODBC中定义好的数据源名称; 提供程序字符串按以下格式填写:User ID=username;Password=userpasswd(或者按如下格式:UID=username;PWD=userpasswd),这里的用户名和密码对应所要连接的oracle数据库中的用户名和密码 —》 安全性标签页里:设置用此安全上下文进行,并录入oracle的数据库用户名和密码—》服务器选项标签页可默认—》确定。
SQLServer 2008连接 Oracle 11g
SQLServer 2008连接Oracle 11g步骤:(本例中连接的Oracle 11g数据库实例名为:mydba)1,配置windows的ODBC数据源:
开始->设置->控制面板->管理工具->数据源,进入配置用户DSN或者系统DSN均可以:添加->选择:Microsoft ODBC for oracle,输入数据源名称(最好跟TNS中连接串同名)、用户名(登录Oracle 数据库的用户名)及服务器(必填,填写TNS文件中的连接串名称),如下图所示:
点击确定。
2,配置SQLServer2008中的连接服务器:
企业管理器->服务器对象->链接服务器:右击新建链接服务器,在弹出的对话框中的常规选项卡中输入相应的参数及格式如下图所示:
在安全性选项卡中输入登录Oracle数据库的用户名及密码,如下图所示:
服务器选项卡中默认,点击确定。
3.使用方法
在SQLServer企业管理器->服务器对象->链接服务器:打开刚建好的链接服务器->点击目录->default->表,展开即可在右边窗口看到该Oracle数据库用户拥有的的所有表名,但在这里还并不能查看表的记录,这个需要在SQLServer的查询分析器中用具体SQL语句来实现!
访问表时,使用格式为:[连接服务器名]..[ORACLE用户].[表名]。
必须为大写。
如下图所示:
文章出处:/zhw511006/archive/2010/04/26/1721566.html。
SQLServer连接SQLServer、SQLServer连接ORACLE链接服务器
SQLServer连接SQLServer、SQLServer连接ORACLE链接服务器夸数据库访问有很多种⽅式,其中部分⽤作接⼝访问,这⾥要介绍的是MSSQL访问另⼀台MSSQL,MSSQL访问ORACLE,其它暂不介绍。
1.MSSQL访问另⼀台MSSQL:a.展开服务器对象-->链接服务器-->右击"新建链接服务器"b.常规-->链接服务器:输⼊需要连接服务器的IP,服务器类型,选择SQL Server(Q)c.安全性-->使⽤此安全上下⽂建⽴连接:远程登录,输⼊远程数据库登录⽤户名,如sa,使⽤密码,输⼊对应的登录密码。
d.服务器选项:RPC、RPC out 设置成True.e.点击“确定”即完成SQL连接SQL,成功后可看到下图:如果想给此ip取个别名,则需要修改此表 sys.sysservers 中的 srvname 字段。
另⼀种创建的⽅式:EXEC sp_addlinkedserver@server='WXDB', --被访问的服务器别名@srvproduct='', --SqlServer默认不需要写,或ORACLE@provider='SQLOLEDB', --不同的库都是不⼀样的,OLE DB字符@datasrc='220.161.145.212'--要访问的服务器GOEXEC sp_addlinkedsrvlogin@rmtsrvname='WXDB', --被访问的服务器别名@useself='false', --固定这么写@locallogin='sa', --本地操作应户名@rmtuser='sa', --被访问的服务器⽤户名@rmtpassword='*******'--被访问的服务器⽤密码GO--//删除连接服务器EXEC sp_dropserver "WXDB"2.MSSQL访问ORACLEa.在MSSQL服务器上安装ORACLE客户端,并配置好ORACLE信息。
SQLServer创建Oracle链接服务器配置说明
金证股份•金证券商经纪业务支持系统SQLServer创建Oracle和DB2的链接服务器修改记录阅读指南目录SQLServer创建Oracle和DB2的链接服务器 (1)1.创建Oracle的链接服务器 (4)1.1 Oracle数据访问组件ODAC安装 (4)步骤1. 下载ODAC安装包 (4)步骤2. 解压缩 (5)步骤3. 安装ODAC包 (6)步骤4. 设置环境变量 (7)步骤5. 根据需要配置tnsnames.ora文件 (8)卸载ODAC的方法 (9)注意事项 (9)1.2 Oracle数据访问组件ODAC安装 (10)1.2.1. 通过图形界面创建Oracle的链接服务器 (10)1.2.2. 通过命令来创建Oracle的链接服务器 (12)1.2.3. 测试查询Oracle数据库 (12)2.创建DB2的链接服务器 (13)2.1下载安装db2oledb安装包 (13)2.2安装完成后,打开程序菜单-Microsoft OLEDB Provider for DB2 -数据访问工具。
(13)2.3使用数据访问工具新建数据源。
(13)2.4.获取连接字符串 (19)2.5.新建SQL SERVER链接服务器 (19)2.6.测试连接 (20)1.创建Oracle的链接服务器当我们同时使用SQL Server和Oracle来存储数据时,经常会用到跨库查询。
为了方便使用跨库查询,一个最好的办法就是通过创建链接服务器来实现。
既可以在SQL Server中创建Oracle的链接服务器,也可以在Oracle中创建SQL Server的链接服务器。
本文主要讲述如何在SQL Server中创建Oracle的链接服务器,可以通过图形界面和命令两种方式来创建。
1.1 Oracle数据访问组件ODAC安装Oracle数据访问组件ODAC(Oracle Data Access Components)顾名思义就是用来访问Oracle数据库的小程序。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
SQL SERVER 2005 通过链接服务器访问 ORACLE 的快速设定方法1)在SQL_SERVER 2005服务器上安装Oracle 10g的客户端。
假设安装到D:\oracle\ 目录。
如果D:是N TFS分区,需要将ORACLE安装后的目录设为所使用的用户有权可运行、可添加、可删除。
2)配置D:\oracle\product\10.2.0\client_1\NETWORK\ADMIN\tnsnames.ora 文件(手动配置)ORCL_192.168.0.163=(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST =192.168.0.163)(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME =orl)//此处的orl是HIS给的database))(NetManage工具自动生成的配置)ORCL_192.168.0.163 =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.163)(PORT = 1521)))(CONNECT_DATA =(SID = orl)//此处的orl是HIS给的database(SERVER = DEDICATED)))3)在DOS模式下运行以下命令以便确认ORA CLE客户端安装无误。
sqlplus user/password@ ORCL_192.168.0.1634)打开开始-控制面板-服务,确认Distributed Transaction Coordinator服务已启动。
5)打开SQL SERVER Management Studio,实例名称(ORCL_192.168.0.163)-服务器对象(右键)-新建连接服务器。
a)链接服务器:写上链接服务器的名字,如:OraTestb) 服务器类型,选择其他数据源c) 访问接口:选择 Microsoft OLE DB Provider for Oracled) 产品名称:写上 Oraclee) 数据源:写上tnsnames.ora 文件中配置的服务名,如:ORCL_192.168.0.163f)访问接口字符串:user id=user;password= passwordg)在选择安全性选项页,使用此安装上下文建立连接:1:远程登录:user2:使用密码:passwordh) 确定6)SQL的写法有两种a) 使用T-SQL语法:SELECT * FROM OraTest.ERP.BAS_ITEM_CLASS注意在,SQL查询分析器中输入SQL语句时注意中文的全角半角切换方式!b) 使用PLSQL语法:SELECT * FROM openquery(OraTest,'SELECT * FROM OraTest.ERP.BAS_ITEM_CLASS ')c)第二种访问方式比第一种约快50%;第二种访问方式跟直连ORACLE的速度相当;第一种访问方式可能会导致一些意外错误,如:该表不存在,或者当前用户没有访问该表的权限等等一些信息。
d)如果需要访问的column中使用没有精度的数据类型,这两种查询方式都可能会报错,这是ORACLE 的BUG,无法修正,只能通过查询语句的特殊处理规避这一问题:OLE DB 提供程序 'OraOLEDB.Oracle' 为列提供的元数据不一致。
执行时更改了元数据信息。
SQL SERVER 2000 通过链接服务器访问 ORACLE 的快速设定方法1)在SQL_SERVER 2000服务器上安装Oracle 10g的客户端。
假设安装到D:\oracle\ 目录。
如果D:是N TFS分区,需要将ORACLE安装后的目录设为所使用的用户有权可运行、可添加、可删除。
2)配置D:\oracle\product\10.2.0\client_1\NETWORK\ADMIN\tnsnames.ora 文件(手动配置)ORCL_192.168.0.163=(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST =192.168.0.163)(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME =orl)//此处的orl是HIS给的database))(NetManage工具自动生成的配置)ORCL_192.168.0.163 =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.163)(PORT = 1521)))(CONNECT_DATA =(SID = orl)//此处的orl是HIS给的database(SERVER = DEDICATED)))3)在DOS模式下运行以下命令以便确认ORA CLE客户端安装无误。
sqlplus user/password@OraLink4)打开开始-控制面板-服务,确认Distributed Transaction Coordinator服务已启动。
5)打开SQL SERVER 企业管理器,实例名称(ORCL_192.168.0.163)-服务器对象(右键)-新建连接服务器。
(如上图)a)链接服务器:写上链接服务器的名字,如:OraTestb) 服务器类型,选择其他数据源c) 访问接口:选择 Microsoft OLE DB Provider for Oracled) 产品名称:写上 Oraclee) 数据源:写上tnsnames.ora 文件中配置的服务名,如:ORCL_192.168.0.163f)访问接口字符串:user id=user;password= passwordg)在选择安全性选项页,使用此安装上下文建立连接:1:远程登录:user2:使用密码:passwordh) 确定6)SQL的写法有两种a) 使用T-SQL语法:SELECT * FROM OraTest.ERP.BAS_ITEM_CLASS注意在,SQL查询分析器中输入SQL语句时注意中文的全角半角切换方式!b) 使用PLSQL语法:SELECT * FROM openquery(OraTest,'SELECT * FROM OraTest.ERP.BAS_ITEM_CLASS ')c)第二种访问方式比第一种约快50%;第二种访问方式跟直连ORACLE的速度相当;第一种访问方式可能会导致一些意外错误,如:该表不存在,或者当前用户没有访问该表的权限等等一些信息。
d)如果需要访问的column中使用没有精度的数据类型,这两种查询方式都可能会报错,这是ORACLE 的BUG,无法修正,只能通过查询语句的特殊处理规避这一问题:OLE DB 提供程序 'OraOLEDB.Oracle' 为列提供的元数据不一致。
执行时更改了元数据信息。
使用 Oracle 透明网关从oracle 端连Sql Server 数据库一.使用 Oracle 透明网关从oracle 端连Sql Server 数据库Step1 安装oracle 透明网关Condition: 连Sql server 的网关的操作系统必须是window ,因为在网关上还必须得装一个sql sever 的客户端,用于监听sql server 服务器发来的消息。
安装透明网关组件的软件在oracle 安装盘里面,不需要另行下载。
安装方法与步骤:1.启动安装程序以后,选择安装类型为定制2.选择 oracle transparent gateways for Miscrosoft Sql Server ,然后点击下一步,装完即可。
Step 2 安装sql server 客户端(这一步不再演示)Step 3 配置透明网关与Oracle 服务器1. 修改ORACLE_HOME\tg4msql\admin下的inittg4msql.ora 文件,配置好参数其中HS_FDS_CONNECT_INFO=jysc.msdb的jisc代表sql server 的服务名,msdb是需要连接的数据库。
2 配置oracle 服务器的listener修改listener.ora 文件,添加以下参数,作用是使监听器能够监听网关发过来的信息(SID_DESC =(PROGRAM = tg4msql)(ORACLE_HOME = D:\OraHome_1)(SID_NAME = tg4msql))其中SID_NAME 可以自己取名。
3 配置网络服务名tnsnameLKSQL =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = xuchunyang)(PORT = 1521)))(CONNECT_DATA =(SID = tg4msql))(HS = OK))这里的HOST=xuchunyang ,xuchunyang 是透明网关服务器的服务器名,也可以是主机IP 地址,(SID = tg4msql) 的tg4msql不是固定名,需跟上面listener SID_NAME 一致。
一切配置都已经完毕,然后可以创建database link 去连接sql server 数据库了Step 4 创建database link连上oracle 数据库,运行下面的语句,创建database linkcreate database link LKTOSQLconnect to XuChunYang identified by garyxu0120using 'LKSQL';这里 using 'LKSQL'的LKSQL 是网络服务名,跟开始配置的tns name 一致。
现在,我们就可以使用database link 去访问sql server 数据库的数据了。
例如,运行Select * from sysobjects@LKTOSQL where rownum <10建立好链接后,使用trigger 可以使两种不同数据库之间的表数据同步。
二使用Sql Server 链接服务器从Sql server 连oracle 数据库1.要求pc机上安装oralce客户端软件和sqlserver软件。
2.客户端的配置tnsnames.ora文件,配置所要连接的数据库服务器(windows,unix等平台均可以)GARYXU =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.67)(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME = GARY)))3.配置windows的ODBC数据源:开始菜单—》设置—》管理工具—》数据源(ODBC)—》进入配置用户DSN或者系统DSN均可以:添加—》选择Microsoft ODBC for oracle ——》自定义数据源名称(最好跟tns中连接串同名!)—》服务器名称(必填!填写tns文件中的连接串名称)—》完成。