发信人: chedong()
整理人: chedong(1999-07-08 20:50:23), 站内信件
|
1.如何在应用程序中避免死锁问题?
2.如何在SQL Server中提高DBCC性能?
3.Microsoft SQL Server如何解决加密问题?
4.何种原因 导致DBCC得出的页面数与SYSINDEXES DPAGES得出的页面数不同?
5.事务日志被填满的原因是什么?
6.怎样获得SQL Server的优化性能?
7.SQL Server的推荐内存容量为多少?
8.SQL Server如何支持TCP/IP和Windows Sockets ?
9.何种原因导致错误日志中出现17824,17832和1608错误信息?
10.如何获得SQL Server 6.5的价格和使用许可证的相关信息?
11.Microsoft SQL Server 6.5 和6.0版本分别支持哪些版本的Windows NT?
12.为什么SQL Server企业管理器(SEM)有时会将设备大小显示为负值?
13.是否可以使用SQL Server 6.0和6.5带来的Microsoft Access Upsizing Tool ?
14.升级SQL Server至6.5之前, 运行Chkupg65.exe工具的作用是什么?
15.SQL Server 6.5中有哪些新的关键字?
问:如何在应用程序中避免死锁问题?
答:任何基于锁的并发系统的一个不可避免的特点是在某些条件下系统可能阻塞 。当一个连接占有一个锁而另一个连接试图改变锁的状态时,第二个连接要么等 待第一个连接释放锁,要么因此而被阻塞。
为了获得最好的可扩展性,性能和并发能力,在设计应用程序和查询语句时,应 该注意尽量缩短事务的长度, 并且减少占有锁的时间。大多数并发问题往往出现 在应用程序和数据库的设计阶段,因此,设计阶段如果充分考虑这个因素至关重 要。 否则,应用程序就会存在潜在的潜能缺陷, 而且一般要到应用程序扩展性 测试时才被发现。
问: 如何在SQL Server中提高DBCC性能?
答:数据库一 致性检查(DBCC)工具是一套用于验证SQL Server完整性的程序集。 在概念上,它们类似于MS-DOS, Windows 95和Windows NT中的CHKDSK和UNIX中 的fsck等文件系统检查程序。
问:Microsoft SQL Server如何解决加密问题?
答:Microsoft SQL Server的6.0和6.5版本中,16位和32位客户软件在使用多协 议网络库时设置加密选项可以进行数据在线加密。
SQL Server依靠Microsoft Windows NT RPC 应用程序接口来完成网络数据加密 。 Windows NT RPC使用40位RC4加密方法。这种方法允许出口,所以美国和国际 版的这种加密方法没有区别。
问:何种原因 导致DBCC得出的页面数与SYSINDEXES DPAGES得出的页面数不同?
答:DBCC得出页面数与SYSINDEXES DPAGES得出页面数不同是一种正常现象。这是 因为SYSINDEXES(DPAGES)中的页面数并非时时在数据记录时更新,否则会带来过 多的操作。事实上,这个值是在每次运行检查点时更新。
这种不一致现象并不会导致任何问题,因为SYSINDEXES中的值仅仅用于反映空 间使用情况。 而且SYSINDEXES中偶尔有一些错误值并不会影响访问 策略, 因为 查询不会在SYSLOGS上运行。
问:事务日志被填满的原因是什么?
答:SQL Server事务日志可能会被填满,这会阻止之后的数据库操作,包括UPDA TE, DELETE, INSERT 和CHECKPOINT。
事务日志填满会导致1105错误:
Can't allocate space for object syslogs in database dbname because
the logsegment is full。 If you ran out of space in syslogs, dump
the transaction log。 Otherwise use ALTER DATABASE or
sp_extendsegment to increase the size of the segment。
这种现象可能出现于任何一个数据库中,包括Master和TempDB。一些难以预见的 因素可能消耗日志空间。 例如:
一个大型事务, 尤其像批量数据更新、插入或删除。
一个未提交的事务。
检查点处理程序截除时所需的带宽过大。
截除时超过阈值
上述各种条件互相作用的结果。
用于发布的标记事务没有被日志读取程序读走
问:怎样获得SQL Server的优化性能?
答:为了最大程度优化SQL Server的性能, 首先您必须确定几个方面。当这几个 方面得到优化时,可以最大程度的提高整个系统性能。然后您可以针对这几个方 面进行分析。否则,您可能事倍功半。
经验证明,SQL Server的性能提高主要取决于逻辑数据库设计,索引设计和查询 设计。 反之,最大的性能问题也往往源于这几个方面的设计缺陷。 如果数据库 性能是一个关注焦点,您应该首先着眼这几个方面,因为在此的很小的投资可以 带来很大的利益。
而其它系统级的性能问题, 例如内存、高速缓存、 硬件等, 的确值得研究。经 验证明系统在这些方面容量越大,性能越高。 SQL Server对现有硬件资源采用自 动方式管理,从而减少系统级的手工调整。
问:SQL Server的推荐内存容量为多少?
答:Microsoft SQL Serve最多允许使用2GB虚拟内存。Windows NT 为每个32位W indows应用程序提供4GB的虚拟内存空间, 这4GB内存中低端的2GB是这个进程的 私有空间,高端的2GB为系统所用。
Windows NT虚拟内存管理器(VMM)将4GB地址空间映射到实际物理内存中。实际物 理内存最多可为4GB,这取决于硬件平台。
像SQL Server这样的32位Windows应用程序只识别虚拟或者说逻辑地址,而不是物 理地址。 在某一确定时间一个应用程序到底可以使用多少物理内存取决于实际物 理内存大小及VMM。 应用程序不能直接控制内存的分配。
Windows NT的虚拟地址系统允许虚拟内存与实际物理内存之比大于1:1。 因此, 大型应用程序可以在各种硬件系统配置条件下运行。然而,在决大多数情况下, 如果系统虚拟内存远远大于运行的所有应用程序所用的系统内存总和,系统性能 将大打折扣。
问:SQL Server如何支持TCP/IP和Windows Sockets ?
答: Microsoft SQL Server 6.0和6.5版本支持基于Windows或Windows NT 的客 户端通信。 这些客户使用标准的Windows Sockets来实现TCP/IP之上的进程间通 信。在各种平台上,Windows Sokcets Net-Libraries已经被测试为连接Microso ft
SQL Server的接口。使用Net-Libraries 和其它TCP/IP协议就可以实现通信。 然而,在其余TCP/IP平台上并不保证工作一定正常,这些协议供应商必须测试并 且制订它们的支持策略。
除了Windows和Windows for Workgroups提供的TCP/IP产品,其它第三方的16位T CP/IP产品如果能够正常支持Windows Sockets标准, 就应该可以和Win16 TCP/I P Sockets Net-Library (DBMSSOC3.DLL)一起正常工作。尽管没有正式测试和支 持,那些实现标准的产品应该可以和Net-Library一起工作。
问:何种原因导致错误日志中出现17824,17832和1608错误信息?
答: 各种与通信相关的Microsoft SQL Server错误都有可能。一般来说,这些错 误信息并不意味着SQL Server错误, 而是网络、网络配置和客户端应用程序错误 。 无论在服务器端还是在客户端, SQL Server和它的应用程序处于ISO网络层以 上的层次。 建立和维护一条可靠的网络连接责任属于网络层和SQL Server之下的 系统层次。
可能的错误包括:
服务器端错误
17832 不能读取登录包
17852 不能关闭服务器端的连接
17824 不能向服务器端的连接写入数据
10058 套接字关闭后不能发送数据
10054 对端连接重置
10053 软件导致连接失效
1608 当发送结果至前端时发生一个网络错误
232 管道被关闭
109 管道被中止
客户端错误
10008 从SQL Server端来的损坏令牌: 数据流处理无法同步
10010 无法从SQL Server读取数据
10018 关闭网络连接时出错
10025 无法向SQL Server写数据
问: 如何获得SQL Server 6.5的价格和使用许可证的相关信息?
答: 为了获得与SQL Server 6.5的价格和使用许可证相关的信息,请参阅以下主 页站点: http://www.microsoft.com/sql/support/faq.asp 为了获得更多与M icrosoft SQL Server 6.5相关信息,请与当地微软授权经销商联系。
问: Microsoft SQL Server 6.5 和6.0版本分别支持哪些版本的Windows NT?
答: 6.5版本:
Microsoft SQL Server 6.5版本支持Windows NT Server 3.51和4.0版本。
注意:
SQL Server 6.5不支持Windows NT 3.5
SQL Server 6.5支持Windows NT 4.0
6.0 版本:
Microsoft SQL Server 6.0版本支持Windows NT Server 3.5和3.51版本。
注意:
SQL Server 6.0不支持Windows NT 4.0
尽管Microsoft SQL Server 6.0版本支持Windows 3.5, 但是建议使用Windows NT 3.51版本。
问:为什么SQL Server企业管理器(SEM)有时会将设备大小显示为负值?
答:如果正在编辑的设备的空闲空间大于2G, 这个问题就会发生。当这个问题发 生时,在对话框中无法修改设备大小。
为了避免这个问题,可以使用DISK RESIZE命令手工增加设备大小。
这一问题已在SQL 的SP3 中得到解决。
问:是否可以使用SQL Server 6.0和6.5带来的Microsoft Access Upsizing Too l ?
答:SQL Server为各种版本的Microsoft Access 提供Upsizing Tools(包括Upsi zing Wizard和SQL Server Browser), 但是这些工具是针对特定版本的。
如要下载Access for Windows 95的Upsizing Tools, 可以在微软主页的知识库 站点中找到文章Q149841 “INF:MS Access 95 Upsizing Tools Available on M SL” 并点击Upsize95.exe。 您可以使用这个版本的Upsizing Wizard 将Micros oft Access for Windows 95下的数据库移至Microsoft SQL Server 6.0 和6.5 版本下。
当使用这个Upsizing Wizard将一张表移至SQL Server 6.5时, 如果时间戳域已 被创建,这些域必须在Microsoft Access改变表中数据之前被移走。相关内容在 Microsoft知识库的下列文章中有所描述:
文章编号: Q163994
文章标题: PRB “Record Has Been Changed” Error After Upsizing
Upsizing Wizard for Microsoft Access 97现在发布。您可以下载这个文件htt p://support.microsoft.com/download/support/mslfiles/aut97.exe上。
Upsizing Wizard for Microsoft Access 2.0是用于将数据移至Microsoft SQL Server 4.21中。 要想将一个数据库从Access 2.0移到Microsoft SQL Server 6 .0或6.5中,首先将数据库转换为Microsoft Access for Windows 95数据库,再 使用Microsoft Access for Windows 95 Upsizing Wizard。
问: 升级SQL Server至6.5之前, 运行Chkupg65.exe工具的作用是什么?
答: 在升级到Microsoft SQL Server 6.5版本之前,首先运行Chkupg65.exe实用 程序。 这个程序会检查数据库状态,观察是否所有syscomments表中的描述是否 可以接受, 以及是否有关键字冲突。Chkupg65会将这些信息存入一个输出文件。 检查这个报告, 这份报告会指出当从当前系统升级必须做哪些准备工作。 如要 得到更多有关运行Chkupg65.exe实用程序的信息, 请参阅SQL Server Books On line中 “Running the CHKUPG65.EXE Utility”。 注意Chkupg65.exe是由早期 版本Chkupg.exe所调用, 但是功能并没有改变。
问: SQL Server 6.5中有哪些新的关键字?
答: 下列为新的关键字:
AUTHORIZE
CASCADE
CROSS
DISTRIBUTED
ESCAPE
FULL
INNER
JOIN
LEFT
OUTER
PRIVELEGES
RESTRICT
RIGHT
SCHEMA
WORK
-- 如果你觉得可笑的话,那么你错了
如果你觉得不可笑的话,那么我错了
※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 168.160.66.50]
|
|