深入 WIN2000注册表 (15) SQL Server

2024-01-18 03:08

本文主要是介绍深入 WIN2000注册表 (15) SQL Server,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!


  SQL Server

简介

SQL Server是M i c r o s o f t向关系数据库管理系统(Relational Database Management System,
R D B M S )市场推出的竞争者,与它竞争的产品包括O r a c l e和I n f o r m i x。SQL Server运行在
Windows NT/2000服务器以及许多其它M i c r o s o f t的操作系统上。它提供了对Tr a n s a c t - S Q L的支
持,Tr a n s a c t - S Q L是与R D B M S应用程序交互的工业标准SQL(Structured Query Language,结
构化查询语言)的一个分支。SQL Server具有分布式事务处理(Distributed Tr a n s a c t i o n s )、数据
库复制(Database Replication)等许多其它强大的功能。SQL Server得到了M i c r o s o f t的A D O和
R D O数据库访问技术的支持,同时支持开放数据库连接标准(Open Database Connectivity,
O D B C )。


SQL Server的特性

除了包含其本身的特性集之外, SQL Server还允许使用其它几种功能强大的M i c r o s o f t产
品和技术:
. 使用分布式事务处理协调程序(Distributed Transaction Coordinator,D T C )进行分布式事
务处理(跨两种平台)
. 数据库复制
. We b服务器连接
. 记录N T事件
. 多种网络协议
. 支持开放数据库连接(Open Database Connectivity,O D B C )
. 使用M i c r o s o f t事务处理服务器(Microsoft Transaction Server,M T S )进行异种平台的事务
处理(使用不同的R D B M S )

ODBC

O D B C是一种允许任意开发商开发独立于数据库内部结构的应用程序的工业标准。S Q L
S e r v e r完全支持O D B C,允许它与许多不同供应商的R D B M S应用程序和组件一起工作。


ADO和RDO

A c t i v e X数据对象(ActiveX Data Objects,A D O )和远程数据对象(Remote Data Objects ,
R D O )是M i c r o s o f t当前使用的两种主要的服务技术。因为它支持O D B C,所以SQL Server对
A D O和R D O组件和应用程序是完全可访问的。


SQL Server提供的服务

SQL Server 包括几种对系统来说功能很特殊的服务,它们通常是通过企业管理器
(Enterprise Manager ,如图1 5 - 1所示)访问的。SQL Server 的企业管理器提供了对S Q L
E x e c u t i v e、S Q L - D M O和SQL Replication服务的访问。企业管理器本身是M i c r o s o f t管理控制台
( M M C )应用程序,可以与其它M M C程序(Component Services,组件服务)合并或添加到其它
M M C程序中。
1. SQL Executive
SQL Executive是管理连接、访问和SQL Server事件记录的服务应用程序。它必须为S Q L
S e r v e r其它可用的功能而运行。
2. SQL-DMO
SQL-DMO(SQL Distributed Management Objects)是具有企业级功能的SQL Server(实际上
是一个编程界面),它允许远程组件使用一个中央式的SQL Server数据库。S Q L - D M O需要在
主机和客户机上同时安装几种额外的设备才能工作。

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

 

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

SQL Server的E x e c u t i v e需要可信任的连接,实际上这通常意味着应使用有名管道(尽管N e t B E U I缺乏路由能力是一个问题)。当SQL Server的并行设备放置在同一台机器上时就会出现
问题—有名管道所需要配置可能已更改或丢失。下面介绍怎样更改注册表来解决这个问题:1) 打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Wi n d o w s
2 0 0 0的根目录(通常是W I N N T )为止。进入S y s t e m目录并找到R e g e d t 3 2 . e x e,将其选入对话框
并单击“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口中。
2) 选择“窗口”菜单项H K E Y _ L O C A L _ M A C H I N E,其子窗口显示。最大化该窗口以便于使用。
3) 使用左窗口的树型控件定位到S O F T WARE/Microsoft/MSSQLServer/SQL Executive子项。单击该子项选取它,在右窗口中显示其值。
4) 定位到值S e r v e r H o s t的条目。使用字符串编辑器把S e r v e r H o s t的值改为想使用的有名管
道。


解决SQL Server有名管道与Windows 9x工作站连接速度慢的问题

SQL Server使用有名管道显得很吃力,它会因为Windows 9x工作站上某个注册表设置的问题导致与该工作站之间连接的速度变慢。下面介绍怎样更改注册表来解决这个问题:
1) 在Windows 9x机器上运行R e g e d i t . e x e。
2) 选择“窗口”菜单项H K E Y _ L O C A L _ M A C H I N E,其子窗口显示。最大化该窗口以便于使用。
3) 使用左窗口的树型控件定位到S Y S T E M / C u r r e n t C o n t r o l S e t / S e r v i c e s / V x D / V N E T S U P子
项。单击该子项选取它,在右窗口中显示其值。
4) 创建一个名为D i r e c t H o s t的新值,其类型为R E G _ S Z。把D i r e c t H o s t设置0,这样可以关
闭该工作站的Direct Hosting,并解决慢速连接的问题。


增加SQL Server可用的DB-Library连接数

SQL Server为SQL Executive提供了固定数目的D B - L i b r a r y并发连接数。如果系统能够支持更多并发连接数,系统管理员可以通过修改注册表来增加这个设置:
1) 打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Wi n d o w s2 0 0 0的根目录(通常是W I N N T )为止。进入S y s t e m目录并找到R e g e d t 3 2 . e x e,将其选入对话框
并单击“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口中。
2) 选择“窗口”菜单项H K E Y _ L O C A L _ M A C H I N E,其子窗口显示。最大化该窗口以便于使用。
3) 使用左窗口的树型控件定位到S O F T WARE/Microsoft/MSSQLServer/SQL Executive子项。单击该子项选取它,在右窗口中显示其值。
4) 添加名为M a x D B P r o c e s s e s,类型为R E G _ D W O R D的新值。把M a x D B P r o c e s s e s的值设
为所希望的D B - L i b r a r y并发连接数。因为系统负载的原因,实际可用的数目比设置的值小3。
这项技术只对SQL Server 6.5或更高的版本起作用。
提示M a x D B P r o c e s s e s的缺省值为6 1。


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

当某台服务器的R P C (远程过程调用)服务初始化进行得很慢,而SQL Server(已配置成可使用多种协议)在R P C服务完成初始化之前就启动时,就会引起SQL Server发生故障,因为它
依赖于R P C服务。这是一个较少出现但是让人很讨厌的错误。幸运的是,对注册表进行修改可以防止出现这个问题。
1) 打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Windows 2000的根目录(通常是W I N N T )为止。进入S y s t e m目录并找到R e g e d t 3 2 . e x e,将其选入对话框并单击
“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口中。
2) 选择“窗口”菜单项H K E Y _ L O C A L _ M A C H I N E,其子窗口显示。最大化该窗口以便于使用。
3) 使用左窗口的树型控件定位到S Y S T E M / C u r r e n t C o n t r o l S e t / S e r v i c e s / M S S Q L S e r v e r子项。
单击该子项选取它,在右窗口中显示其值。
4) 创建名为D e p e n d O n S e r v i c e,类型为R E G _ M U LT I _ S Z的新值。输入字符串R p c S s作为其
设置。重新启动服务器,问题就会得到更正。


解决SQL Server Executive服务的登录故障

SQL Server有时候会无法正确启动,这是因为E x e c u t i v e服务无法登录引起的。其中一个主要原因就是Local System Account和Administrator Group无法完全控制两个注册表项。要访
问这两个注册表可以按照下面的步骤设置注册表:
1) 打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Windows 2000的根目录(通常是W I N N T )为止。进入S y s t e m目录并找到R e g e d t 3 2 . e x e,将其选入对话框并单击
“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口中。
2) 选择“窗口”菜单项H K E Y _ L O C A L _ M A C H I N E,其子窗口显示。最大化该窗口以便于使用。
3) 使用左窗口的树型控件定位到S Y S T E M / C u r r e n t C o n t r o l S e t / S e r v i c e s / S Q L E x e c u t i v e子项。
单击该子项选取它,在右窗口中显示其值。
4) 确保Local System Account和Administrator Group对该项及其子项有完全的控制权。
5) 对S Y S T E M / C u r r e n t C o n t r o l S e t / S e r v i c e s / M S S Q L S e r v e r / S Q L E x e c u t i v e子项重复第3步、
第4步。

 

解决SQL Server全部任务失败的问题

SQL Server有几种级别的任务失败,包括部分任务执行失败和全部任务执行失败。在后一种情况下,一个经常发生的问题时注册表条目与有名管道的使用冲突。要解决这种冲突,
可以按照下面的步骤修改注册表:
1) 打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Wi n d o w s2 0 0 0的根目录(通常是W I N N T )为止。进入S y s t e m目录并找到R e g e d t 3 2 . e x e,将其选入对话框
并单击“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口中。
2) 选择“窗口”菜单项H K E Y _ L O C A L _ M A C H I N E,其子窗口显示。最大化该窗口以便于使用。
3) 使用左窗口的树型控件定位到S O F T WARE/Microsoft/MSSQLServer/SQL Executive子项。单击该子项选取它,在右窗口中显示其值。
4) 定位到值S e r v e r H o s t的条目。使用字符串编辑器更改其值,使它不包括服务器名称(只包括想要使用的有名管道)。


配置SQL Server Executive写一个详细的日志文件

有时候,调试SQL Executive是必须的。在这种情况下,按照如下步骤修改注册表可以让SQL Executive写一个详细的日志文件:
1) 打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Wi n d o w s2 0 0 0的根目录(通常是W I N N T )为止。进入S y s t e m目录并找到R e g e d t 3 2 . e x e,将其选入对话框
并单击“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口中。
2) 选择“窗口”菜单项H K E Y _ L O C A L _ M A C H I N E,其子窗口显示。最大化该窗口以便于使用。
3) 使用左窗口的树型控件定位到S O F T WARE/Microsoft/MSSQLServer/SQL Executive子项。单击该子项选取它,在右窗口中显示其值。
4) 添加一个名为Ve r b o s e F i l e,数据类型为R E G _ S Z的新值。把Ve r b o s e F i l e设置为想要使用
的日志文件的完整路径和文件名。停止并启动SQL Executive,它就会在这个位置写一个详细的日志文件,直到删除这个条目为止。


解决SQL Server Executive版本检测的故障

SQL Server的E x e c u t i v e服务有时候会发生的一个问题是:因为无法检测当前SQL Server的版本号而无法启动。这是注册表访问许可权引起的问题,可以通过赋予Local System
A c c o u n t和Administrator Group对Current Ve r s i o n注册表项完全的访问权限来解决,如下所示:
1) 打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Wi n d o w s2 0 0 0的根目录(通常是W I N N T )为止。进入S y s t e m目录并找到R e g e d t 3 2 . e x e,将其选入对话框
并单击“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口中。
2) 选择“窗口”菜单项H K E Y _ L O C A L _ M A C H I N E,其子窗口显示。最大化该窗口以便于使用。
3) 使用左窗口的树型控件定位到S Y S T E M / C u r r e n t C o n t r o l S e t / S e r v i c e s / S Q L E x e c u t i v e子项。
单击该子项选取它,在右窗口中显示其值。
4) 确保Local System Account和Administrator Group对该项及其子项有完全的控制权。


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

所有SQL Server DB-Library异步查询过程(Asynchronous Query Processing)请求都有内置的睡眠时间。在某些情况下,这可能会对性能产生负面影响。系统管理员可以通过更改注册
表来更改睡眠时间:
1) 打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Wi n d o w s2 0 0 0的根目录(通常是W I N N T )为止。进入S y s t e m目录并找到R e g e d t 3 2 . e x e,将其选入对话框
并单击“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口中。
2) 选择“窗口”菜单项H K E Y _ L O C A L _ M A C H I N E,其子窗口显示。最大化该窗口以便于使用。
3) 使用左窗口的树型控件定位到S O F T WA R E / M i c r o s o f t / M S S Q L S e r v e r / C l i e n t / D B - L i b子
项。单击该子项选取它,在右窗口中显示其值。
4) 定位到值D a t a R e a d y S l e e p的条目。使用D Wo r d编辑器设置D a t a R e a d y S l e e p的值为一个所
需要的较低的值。
提示值D a t a R e a d y S l e e p值的范围是从0到1 0 0 0,缺省值为2 5 0。设置值D a t a R e a d y
S l e e p等于0 x F F F F F F F F可以完全禁止睡眠。
警告设置值D a t a R e a d y S l e e p等于0甚至可以完全禁止异步查询过程的执行。


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

有时候,如果SQL Server被几个客户通过T C P / I P同时请求,则会重设连接。解决这个问题的一种方法就是按照如下步骤更改注册表:
1) 打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Wi n d o w s2 0 0 0的根目录(通常是W I N N T )为止。进入S y s t e m目录并找到R e g e d t 3 2 . e x e,将其选入对话框
并单击“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口中。
2) 选择“窗口”菜单项H K E Y _ L O C A L _ M A C H I N E,其子窗口显示。最大化该窗口以便于使用。
3) 使用左窗口的树型控件定位到S O F T WA R E / M i c r o s o f t / M S S Q L S e r v e r / M S S Q L S e r v e r子
项。单击该子项选取它,在右窗口中显示其值。
4) 定位到值Wi n s o c k L i s t e n B a c k l o g的条目。使用D Wo r d编辑器设置Wi n s o c k L i s t e n B a c k l o g
的值为一个较高的值,直到问题不再出现为止。

提示值Wi n s o c k L i s t e n B a c k l o g的范围是从1到0 x F F F F F F F F,缺省值为1 0 0。
警告因为重设问题的本质上的原因,系统管理员可能必须不断尝试,不断出错才能为Wi n s o c k L i s t e n B a c k l o g找到一个合适的设置解决这个问题。


配置SQL Server的复制功能

在很少的情况下, SQL Server的复制功能可能会因为注册表有关分布式数据库以及其路径的条目失效或破坏而无法工作。要检查这种问题并予以解决,系统管理员必须按照如下步
骤检查注册表:
1) 打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Wi n d o w s2 0 0 0的根目录(通常是W I N N T )为止。进入S y s t e m目录并找到R e g e d t 3 2 . e x e,将其选入对话框
并单击“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口中。
2) 选择“窗口”菜单项H K E Y _ L O C A L _ M A C H I N E,其子窗口显示。最大化该窗口以便于使用。
3) 使用左窗口的树型控件定位到S O F T WA R E / M i c r o s o f t / M S S Q L S e r v e r / R e p l i c a t i o n子项。
单击该子项选取它,在右窗口中显示其值。
4) 定位到值D i s t r i b u t i o n D B和Wo r k i n g D i r e c t o r y的条目。使用字符串编辑器确保
D i s t r i b u t i o n D B和Wo r k i n g D i r e c t o r y被设置为正确的值。
警告在出现故障时,只有手工编辑D i s t r i b u t i o n D B和Wo r k i n g D i r e c t o r y才能避免发生
不可预期的行为。




这篇关于深入 WIN2000注册表 (15) SQL Server的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/617925

相关文章

Ubuntu中远程连接Mysql数据库的详细图文教程

《Ubuntu中远程连接Mysql数据库的详细图文教程》Ubuntu是一个以桌面应用为主的Linux发行版操作系统,这篇文章主要为大家详细介绍了Ubuntu中远程连接Mysql数据库的详细图文教程,有... 目录1、版本2、检查有没有mysql2.1 查询是否安装了Mysql包2.2 查看Mysql版本2.

基于SpringBoot+Mybatis实现Mysql分表

《基于SpringBoot+Mybatis实现Mysql分表》这篇文章主要为大家详细介绍了基于SpringBoot+Mybatis实现Mysql分表的相关知识,文中的示例代码讲解详细,感兴趣的小伙伴可... 目录基本思路定义注解创建ThreadLocal创建拦截器业务处理基本思路1.根据创建时间字段按年进

Python3.6连接MySQL的详细步骤

《Python3.6连接MySQL的详细步骤》在现代Web开发和数据处理中,Python与数据库的交互是必不可少的一部分,MySQL作为最流行的开源关系型数据库管理系统之一,与Python的结合可以实... 目录环境准备安装python 3.6安装mysql安装pymysql库连接到MySQL建立连接执行S

MySQL双主搭建+keepalived高可用的实现

《MySQL双主搭建+keepalived高可用的实现》本文主要介绍了MySQL双主搭建+keepalived高可用的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,... 目录一、测试环境准备二、主从搭建1.创建复制用户2.创建复制关系3.开启复制,确认复制是否成功4.同

Java并发编程必备之Synchronized关键字深入解析

《Java并发编程必备之Synchronized关键字深入解析》本文我们深入探索了Java中的Synchronized关键字,包括其互斥性和可重入性的特性,文章详细介绍了Synchronized的三种... 目录一、前言二、Synchronized关键字2.1 Synchronized的特性1. 互斥2.

MyBatis 动态 SQL 优化之标签的实战与技巧(常见用法)

《MyBatis动态SQL优化之标签的实战与技巧(常见用法)》本文通过详细的示例和实际应用场景,介绍了如何有效利用这些标签来优化MyBatis配置,提升开发效率,确保SQL的高效执行和安全性,感... 目录动态SQL详解一、动态SQL的核心概念1.1 什么是动态SQL?1.2 动态SQL的优点1.3 动态S

Mysql表的简单操作(基本技能)

《Mysql表的简单操作(基本技能)》在数据库中,表的操作主要包括表的创建、查看、修改、删除等,了解如何操作这些表是数据库管理和开发的基本技能,本文给大家介绍Mysql表的简单操作,感兴趣的朋友一起看... 目录3.1 创建表 3.2 查看表结构3.3 修改表3.4 实践案例:修改表在数据库中,表的操作主要

mysql出现ERROR 2003 (HY000): Can‘t connect to MySQL server on ‘localhost‘ (10061)的解决方法

《mysql出现ERROR2003(HY000):Can‘tconnecttoMySQLserveron‘localhost‘(10061)的解决方法》本文主要介绍了mysql出现... 目录前言:第一步:第二步:第三步:总结:前言:当你想通过命令窗口想打开mysql时候发现提http://www.cpp

MySQL大表数据的分区与分库分表的实现

《MySQL大表数据的分区与分库分表的实现》数据库的分区和分库分表是两种常用的技术方案,本文主要介绍了MySQL大表数据的分区与分库分表的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有... 目录1. mysql大表数据的分区1.1 什么是分区?1.2 分区的类型1.3 分区的优点1.4 分

MySQL错误代码2058和2059的解决办法

《MySQL错误代码2058和2059的解决办法》:本文主要介绍MySQL错误代码2058和2059的解决办法,2058和2059的错误码核心都是你用的客户端工具和mysql版本的密码插件不匹配,... 目录1. 前置理解2.报错现象3.解决办法(敲重点!!!)1. php前置理解2058和2059的错误