我的服务器中有 Oracle 9i 和 MS SQL Server 2017。我想将 Oracle 数据库链接到我的 MS SQL。我正在尝试将 Oracle 数据库作为链接服务器添加到 MS SQL。
答案1
您可以在 SQL Server 实例上创建 Oracle 链接服务器,以便从 SQL Server 查询 Oracle 上的数据。以下是您需要执行的步骤:
- 安装 Oracle 64 位客户端软件。您只需要安装最简单的客户端。
- 安装 64 位 Oracle Home 后,您可以继续安装适用于 64 位环境的 ODAC 驱动程序。此步骤中安装的 OraOLEDB.Oracle 驱动程序是您设置链接服务器所需的。您会在解压的 Install 文件夹中找到此安装的 setup.exe。
- 打开 SQL Server 配置管理器并重新启动 SQL Server 服务。
- 配置 OraOLEDB.Oracle 提供程序。在 SSMS(SQL Server Management Studio)对象资源管理器中,向下导航我们一直在使用的 SQL 实例树,直到您能够查看链接服务器下的提供程序列表。选择 OraOLEDB.Oracle 并右键单击。
出现提供程序选项对话框。启用“允许进程内”选项并关闭对话框。
- 创建链接服务器并添加登录名。
--创建Oracle链接服务器:
EXEC sp_addlinkedserver @server, @srvproduct, @provider, @datasrc
--例如:如果我想创建一个名为 LK_TIPS 的链接服务器到 SRVORA1 服务器上的 ORATIPS --数据库,监听默认端口 1521,我的查询将如下所示:
EXEC sp_addlinkedserver 'LK_TIPS', 'Oracle', 'OraOLEDB.Oracle', 'SRVORA1:1521/ORATIPS'
为我们刚刚创建的 LK_TIPS 链接服务器创建一个登录名,登录名为“sa”,密码设置为“password”,如下所示:
EXEC sp_addlinkedsrvlogin 'LK_TIPS', 'FALSE', 'sa', 'password'