最近公司新买了服务器,8CPU,4G内存。 比原来的服务器好N多。 系统是2003和SQL 2000,把数据库切换到新服务器之后,发现大部分应用程序变快了,可是某几个程序明显慢了很多,原来2秒,现在8秒!!!   新服务器比老服务器还慢???!!! 在网上搜索N久,无果!! 最后没办法,把SQL里设置了一下,让SQL只使用1个CPU,结果,很快!! 从8秒降到2秒! 最后BS一下微软,多线程、多CPU工作是有问题的!由于是自编的程序,可以很快找到慢的那几句SQL,所以可以明确知道是那些语句出问题,否则。

解决方案 »

  1.   

    新服务器用SUPER PI简单测试了一下,比老服务器快3倍,且CPU数量由1个变为8个。1cpu>8cpu,出现这样的问题,看似费解,其实细想也能理解,毕竟SQL 2000是个很老的东西了。在此给出现同样问题的人提个醒。不知道SQL 2005会不会支持多线程好一些。
      

  2.   

    你用的 SQL 2000 是企业版吗?还需"性能调优"工作,默认参数是不行的.
      

  3.   

    如果是8CPU,建议最好不要把8个CPU都分配给SQL,最少给系统要分1个CPU,系统本身还要协调CPU之间的并发协调和系统。
      

  4.   


    给SQL分配7个CPU,它还是8秒,1~2个CPU,2秒。
    同样一句SQL语句。
      

  5.   

    Sorry, 看错了。刚才看成了8G,呵呵
      

  6.   

    有人从 2005年1月,到现在还没找到优化方法?
    多CPU服务器上的SQLServer性能调优
    多CPU下的SQLSERVER问题看来确实难。
    ------------------------------------------(1)写入性能的提高关键在于磁盘性能本身及RAID方案;
    (2)读取性能的提高,可以考虑“并行查询”。
      

  7.   

    sp_configurecost   threadshold   for   parallelism 
      

  8.   


    对SQL2000只略知一二,
    1。磁盘是raid 5,读写都很快,已经测试过。
    2。“并行查询”怎么做?举个例子。。
    3。sp_configure 对那些参数进行调整,才可以最优?