一般性网络错误请检查网络文档

上传人:桔**** 文档编号:471009068 上传时间:2023-05-11 格式:DOC 页数:5 大小:137KB
返回 下载 相关 举报
一般性网络错误请检查网络文档_第1页
第1页 / 共5页
一般性网络错误请检查网络文档_第2页
第2页 / 共5页
一般性网络错误请检查网络文档_第3页
第3页 / 共5页
一般性网络错误请检查网络文档_第4页
第4页 / 共5页
一般性网络错误请检查网络文档_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

《一般性网络错误请检查网络文档》由会员分享,可在线阅读,更多相关《一般性网络错误请检查网络文档(5页珍藏版)》请在金锄头文库上搜索。

1、SQL codeMicrosoftODBC SQL Server DriverTCPIP Sockets 一般性网络错误。请检 查网络文档SQL Server 连接中的四个最常见错误 :一 . SQL Server 不存在或访问被拒绝 这个是最复杂的 ,错误发生的原因比较多 , 需要检查的方面也比较多 . 一般说来 , 有以下几种可能性 :1,SQL Server 名称或 IP 地址拼写有误2, 服务器端网络配置有误3, 客户端网络配置有误要解决这个问题 , 我们一般要遵循以下的步骤来一步步找出导致错误的原因 . = 首先 , 检查网络物理连接 =ping 如果 ping 不成功, 说明物理连

2、接有问题 ,这时候要检查硬件设备,如网卡,HUB,路由器等.还有一种可能是由于客户端和服务器之间安装有防火墙软件造成的 , 比如 ISA Server. 防火墙软件可能会屏蔽对 ping,telnet等的响应因此在检查连接问题的时候 , 我们要先把防火墙软件暂时关闭 , 或者打开所有被 封闭的端口 .如果 ping 成功而 ,ping 失败 则说明名字解析有问题 , 这时候要检查 DNS 服务是否正常 . 有时候客户端和服务器不在同一个局域网里面 , 这时候很可能无法直接使用服务 器名称来标识该服务器,这时候我们可以使用HOSTSt件来进行名字解析, 具体的方法是 :1. 使用记事本打开HOS

3、TSt件(一般情况下位于C:WINNTsystem32driverse tc ) .添加一条 IP 地址与服务器名称的对应记录 , 如:172.168.10.24 myserver2. 或在 SQL Server 的客户端网络实用工具里面进行配置 , 后面会有详细 说明.= 其次 , 使用 telnet 命令检查 SQL Server 服务器工作 状态 =telnet 1433如果命令执行成功 , 可以看到屏幕一闪之后光标在左上角不停闪动 , 这说明 SQ L Server 服务器工作正常 , 并且正在监听 1433 端口的 TCP/IP 连接 如果命令返回 无法打开连接 的错误信息 , 则说

4、明服务器端没有启动 SQL Server 服务,也可能服务器端没启用 TCP/IP 协议, 或者服务器端没有在 SQL Serve r 默认的端口 1433 上监听 .=接= 着, 我们要到服务器上检查服务器端的网络配置 , 检查是否启用 了命名管道 . 是否启用了 TCP/IP 协议等等 = 可以利用 SQL Server 自带的服务器网络使用工具来进行检查 .点击: 程序 - Microsoft SQL Server - 服务器网络使用工具 打开该工具后 ,在 常规 中可以看到服务器启用了哪些协议 .一般而言 , 我们启用命名管道以及 TCP/IP协议.点中 TCP/IP协议,选择 属性

5、, 我们可以来检查 SQK Server 服务默认端口的设置一般而言,我们使用 SQL Server默认的 1433端口.如果选中 隐藏服务器 , 则意味着客户端无法通过枚举服务器来看到这台服务器 , 起到了保护的作 用, 但不影响连接 .= 接下来我们要到客户端检查客户端的网络配置 = 我们同样可以利用 SQL Server 自带的客户端网络使用工具来进行检查 , 所不同的是这次是在客户端来运行这个工具 .点击: 程序 - Microsoft SQL Server - 客户端网络使用工具 打开该工具后 ,在 常规 项中,可以看到客户端启用了哪些协议 .一般而言 , 我们同样需要启用命名管道以

6、及 TCP/IP协议.点击 TCP/IP协议,选择 属性 , 可以检查客户端默认连接端口的设置 ,该端口必须与服务器一致 .单击 别名 选项卡, 还可以为服务器配置别名 . 服务器的别名是用来连接的名 称, 连接参数中的服务器是真正的服务器名称 , 两者可以相同或不同 . 别名的设置与 使用HOST文件有相似之处.通过以上几个方面的检查 , 基本上可以排除第一种错误 .二. 无法连接到服务器 ,用户 xxx 登陆失败 该错误产生的原因是由于 SQL Server 使用了 仅 Windows 的身份验证方 式,因此用户无法使用 SQL Server 的登录帐户 (如 sa )进行连接 . 解决方

7、法 如下所示 :1. 在服务器端使用企业管理器 ,并且选择 使用 Windows 身份验证 连接 上 SQL Server操作步骤 : 在企业管理器中- 右键你的服务器实例 ( 就是那个有绿色图标的 )- 编辑 SQL Server 注册属性- 选择 使用 windows 身份验证 - 选择 使用 SQL Server 身份验证 - 登录名输入 :sa, 密码输入 sa 的密码- 确定2. 设置允许 SQL Server 身份登录操作步骤 :在企业管理器中- 展开 SQL Server 组 , 鼠标右键点击 SQL Server 服务器的名称- 选择 属性 - 再选择 安全性 选项卡- 在 身

8、份验证 下, 选择 SQL Server 和 Windows .- 确定, 并重新启动 SQL Server 服务.在以上解决方法中 , 如果在第 1 步中使用 使用 Windows 身份验证 连接 SQL Server 失败 ,那就通过修改注册表来解决此问题 :1. 点击 开始 - 运行 , 输入 regedit, 回车进入注册表编辑器2. 依次展开注册表项 , 浏览到以下注册表键 :HKEY_LOCAL_MACHINESOFTWAREMicrosoftMSSQLServerMSSQLServer3. 在屏幕右方找到名称 LoginMode , 双击编辑双字节值4. 将原值从 1改为 2,点

9、击 确定 5. 关闭注册表编辑器6. 重新启动 SQL Server 服务.此时, 用户可以成功地使用 sa 在企业管理器中新建 SQL Server 注册,但是仍然无法使用Windows身份验证模式来连接SQL Server.这是因为在 SQL Server 中有两个缺省的登录帐户 : BUILTINAdministrators机器名 Administrator被删除 .要恢复这两个帐户 , 可以使用以下的方法 :1. 打开企业管理器 ,展开服务器组 , 然后展开服务器2. 展开 安全性 , 右击 登录 , 然后单击 新建登录 3. 在 名称 框中, 输入 BUILTINAdministra

10、tors4. 在 服务器角色 选项卡中 , 选择 System Administrators 5. 点击 确定 退出6. 使用同样方法添加 机器名 Administrator登录.说明:以下注册表键 :HKEY_LOCAL_MACHINESOFTWAREMicrosoftMSSQLServerMSSQLServerLoginMo de的值决定了 SQL Server 将采取何种身份验证模式 .1. 表示使用 Windows 身份验证 模式2. 表示使用混合模式 (Windows 身份验证和 SQL Server 身份验证).三 . 提示连接超时 如果遇到第三个错误 , 一般而言表示客户端已经找

11、到了这台服务器 ,并且可以进 行连接 ,不过是由于连接的时间大于允许的时间而导致出错 .这种情况一般会发生在当用户在 Internet 上运行企业管理器来注册另外一台同 样在 Internet 上的服务器 ,并且是慢速连接时 ,有可能会导致以上的超时错误 .有些情况下 ,由于局域网的网 络问题, 也会导致这样的错误 .要解决这样的错误 , 可以修改客户端的连接超时设置 . 默认情况下 , 通过企业管理器注册另外一台 SQL Server 的超时设置是 4 秒,而查询分析器是 15 秒(这也是为什么在企业管理器里发生错误的可能性比 较大的原因) .具体步骤为 :企业管理器中的设置 :1.在企业管

12、理器中 ,选择菜单上的 工具 , 再选择 选项 2.在弹出的 SQL Server 企业管理器属性 窗口中,点击 高级 选项卡3. 在 连接设置 下的 登录超时(秒) 右边的框中输入一个比较大的数字 如 20.查询分析器中的设置 : 工具 - 选项 -连接 -将登录超时设置为一个较大的数字四. 大部分机都用 Tcp/ip 才能成功,有次我发现用 Named Pipes 才可以? 这是因为在WINDOWS 200(以后的操作系统中,MS为解决SQL SERVER勺安 全问题将 TCP/IP 配置为SQLSERVE的默认连接协议,你可以在 CLIENT NETWORK UTILITY中看到 TCP

13、/IP 和 NAME PIPE的顺序。你也可以在: HKEY_LOCAL_MACHINESOFTWAREMicrosoftMSSQLServerClientSuperSocket NetLibProtocolOrder =hex(7):74,00,63,00,70,00,00,00,00,00 看到默认的协议。2. 怎么在程序中更改 Named Pipes , Tcp/ip ,其 sql 语句怎么写? 你可以在上面提到的注册表的位置修改:CLIENT端:HKEY_LOCAL_MACHINESOFTWAREMicrosoftMSSQLServerClientSuperSocket NetLibProtocolOrder =hex(7):74,00,63,00,70,00,00,00,00,00SERVE端:HKEY_LOCAL_MACHINESOFTWAREMicrosoftMSSQLServerMSSQLServerSuperS ocketNetLib P rotocolOrder =hex(7):74,00,63,00,70,00,00,00,00,00

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 工作计划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号