sql_server2000下的数据库性能调优问题!

daydayupliq 2003-08-21 09:06:52
各位大侠,我公司网站每天在线人数4000人左右,WEB服务器有6台,SQL也有6台,每个用户都是在线向数据库提交数据;表现症状为:用户上网站慢,提交数据时慢,经常断线,有时我们查看后台,单纯一个库(广东省)就有200个用户连接,这个是不是很多呢?别的网络的问题就不问了!可数据库方面我们能做点什么呢?(公司说不成就改用oracle了!)
等待中~~~~~~~~
...全文
108 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
daydayupliq 2003-08-27
  • 打赏
  • 举报
回复
呵呵,说错了,我们网站是同时在线4000人,高峰时同时在线6000人!现在压力还是很大的!
liukaiii 2003-08-25
  • 打赏
  • 举报
回复
应该不是数据库的事,我们的网站每天的访问量能有一万人吧,也就用了一台数据库,一台备份的,运行的还好呀
daydayupliq 2003-08-22
  • 打赏
  • 举报
回复
sp_lock执行后,怎么个分析法呢?
hjb111 2003-08-21
  • 打赏
  • 举报
回复
优化服务器性能
Microsoft® SQL Server™ 2000 自动调整很多服务器配置选项,因此系统管理员只需做很少的调整(如果有)。这些配置选项可以由系统管理员修改,但一般建议保留为默认值,以使 SQL Server 能根据运行时的情况自动对自身进行调整。

不过,如果需要,可以配置下列组件以优化服务器性能:

SQL Server 内存


I/O 子系统


Microsoft Windows NT® 选项
使用内存配置选项优化服务器性能
Microsoft® SQL Server™ 2000 的内存管理组件消除了对 SQL Server 可用的内存进行手工管理的需要。SQL Server 在启动时根据操作系统和其它应用程序当前正在使用的内存量,动态确定应分配的内存量。当计算机和SQL Server 上的负荷更改时,分配的内存也随之更改。有关更多信息,请参见内存构架。

下列服务器配置选项可用于配置内存使用并影响服务器性能:

min server memory


max server memory


max worker threads


index create memory


min memory per query
min server memory 服务器配置选项可用于确保 SQL Server 至少以最小的分配内存量启动,并且内存低于该值时不会释放内存。可以基于 SQL Server 的大小及活动将该配置选项设置为特定的值。始终将 min server memory 服务器配置选项设置为某个合理的值,以确保操作系统不向 SQL Server 请求太多内存而影响 SQL Server 性能。

max server memory 服务器配置选项可用于:在 SQL Server 启动及运行时,指定 SQL Server 可以分配的最大内存量。如果知道有多个应用程序与 SQL Server 同时运行,而且想保障这些应用程序有足够的内存运行,可以将该配置选项设置为特定的值。如果这些其它应用程序(如 Web 服务器或电子邮件服务器)只根据需要请求内存,则 SQL Server 将根据需要给它们释放内存,因此不要设置 max server memory 服务器配置选项。然而,应用程序通常在启动时不假选择地使用可用内存,而如果需要更多内存也不请求。如果有这种行为方式的应用程序与 SQL Server 同时运行在相同的计算机上,则将 max server memory 服务器配置选项设置为特定的值,以保障应用程序所需的内存不由 SQL Server 分配出。

不要将 min server memory 和 max server memory 服务器配置选项设置为相同的值,这样做会使分配给 SQL Server 的内存量固定。动态内存分配可以随时间提供最佳的总体性能。有关更多信息,请参见服务器内存选项。

max worker threads 服务器配置选项可用于指定为用户连接到 SQL Server 提供支持的线程数。255 这一默认设置对一些配置可能稍微偏高,这要具体取决于并发用户数。由于每个工作线程都已分配,因此即使线程没有正在使用(因为并发连接比分配的工作线程少),可由其它操作(如高速缓冲存储器)更好地利用的内存资源也可能是未使用的。一般情况下,应将该配置值设置为并发连接数,但不能超过 1,024。有关更多信息,请参见max worker threads 选项。



说明 当 SQL Server 运行在 Microsoft Windows® 95 或 Microsoft Windows 98 上时,最大工作线程服务器配置选项不起作用。


index create memory 服务器配置选项控制创建索引时排序操作所使用的内存量。在生产系统上创建索引通常是不常执行的任务,通常调度为在非峰值时间执行的作业。因此,不常创建索引且在非峰值时间时,增加该值可提高索引创建的性能。不过,最好将 min memory per query 配置选项保持在一个较低的值,这样即使所有请求的内存都不可用,索引创建作业仍能开始。有关更多信息,请参见 index create memory 选项。

min memory per query 服务器配置选项可用于指定分配给查询执行的最小内存量。当系统内有许多查询并发执行时,增大 min memory per query 的值有助于提高消耗大量内存的查询(如大型排序和哈希操作)的性能。不过,不要将 min memory per query 服务器配置选项设置得太高,尤其是在很忙的系统上,因为查询将不得不等到能确保占有请求的最小内存、或等到超过 query wait 服务器配置选项内所指定的值。如果可用内存比执行查询所需的指定最小内存多,则只要查询能对多出的内存加以有效的利用,就可以使用多出的内存。有关更多信息,请参见 min memory per query 选项和 query wait 选项.。


请参见
lonelylight 2003-08-21
  • 打赏
  • 举报
回复
这应该不是sqlserver的问题,可以尝试修改数据连接部分。
z5wjz 2003-08-21
  • 打赏
  • 举报
回复
用户的查询和提交有可能会产生大量的锁和阻塞,你可以在数据库最慢的时候用sp_lock查看一下,如果是锁的问题,则需要从程序的角度来找一下原因.

27,579

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧