Your Ad Here
首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 冲浪宝典 > 网络资源 > 深入WIN2000注册表 (15) SQL Server
【标  题】:深入WIN2000注册表 (15) SQL Server
【关键字】:SQL,Server,15,注册表,20,2000,SQL Server,IN,Serv,WIN,WIN2000,200,WIN2000,15,SQL
【来  源】:网络

深入WIN2000注册表 (15) SQL Server

Your Ad Here


   
SQLServer

简介

SQLServer是Microsoft向关系数据库管理系统(RelationalDatabaseManagementSystem,
RDBMS)市场推出的竞争者,与它竞争的产品包括Oracle和Informix。SQLServer运行在
WindowsNT/2000服务器以及许多其它Microsoft的操作系统上。它提供了对Transact-SQL的支
持,Transact-SQL是与RDBMS应用程序交互的工业标准SQL(StructuredQueryLanguage,结
构化查询语言)的一个分支。SQLServer具有分布式事务处理(DistributedTransactions)、数据
库复制(DatabaseReplication)等许多其它强大的功能。SQLServer得到了Microsoft的ADO和
RDO数据库访问技术的支持,同时支持开放数据库连接标准(OpenDatabaseConnectivity,
ODBC)。

SQLServer的特性

除了包含其本身的特性集之外,SQLServer还允许使用其它几种功能强大的Microsoft产
品和技术:
.使用分布式事务处理协调程序(DistributedTransactionCoordinator,DTC)进行分布式事
务处理(跨两种平台)
.数据库复制
.Web服务器连接
.记录NT事件
.多种网络协议
.支持开放数据库连接(OpenDatabaseConnectivity,ODBC)
.使用Microsoft事务处理服务器(MicrosoftTransactionServer,MTS)进行异种平台的事务
处理(使用不同的RDBMS)

ODBC

ODBC是一种允许任意开发商开发独立于数据库内部结构的应用程序的工业标准。SQL
Server完全支持ODBC,允许它与许多不同供应商的RDBMS应用程序和组件一起工作。

ADO和RDO

ActiveX数据对象(ActiveXDataObjects,ADO)和远程数据对象(RemoteDataObjects,
RDO)是Microsoft当前使用的两种主要的服务技术。因为它支持ODBC,所以SQLServer对
ADO和RDO组件和应用程序是完全可访问的。

SQLServer提供的服务

SQLServer包括几种对系统来说功能很特殊的服务,它们通常是通过企业管理器
(EnterpriseManager,如图15-1所示)访问的。SQLServer的企业管理器提供了对SQL
Executive、SQL-DMO和SQLReplication服务的访问。企业管理器本身是Microsoft管理控制台
(MMC)应用程序,可以与其它MMC程序(ComponentServices,组件服务)合并或添加到其它
MMC程序中。
1.SQLExecutive
SQLExecutive是管理连接、访问和SQLServer事件记录的服务应用程序。它必须为SQL
Server其它可用的功能而运行。
2.SQL-DMO
SQL-DMO(SQLDistributedManagementObjects)是具有企业级功能的SQLServer(实际上
是一个编程界面),它允许远程组件使用一个中央式的SQLServer数据库。SQL-DMO需要在
主机和客户机上同时安装几种额外的设备才能工作。

3.SQLReplication
SQLServer可以复制其数据库以便进行备份。SQLReplication也是由SQLExecutive控制
的。复制是一个涉及计划任务引擎、任务列表、同步化和预订的复杂过程。

 

为SQLServer的网络库配置正确的有名管道

SQLServer的Executive需要可信任的连接,实际上这通常意味着应使用有名管道(尽管NetBEUI缺乏路由能力是一个问题)。当SQLServer的并行设备放置在同一台机器上时就会出现
问题―有名管道所需要配置可能已更改或丢失。下面介绍怎样更改注册表来解决这个问题:1)打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Windows
2000的根目录(通常是WINNT)为止。进入System目录并找到Regedt32.exe,将其选入对话框
并单击“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口中。
2)选择“窗口”菜单项HKEY_LOCAL_MACHINE,其子窗口显示。最大化该窗口以便于使用。
3)使用左窗口的树型控件定位到SOFTWAREMicrosoftMSSQLServerSQLExecutive子项。单击该子项选取它,在右窗口中显示其值。
4)定位到值ServerHost的条目。使用字符串编辑器把ServerHost的值改为想使用的有名管
道。

解决SQLServer有名管道与Windows9x工作站连接速度慢的问题

SQLServer使用有名管道显得很吃力,它会因为Windows9x工作站上某个注册表设置的问题导致与该工作站之间连接的速度变慢。下面介绍怎样更改注册表来解决这个问题:
1)在Windows9x机器上运行Regedit.exe。
2)选择“窗口”菜单项HKEY_LOCAL_MACHINE,其子窗口显示。最大化该窗口以便于使用。
3)使用左窗口的树型控件定位到SYSTEMCurrentControlSetServicesVxDVNETSUP子
项。单击该子项选取它,在右窗口中显示其值。
4)创建一个名为DirectHost的新值,其类型为REG_SZ。把DirectHost设置0,这样可以关
闭该工作站的DirectHosting,并解决慢速连接的问题。

增加SQLServer可用的DB-Library连接数

SQLServer为SQLExecutive提供了固定数目的DB-Library并发连接数。如果系统能够支持更多并发连接数,系统管理员可以通过修改注册表来增加这个设置:
1)打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Windows2000的根目录(通常是WINNT)为止。进入System目录并找到Regedt32.exe,将其选入对话框
并单击“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口中。
2)选择“窗口”菜单项HKEY_LOCAL_MACHINE,其子窗口显示。最大化该窗口以便于使用。
3)使用左窗口的树型控件定位到SOFTWAREMicrosoftMSSQLServerSQLExecutive子项。单击该子项选取它,在右窗口中显示其值。
4)添加名为MaxDBProcesses,类型为REG_DWORD的新值。把MaxDBProcesses的值设
为所希望的DB-Library并发连接数。因为系统负载的原因,实际可用的数目比设置的值小3。
这项技术只对SQLServer6.5或更高的版本起作用。
提示MaxDBProcesses的缺省值为61。

防止因慢速RPC初始化而引起的SQLServer启动失败

当某台服务器的RPC(远程过程调用)服务初始化进行得很慢,而SQLServer(已配置成可使用多种协议)在RPC服务完成初始化之前就启动时,就会引起SQLServer发生故障,因为它
依赖于RPC服务。这是一个较少出现但是让人很讨厌的错误。幸运的是,对注册表进行修改可以防止出现这个问题。
1)打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Windows2000的根目录(通常是WINNT)为止。进入System目录并找到Regedt32.exe,将其选入对话框并单击
“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口中。
2)选择“窗口”菜单项HKEY_LOCAL_MACHINE,其子窗口显示。最大化该窗口以便于使用。
3)使用左窗口的树型控件定位到SYSTEMCurrentControlSetServicesMSSQLServer子项。
单击该子项选取它,在右窗口中显示其值。
4)创建名为DependOnService,类型为REG_MULTI_SZ的新值。输入字符串RpcSs作为其
设置。重新启动服务器,问题就会得到更正。

解决SQLServerExecutive服务的登录故障

SQLServer有时候会无法正确启动,这是因为Executive服务无法登录引起的。其中一个主要原因就是LocalSystemAccount和AdministratorGroup无法完全控制两个注册表项。要访
问这两个注册表可以按照下面的步骤设置注册表:
1)打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Windows2000的根目录(通常是WINNT)为止。进入System目录并找到Regedt32.exe,将其选入对话框并单击
“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口中。
2)选择“窗口”菜单项HKEY_LOCAL_MACHINE,其子窗口显示。最大化该窗口以便于使用。
3)使用左窗口的树型控件定位到SYSTEMCurrentControlSetServicesSQLExecutive子项。
单击该子项选取它,在右窗口中显示其值。
4)确保LocalSystemAccount和AdministratorGroup对该项及其子项有完全的控制权。
5)对SYSTEMCurrentControlSetServicesMSSQLServerSQLExecutive子项重复第3步、
第4步。

 

解决SQLServer全部任务失败的问题

SQLServer有几种级别的任务失败,包括部分任务执行失败和全部任务执行失败。在后一种情况下,一个经常发生的问题时注册表条目与有名管道的使用冲突。要解决这种冲突,
可以按照下面的步骤修改注册表:
1)打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Windows2000的根目录(通常是WINNT)为止。进入System目录并找到Regedt32.exe,将其选入对话框
并单击“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口中。
2)选择“窗口”菜单项HKEY_LOCAL_MACHINE,其子窗口显示。最大化该窗口以便于使用。
3)使用左窗口的树型控件定位到SOFTWAREMicrosoftMSSQLServerSQLExecutive子项。单击该子项选取它,在右窗口中显示其值。
4)定位到值ServerHost的条目。使用字符串编辑器更改其值,使它不包括服务器名称(只包括想要使用的有名管道)。

配置SQLServerExecutive写一个详细的日志文件

有时候,调试SQLExecutive是必须的。在这种情况下,按照如下步骤修改注册表可以让SQLExecutive写一个详细的日志文件:
1)打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Windows2000的根目录(通常是WINNT)为止。进入System目录并找到Regedt32.exe,将其选入对话框
并单击“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口中。
2)选择“窗口”菜单项HKEY_LOCAL_MACHINE,其子窗口显示。最大化该窗口以便于使用。
3)使用左窗口的树型控件定位到SOFTWAREMicrosoftMSSQLServerSQLExecutive子项。单击该子项选取它,在右窗口中显示其值。
4)添加一个名为VerboseFile,数据类型为REG_SZ的新值。把VerboseFile设置为想要使用
的日志文件的完整路径和文件名。停止并启动SQLExecutive,它就会在这个位置写一个详细的日志文件,直到删除这个条目为止。

解决SQLServerExecutive版本检测的故障

SQLServer的Executive服务有时候会发生的一个问题是:因为无法检测当前SQLServer的版本号而无法启动。这是注册表访问许可权引起的问题,可以通过赋予LocalSystem
Account和AdministratorGroup对CurrentVersion注册表项完全的访问权限来解决,如下所示:
1)打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Windows2000的根目录(通常是WINNT)为止。进入System目录并找到Regedt32.exe,将其选入对话框
并单击“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口中。
2)选择“窗口”菜单项HKEY_LOCAL_MACHINE,其子窗口显示。最大化该窗口以便于使用。
3)使用左窗口的树型控件定位到SYSTEMCurrentControlSetServicesSQLExecutive子项。
单击该子项选取它,在右窗口中显示其值。
4)确保LocalSystemAccount和AdministratorGroup对该项及其子项有完全的控制权。

配置SQLServer异步查询过程的超时时间

所有SQLServerDB-Library异步查询过程(AsynchronousQueryProcessing)请求都有内置的睡眠时间。在某些情况下,这可能会对性能产生负面影响。系统管理员可以通过更改注册
表来更改睡眠时间:
1)打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Windows2000的根目录(通常是WINNT)为止。进入System目录并找到Regedt32.exe,将其选入对话框
并单击“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口中。
2)选择“窗口”菜单项HKEY_LOCAL_MACHINE,其子窗口显示。最大化该窗口以便于使用。
3)使用左窗口的树型控件定位到SOFTWAREMicrosoftMSSQLServerClientDB-Lib子
项。单击该子项选取它,在右窗口中显示其值。
4)定位到值DataReadySleep的条目。使用DWord编辑器设置DataReadySleep的值为一个所
需要的较低的值。
提示值DataReadySleep值的范围是从0到1000,缺省值为250。设置值DataReady
Sleep等于0xFFFFFFFF可以完全禁止睡眠。
警告设置值DataReadySleep等于0甚至可以完全禁止异步查询过程的执行。

防止SQLServer的Web服务器连接被重设

有时候,如果SQLServer被几个客户通过TCP/IP同时请求,则会重设连接。解决这个问题的一种方法就是按照如下步骤更改注册表:
1)打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Windows2000的根目录(通常是WINNT)为止。进入System目录并找到Regedt32.exe,将其选入对话框
并单击“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口中。
2)选择“窗口”菜单项HKEY_LOCAL_MACHINE,其子窗口显示。最大化该窗口以便于使用。
3)使用左窗口的树型控件定位到SOFTWAREMicrosoftMSSQLServerMSSQLServer子
项。单击该子项选取它,在右窗口中显示其值。
4)定位到值WinsockListenBacklog的条目。使用DWord编辑器设置WinsockListenBacklog
的值为一个较高的值,直到问题不再出现为止。

提示值WinsockListenBacklog的范围是从1到0xFFFFFFFF,缺省值为100。
警告因为重设问题的本质上的原因,系统管理员可能必须不断尝试,不断出错才能为WinsockListenBacklog找到一个合适的设置解决这个问题。

配置SQLServer的复制功能

在很少的情况下,SQLServer的复制功能可能会因为注册表有关分布式数据库以及其路径的条目失效或破坏而无法工作。要检查这种问题并予以解决,系统管理员必须按照如下步
骤检查注册表:
1)打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Windows2000的根目录(通常是WINNT)为止。进入System目录并找到Regedt32.exe,将其选入对话框
并单击“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口中。
2)选择“窗口”菜单项HKEY_LOCAL_MACHINE,其子窗口显示。最大化该窗口以便于使用。
3)使用左窗口的树型控件定位到SOFTWAREMicrosoftMSSQLServerReplication子项。
单击该子项选取它,在右窗口中显示其值。
4)定位到值DistributionDB和WorkingDirectory的条目。使用字符串编辑器确保
DistributionDB和WorkingDirectory被设置为正确的值。
警告在出现故障时,只有手工编辑DistributionDB和WorkingDirectory才能避免发生不可预期的行为。

深入探讨SQL Server 2000对XML的支持:【上一篇】
深入探索MS SQL Server 2000网络连接的安全问题:【下一篇】
【相关文章】
  • 深入探讨SQL Server 2000对XML的支持
  • MD5算法的T-SQL实现(FOR SQL2000)
  • 更新sql server的联机丛书
  • 用sql语句修改数据表中字段 实现identity(100,1)的递增
  • sql日记(相关子查询,动态交叉表篇)
  • SQL Server 2000游标使用方法
  • SQL中的两个值得注意的特殊符号
  • sql server 中各个系统表的作用
  • SQL日志文件长度过大的处理方法
  • 最佳SQL基础
  • 【随机文章】
  • 鸟哥的私房菜---学习手记五
  • Missing charsets in String to FontSet conversion
  • 在Redhat9 Linux下安装汉化eclipse3.1.2的c/c++开发平台
  • 不用数据库的多用户文件自由上传投票系统(1)
  • 用Fireworks轻松制作网页交互按钮
  • clear modempool-counters
  • Delphi2006中配置Windows Mobile 5.0开发环境
  • 配置Myeclipse下的DB Browser
  • 显示IMEI码
  • 有时候觉得很近却又遥远
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 bbb软讯网络 All Rigths Reserved.