我现在要使用两台电脑,在同一个局域网里,互相访问对方的数据库,版本是SQL2000的。可以通过“新建注册”的方式,访问对方的数据库的表。
现在我想在c#程序里面自动访问,总是超时。
我在网上搜了下这个现象和解决的方法,如下:
************************
配置sql server 2000以允许远程访问
适合故障:
1. 用sql企业管理器能访问sql server 2000(因为它是采用命名管道(named pipes)方式进行方式),但用ado.net 方式(udp)不能访问.
2. 采用ado.net方式不能远程访问.
故障的可能原因有:
1.sql server 2000没有安装sql server 2000 sp3a及以上升级包,还未启用并开放1433端口(udp);
2.系统防火墙未开放1433端口.解决办法:
一.检查sql server 2000是否已启用并开放1433端口.(在sql2000服务器上)
方法:
开始-->运行-->打开-->执行 "cmd" 命令 -->执行 "netstat -na" 命令.
看是否有无
TCP 127.0.0.1:1433 0.0.0.0:0 LISTENING
TCP 192.168.123.98:1433 0.0.0.0:0 LISTENING
如果没有刚表明sql2000端口监听服务未启动.
转第三步.
如果有则转第二步二.检查sql server 2000服务器所在机器防火墙设置,sql server 2000服务器端是否启动Sql Server服务.
主要检查防火墙是否设置允许1433端口通信. 简单的方法是关闭防火墙后再试.
方法:
在客户端或本机"命令提示符"窗口运行下面命令 : telnet <sql2000服务器IP地址> 1433
如果命令执行成功,说明 SQL Server 服务器工作正常,并且正在监听1433端口的 TCP/IP 连接
如果命令返回"无法打开连接"的错误信息,则说明服务器端没有启动 SQL Server 服务,
也可能服务器端没启用 TCP/IP 协议,或者服务器端没有在 SQL Server 默认的端口1433上监听.
是否启动 SQL Server 服务或监听端口通过sql2000网络配置工具来检查.三.检查sql server 2000是否已升级到8.00.760或以上版本.
方法:
在sql查询分析器中执行:
SELECT SERVERPROPERTY('ProductLevel')
SELECT @@VERSION
SELECT SERVERPROPERTY('ProductVersion') 如果为8.00.760以下则需安装sql2000 sp3a或sql2000 sp4
*****************************开始-->运行-->打开-->执行 "cmd" 命令 -->执行 "netstat -na" 命令.
我的只有 TCP 127.0.0.1:1433 0.0.0.0:0 LISTENING
***没有这个: TCP 192.168.155.231:1433 0.0.0.0:0 LISTENING*****
按照上面的说法,只要装SP4的补丁就可以,我安装了补丁,还是看不到
TCP 192.168.155.231:1433 0.0.0.0:0 LISTENING
******************************
请教高手,我还需要做哪些修改和配置才能访问对方的数据库呢?
谢谢
现在我想在c#程序里面自动访问,总是超时。
我在网上搜了下这个现象和解决的方法,如下:
************************
配置sql server 2000以允许远程访问
适合故障:
1. 用sql企业管理器能访问sql server 2000(因为它是采用命名管道(named pipes)方式进行方式),但用ado.net 方式(udp)不能访问.
2. 采用ado.net方式不能远程访问.
故障的可能原因有:
1.sql server 2000没有安装sql server 2000 sp3a及以上升级包,还未启用并开放1433端口(udp);
2.系统防火墙未开放1433端口.解决办法:
一.检查sql server 2000是否已启用并开放1433端口.(在sql2000服务器上)
方法:
开始-->运行-->打开-->执行 "cmd" 命令 -->执行 "netstat -na" 命令.
看是否有无
TCP 127.0.0.1:1433 0.0.0.0:0 LISTENING
TCP 192.168.123.98:1433 0.0.0.0:0 LISTENING
如果没有刚表明sql2000端口监听服务未启动.
转第三步.
如果有则转第二步二.检查sql server 2000服务器所在机器防火墙设置,sql server 2000服务器端是否启动Sql Server服务.
主要检查防火墙是否设置允许1433端口通信. 简单的方法是关闭防火墙后再试.
方法:
在客户端或本机"命令提示符"窗口运行下面命令 : telnet <sql2000服务器IP地址> 1433
如果命令执行成功,说明 SQL Server 服务器工作正常,并且正在监听1433端口的 TCP/IP 连接
如果命令返回"无法打开连接"的错误信息,则说明服务器端没有启动 SQL Server 服务,
也可能服务器端没启用 TCP/IP 协议,或者服务器端没有在 SQL Server 默认的端口1433上监听.
是否启动 SQL Server 服务或监听端口通过sql2000网络配置工具来检查.三.检查sql server 2000是否已升级到8.00.760或以上版本.
方法:
在sql查询分析器中执行:
SELECT SERVERPROPERTY('ProductLevel')
SELECT @@VERSION
SELECT SERVERPROPERTY('ProductVersion') 如果为8.00.760以下则需安装sql2000 sp3a或sql2000 sp4
*****************************开始-->运行-->打开-->执行 "cmd" 命令 -->执行 "netstat -na" 命令.
我的只有 TCP 127.0.0.1:1433 0.0.0.0:0 LISTENING
***没有这个: TCP 192.168.155.231:1433 0.0.0.0:0 LISTENING*****
按照上面的说法,只要装SP4的补丁就可以,我安装了补丁,还是看不到
TCP 192.168.155.231:1433 0.0.0.0:0 LISTENING
******************************
请教高手,我还需要做哪些修改和配置才能访问对方的数据库呢?
谢谢
如何打开1433端口?本地连接--〉属性--〉TCP/IP属性--〉高级--〉选项--〉TCP/IP 筛选属性然后自己添加就可以了。--sql server 2005
如何打开sql server 2005 的1433端口配置工具-->Sql Server Configuration Manager-->MSSQLSERVER的协议看看TCP/IP协议是否启动,如果启动,右键菜单点"属性" ,在分页菜单中选"IP地址",把"IP1"和"IP2"中"TCP端口"为1433,"已启用"改为"是"配置工具-->Sql Server Configuration Manager-->SQL Native Client 配置-->客户端协议-->TCP/IP选择TCP/IP右键菜单中"属性",确认"默认端口"是1433,"已启用"为"是"
*************
我看了下,我电脑的这里设置:“TCP端口”--上面选的是“全部允许”,难道是选下面的“只允许”,然后把1433加进去?
请 dawugui
(爱新觉罗.毓华) 老大再说下,谢谢