SQL2008和SQL2000可以跨服务器连接查询的测试实例
测试目的: SQL2008 和 SQL2000 是否可以跨服务器连接查询
-- 测试环境:
--A 虚拟机 XP ( IP : .0.0.213 )安装 SQL2000 个人版,并安装 SP4 补丁。
--Microsoft SQL Server 2000 - 8.00.2039 (Intel X86)
-- May 3 2005 23:18:38
--Copyright (c) 1988-2003 Microsoft Corporation
--Personal Edition on Windows NT 5.1 (Build 2600: Service Pack 3)
--B 虚拟机 windows2008 ( IP : .0.0.211 )安装 SQL2008 。
--Microsoft SQL Server 2008 (RTM) - 10.0.1600.22 (Intel X86)
-- Jul 9 2008 14:43:34
-- Copyright (c) 1988-2008 Microsoft Corporation
-- Enterprise Edition on Windows NT 6.0 <X86> (Build 6001: Service Pack 1)
--B 虚拟机 windows2008 ( IP : .0.0.211 )安装 SQL2000 企业版,命名实例。
--Microsoft SQL Server 2000 - 8.00.194 (Intel X86)
--Aug 6 2000 00:57:48
--Copyright (c) 1988-2000 Microsoft Corporation
--Enterprise Edition on Windows NT 6.0 (Build 6001: Service Pack 1)
-- 测试步骤:
-- (从 SQL2008 到 SQL2000 )
--=====================================================================
---- 在 B 机器( OS 2008 )上建立跨服务器连接
sp_addlinkedserver '10.0.0.213' , 'SQL Server'
-- 在 B 机器( OS 2008 )上查询连接
select server_id , name from sys . servers where right( name , 3)= '213'
--result:
server_id name
----------- ------------------------
7 10.0.0.213
( 1 行受影响 )
-- 在 B 机器( OS 2008 )上连接查询 ( 用 SA 登录,不能用 windows 身份验证 )
select top 1 OrderID , CustomerID , EmployeeID , OrderDate from [10.0.0.213] .Northwind . dbo . Orders
--result:
OrderID CustomerID EmployeeID OrderDate
----------- ---------- ----------- -----------------------
10248 VINET 5 1996- 07- 04 00: 00: 00.000
( 1 行受影响 )
--( 用 windows 身份验证登录查询会报如下错误 )
消息 18452 ,级别 14 ,状态 1 ,第 0 行
用户 '(null)' 登录失败 。原因 : 未与信任 SQL Server 连接相关联 。
-- (从 SQL2000 到 SQL2008 )
--=====================================================================
-- 在 A 机器( OS XP )上建立跨服务器连接
sp_addlinkedserver '10.0.0.211' , 'SQL Server'
(所影响的行数为 1 行 )
(所影响的行数为 1 行 )
-- 在 A 机器( OS XP )上查询连接
select * from sysservers
1249 10.0.0.211 SQL Server
-- 在 A 机器( OS XP )上连接查询 ( 用 SA 登录,不能用 windows 身份验证 )
select top 1 * from [10.0.0.211] . AdventureWorks2008 . dbo . AWBuildVersion
--result:
1 10.00.80404.00 2008- 04- 04 00: 00: 00.000 2008- 04- 04 00: 00: 00.000
--( 用 windows 身份验证登录查询会报如下错误 )
服务器 : 消息 7411 ,级别 16 ,状态 1 ,行 1
服务器 '10.0.0.211' 没有为 DATA ACCESS 的目的而配置 。
-- (从 SQL2000 个人版到 SQL2000 企业版命名实例)
--=====================================================================
-- 在 A 机器( OS XP )上建立跨服务器连接
sp_addlinkedserver '10.0.0.211/SQL2k' , 'SQL Server'
(所影响的行数为 1 行 )
(所影响的行数为 1 行 )
-- 在 A 机器( OS XP )上查询连接
select * from sysservers
1249 10.0.0.211 SQL Server
1249 10.0.0.211/SQL2k SQL Server -- 新增命名实例
-- 在 A 机器( OS XP )上连接查询
select top 1 * from [10.0.0.211/SQL2k] . Northwind . dbo . Orders
--result :
服务器 : 消息 17 ,级别 16 ,状态 1 ,行 1
SQL Server 不存在或拒绝访问 。
-- 原因为 B 虚拟机 windows2008 ( IP : .0.0.211 )安装 SQL2000 企业版,未安装 SP4 补丁。
-- 下载 SQL2000SP4
http: // download . microsoft . com / download / 9/ b / f / 9bff6646 - 2cdb - 4069- ada0 -548be9cb9338 / SQL2000 - KB884525 - SP4 - x86 - CHS . EXE
在 Windows2008 中安装 SQL2K SP4 补丁提示程序与系统不兼容 。
-- (从 SQL2000 企业版命名实例到 SQL2000 个人版)
--=====================================================================
-- 在 B 机器( OS 2008 )上建立跨服务器连接
sp_addlinkedserver '10.0.0.213' , 'SQL Server'
(所影响的行数为 1 行 )
(所影响的行数为 1 行 )
-- 在 B 机器( OS 2008 )上查询连接
select * from sysservers
1249 10.0.0.213 SQL Server
-- 用 windows 身份验证登录查询(提示错误如下)
select top 1 * from [10.0.0.213] . Northwind . dbo . Orders
服务器 : 消息 18452 ,级别 14 ,状态 1 ,行 1
用户 '(null)' 登录失败 。原因 : 未与信任 SQL Server 连接相关联 。
-- 用 sa 身份验证登录查询(但 SA 密码不相同时提示错误如下)
select top 1 * from [10.0.0.213] . Northwind . dbo . Orders
服务器 : 消息 18456 ,级别 14 ,状态 1 ,行 1
用户 'sa' 登录失败 。
--> 此时修改 B 虚拟机中的 SQL2000 企业版的 SA 密码与 A 虚拟机中 SQL2000 的 SA 密码一致。
-- 用 sa 身份验证登录查询,结果显示正常。
select top 1 * from [10.0.0.213] . Northwind . dbo . Orders
--result :
10248 VINET 5 1996- 07- 04 00: 00: 00.000 1996- 08- 01 00: 00: 00.000 1996- 07-16 00: 00: 00.000 3 32.3800 Vins et alcools Chevalier 59 rue de l 'Abbaye Reims NULL 51100 France'
总结 : SQL2008 和 SQL2000 可以跨服务器进行连接查询。 所有数据库的远程连接 dbo 的方式必须建立在 SA 密码相同的基础上 ,否则容易产生无法连接的情况 。
以上文档用实例测试了 windows2008 系统中 SQL2008 企业版和 XP 系统中 SQL2000 的跨服务器连接查询 。
关于 SQL2005 的跨服务器远程连接查询 ,详见 http: // blog . csdn . net / claro / archive / 2009/ 07/03/ 4317900.aspx
转自:http://blog.csdn.net/claro/article/details/5710808
SQL2008和SQL2000可以跨服务器连接查询的测试实例的更多相关文章
- 问题:sqlserver 跨服务器连接;结果:Sql Server 跨服务器连接
Sql Server 跨服务器连接 用openrowset连接远程SQL或插入数据 --如果只是临时访问,可以直接用openrowset --查询示例 select * from openrowset ...
- Sql Server 跨服务器连接
用openrowset连接远程SQL或插入数据 --如果只是临时访问,可以直接用openrowset --查询示例 select * from openrowset('SQLOLEDB', 'sql服 ...
- T-SQL——关于跨库连接查询
目录 0. 同一台服务器不同数据库 1. 使用跨库查询函数--OpenDataSource() 2. 使用链接服务器(Linking Server) 3. 使用OpenDataSource()函数和链 ...
- oracle跨库连接查询
一.授权(本地客户器端授权当前用户) grant create database link to szfile 第一种连接方法:配置本地数据库服务器的tnsnames.ora文件 SZFILE = ( ...
- MSSQLSERVER跨服务器连接(远程登录)的示例代码
MSSQLSERVER跨服务器链接服务器创建方法如下 复制代码 代码如下: --声明变量 Declare @svrname varchar(255), @dbname varchar(255), @s ...
- 010.简单查询、分组统计查询、多表连接查询(sql实例)
-------------------------------------day3------------ --添加多行数据:------INSERT [INTO] 表名 [(列的列表)] --SEL ...
- SQL多表连接查询(详细实例)
转载博客:joeleo博客(http://www.xker.com/page/e2012/0708/117368.html) 本文主要列举两张和三张表来讲述多表连接查询. 新建两张表: 表1:stud ...
- SQL多表连接查询(详细实例)(转)
http://www.xker.com/page/e2012/0708/117368.html select * from student,course where student.ID=course ...
- SQL多表连接查询(具体实例)
本文主要列举两张和三张表来讲述多表连接查询. 新建两张表: 表1:student 截图例如以下: 表2:course 截图例如以下: (此时这样建表仅仅是为了演示连接SQL语句.当然实际开发中我们 ...
随机推荐
- CSS3 calc() 会计算的属性
calc是英文单词calculate(计算)的缩写,是css3的一个新增的功能,你可以使用calc()给元素的border.margin.pading.font-size和width等属性设置动态值. ...
- python面向对象编程实例解析
1. 类和函数 面向对象编程的例子: #!/usr/bin/env python # -*- coding: utf-8 -*- class Person(object): #在属性和变量的前面增加“ ...
- 【2011 Greater New York Regional 】Problem B The Rascal Triangle
一个简单的规律题,每一列都是一个等差数列: 代码: #include<cstdio> #define ll long long using namespace std; int main( ...
- IronPython脚本调用C#dll示例
上篇Python脚本调用C#代码数据交互示例(hello world)介绍了与C#紧密结合的示例,这里还将提供一个与C#结合更紧密的示例,直接调用C#编写的DLL. 我们还是沿用了上篇文章的 ...
- QLGame 2d Engine Android端环境搭建(通过jni读取assets目录的文件)
QLGame 2d Engine win端已经实现了一个动物的动画了,初步的东西已经完成,考虑在Android端也实现这些基本的东西,这样跨平台的引擎也就实现了! 要在Android下编程,首先要实现 ...
- 如何使用 Cloud Insight SDK 实现 Druid 监控?
Druid 简介与用途 首先说明,这里所说的 Druid 并不是阿里巴巴的数据库连接池项目,而是 Eric Tschetter 创立的一个开源的分布式实时处理系统,希望为烧钱的大数据处理,提供一种更廉 ...
- draw9patch超详细教程
这篇文章是android开发人员的必备知识,内容摘选自网络,友我为大家整理和总结,不求完美,但是有用. 视频教程地址:http://player.youku.com/player.php/sid/XM ...
- Seattle(65) lypzxy的博客
http://www.cnblogs.com/cb168/tag/Firemonkey/
- 开发的时候,一定要及时控制CPU使用率以及使用内存大小等三个问题(一个星期检查一次)
一直专注于功能的开发,没注意CPU和内存.昨天无意中发现两个问题: 1. 程序启动后,什么都没干,CPU就50%了(单核).现在想找原因降低使用率,感觉无从下手,要是平时就注意这个问题就好了. 2. ...
- 'dependencies.dependency.(groupId:artifactId:type:classifier)' must be unique
2016-10-09 23:14:43.177 DEBUG [restartedMain][org.springframework.core.type.classreading.AnnotationA ...