热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

使用MSSQL7的LINKEDSERVER

如果要将SQL7同SQL6.5联接应该怎么?或者用SQL7同ORACLE或SYSBASE联接应该怎么办呢?这就需要用到LINKEDSERVER。今天先说

如果要将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上测试成功。
  
  在Enterprise Manager中,设置时有以下三部分:
  
  一、服务器名和服务器类型
  二、服务器的服务器选项
  三、安全
  
  在用存储设置时也分这三部分
  
  步骤:
  
  一、添加服务器
  使用 sp_addlinkedserver 过程,所要使用的参数如下:
  @server “LINKED SERVER”
  @srvproduct “Product name”
  @provider “Provider”
  @datasrc “Data source”
  二、设置服务器选项
  使用 sp_serveroption 过程,所要使用的参数如下:
  @server “Linked server”
  @optname “RPC”或“RPC OUT”
  @optvalue True 或 False
  三、添加Login
  使用 sp_addlinkedsrvlogin 过程,所要使用的参数如下:
  @rmtsrvname “Linked server”
  @useself True 或 False
  @locallogin 本地LOGIN
  @rmtuser 远程用户
  @rmtpassword 远程用户口令
  
  应用实例代码
  
  exec sp_addlinkedserver 'Oracleserver','Oracle','MSDAORA','Oracleserver'
  exec sp_serveroption 'Oracleserver','rpc.out','True'
  exec sp_serveroption 'Oracleserver','rpc','True'
  exec sp_addlinkedsrvlogin 'Oracleserver','False',null,'sa',''
  
  因小弟英文水平有限,借助词霸虽说可以看懂前面几个过程的帮助,但翻译不出来,只好把自己当时设置时的源代码
  放上来,不求能全部说明白,只要大家借助这段码能够少走冤路也就达到目的了。
  
  上述代码在UNIX+ORACLE7和NT4+SP5+SQL7上测试成功。
  
  前两篇说的是联接ORACLE的方法,我还试过用ODBC的方法。
  
  方法:
  
  一、先建一个系统DSN,我试的只能是系统DSN
  二、再用前两的方法添加LINKED SERVER
  三、然后就可以正常使用了,但我试的发现这种方法不太稳定。
  另需说明的是:
  在第二步中Provider应为MSDASQL
  用ENTERPRISE MANAGER的话Provider name应
  选择“Microsoft OLE DB Provider for ODBC”
  
  在UNIX+ORACLE7和NT4+SP5+SQL7上测试成功
  
  我还设过SQL7同SYSBASE的联接,不过令人感到奇怪的是SQL7的客户可以直接指向SYSBASE服务器。
  
  方法:
  
  一、在本地服务器上安装SYSBASE的客户端并设好,可联上服务器
  二、打开SQL7的CLIENT NETWORK UTILITY,添加服务器,地址直接
  指向SYSBASE服务器的IP地址,端口号和SYSBASE的客户端的设置相同
  三、添加LINKED SERVER时和添加MSSQL的方法相同
  
  在UNIX+SYSBASE和NT4+SP5+SQL7上测试成功
  在UNIX+SYSBASE和WIN98+SQL7上测试成功
  
  在SQL7访问SQL6.5的方法最简单,只需在CLIENT NETWORK UTILITY中设上6.5服务器的联接即可。
  但有一点是,这样联接只能在QUERY ANALYZER中使用,却不能在ENTERPRISE MANAGER中进行管理。
  
  关于REMOTE SERVER和LINKED SERVER的问题就说到这儿了,要是再说下去的话就会有人说我这是“什么什么的裹脚布,又臭又长了”。
本文作者:

推荐阅读
  • MySQL入门_MySQL入门篇!聊聊数据库与MySQL的相关概念
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了MySQL入门篇!聊聊数据库与MySQL的相关概念相关的知识,希望对你有一定的参考价值。 ... [详细]
  • 本文介绍了Windows Vista操作系统中的用户账户保护功能,该功能是为了增强系统的安全性而设计的。通过对Vista测试版的体验,可以看到系统在安全性方面的进步。该功能的引入,为用户的账户安全提供了更好的保障。 ... [详细]
  • Jboss的EJB部署描述符standardjaws.xml配置步骤详解
    本文详细介绍了Jboss的EJB部署描述符standardjaws.xml的配置步骤,包括映射CMP实体EJB、数据源连接池的获取以及数据库配置等内容。 ... [详细]
  • 安装oracle软件1创建用户组、用户和目录bjdb节点下:[rootnode1]#groupadd-g200oinstall[rootnode1]#groupad ... [详细]
  • 一、新建登录名1.在登录名右侧的文本框中输入新建的管理员账号名称;2.一对单选按钮组中,选择SqlServer身份验证,并输入登录密码;3.勾选强制实施密码策略复选框;(密码策略一 ... [详细]
  • MFC程序连接MySQL成功实现查询功能,但无法实现修改操作——详解查询语句在MySQL中的使用过程
    selectxxx,xxx,xxxfromxxxwherexxxxxx,xxxxxx程序的日常开发中,我们经常会写到各种各样的简单的,复杂的查询sql语 ... [详细]
  • 语法:CREATE[索引类型]INDEX索引名称ON表名(列名)WITHFILLFACTOR填充因子值0~100GOUSE库名GOIFEXISTS(SELECT*FR ... [详细]
  • Qt提供了QtSql模块来提供平台独立的基于SQL的数据库操作。这里我们所说的“平台独立”,既包括操作系统平台,有包括各个数据库平台。另外, ... [详细]
  • 如何部署Zabbix监控实现监测和报警机制
    这篇文章的知识点包括:Zabbix的安装部署、Zabbix监控的实现以及Zabbix报警机制的实现,阅读完整文相信大家对Zabbix监控的使用有了一定的认识。Zabb ... [详细]
  • Java序列化对象传给PHP的方法及原理解析
    本文介绍了Java序列化对象传给PHP的方法及原理,包括Java对象传递的方式、序列化的方式、PHP中的序列化用法介绍、Java是否能反序列化PHP的数据、Java序列化的原理以及解决Java序列化中的问题。同时还解释了序列化的概念和作用,以及代码执行序列化所需要的权限。最后指出,序列化会将对象实例的所有字段都进行序列化,使得数据能够被表示为实例的序列化数据,但只有能够解释该格式的代码才能够确定数据的内容。 ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • 本文介绍了Windows操作系统的版本及其特点,包括Windows 7系统的6个版本:Starter、Home Basic、Home Premium、Professional、Enterprise、Ultimate。Windows操作系统是微软公司研发的一套操作系统,具有人机操作性优异、支持的应用软件较多、对硬件支持良好等优点。Windows 7 Starter是功能最少的版本,缺乏Aero特效功能,没有64位支持,最初设计不能同时运行三个以上应用程序。 ... [详细]
  • RouterOS 5.16软路由安装图解教程
    本文介绍了如何安装RouterOS 5.16软路由系统,包括系统要求、安装步骤和登录方式。同时提供了详细的图解教程,方便读者进行操作。 ... [详细]
  • 微信商户扫码支付 java开发 [从零开发]
    这个教程可以用作了解扫码支付的整体运行过程,已经实现了前端扫码,记录订单,回调等一套完整的微信扫码支付。相关链接:微信支 ... [详细]
  • 在单位的一台4cpu的服务器上部署了esxserver,挂载了6个虚拟机,目前运行正常。在安装部署过程中,得到了cnvz.net论坛精华区 ... [详细]
author-avatar
諾言DJ_791
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有