none
针对使用类似超过32G内存的大内存的服务器,SQL server有内存数据库可以用吗? RRS feed

  • 问题

  • 当服务器的内存很多时,比如购买128G的内存,而数据库可能只用100G的大小,SQL Server是否有功能可以将全库都载入内存,这样的话速度应该是很快的,不知各位有什么好的建议,针对大内存这块,因为现在买128G的内存也不是很大的开销对于大公司的重要业务来说。SQL server有内存数据库可以用吗?

    另外对于SQL Server2005 64位的标准版,是否使用AWE有限制?最多好像只能使用32G,是这样吗

    2010年6月20日 2:40

答案

  • 内存数据库, 目前 SQL SERVER 还没有, 不过, 只要内存足够, SQL Server 会把访问过的资料缓存到内存, 再次使用的时候不会从磁盘加载, 这个是自动管理的, 无法人工干预.

    mysql 倒是有内存数据库.

    2010年6月22日 4:34

全部回复

  • 你可以调整min server memory和max server memory 来调节buffer pool的大小。

    sql server会根据需要将需要的数据载入内存,但即使这样,在checkpoint的时候还是会将数据写回硬盘。sql server目前没有内存数据库这个功能

    AWE只是应用于32位操作系统,是sqlserver使用的内存大小超过4GB的限制。 这个你已经在前面的帖子看到了。

    64位sqlserver只能安装在64位操作系统上,所以没有awe这个概念


    有dba的职位吗(北京的),请联系我 stswordman#hotmail.com
    2010年6月20日 4:37
    版主
  • 从professional SQL Server 2005 Performance Tuning可以看到,微软专家建议,64位系统上仍然采用AWE是可以增进整体性能的,他们发现使用AWE内存能够令内存的分配和访问变得快很多,另外,内存不会被操作系统分页换出。在设定上,只需指定SQL Server服务的帐号有LOCK PAGES IN MEMORY的高级用户权限,那SQL Server将会自动使用AWE来访问缓冲池内存;

    但是对于SQL Server2005 64位的标准版,好像使用AWE有限制,最多使用32G,哪位实践过呢

    2010年6月20日 5:45
  • Sql2k5 can use whatever amount of memory as long as OS supports.
    2010年6月20日 19:18
  • 请注意我说的是SQL Server2005 64位的标准版,我知道企业版没有此限制,但标准版在使用AWE的时候,是有32GB的限制的。很多人对64位系统使用AWE有误解,这个去微软的官方网站都可以找到对此的说明,大家自己找找吧

    2010年6月21日 8:02
  • MS有对标准版作CPU、RAM限制,就是不希望它吃掉企业版的利润喽

    既然如此重要的业务,还是升级或买企业版吧,少折腾


    Try SQL Server 2008 QQ:315054403 dgdba@hotmail.com
    2010年6月22日 4:17
  • http://technet.microsoft.com/zh-cn/library/ms143685(SQL.90).aspx

    官方文档都没有写标准版有 32 GB 限制, 楼主从那里看到的?

    SQL Server 2005 各版本支持的内存

    更新日期: 2007 年 9 月 15 日

    下表指定了 Microsoft SQL Server 2005 的每一个版本所支持的最大内存。

    SQL Server 2005 版本 支持的最大内存(32 位) 支持的最大内存(64 位)

    Enterprise Edition

    操作系统最大内存1

    操作系统最大内存1

    Developer Edition

    操作系统最大内存1

    32 TB

    Standard Edition

    操作系统最大内存1

    32 TB

    Workgroup Edition

    3 GB

    不适用2

    SQL Server Express Edition

    1 GB

    不适用2

    Evaluation Edition

    操作系统最大内存1

    操作系统最大内存1

    2010年6月22日 4:24
  • 估计是把 TB 看成GB 了吧?

    另外, 关于 AWE, 我想, 微软官方的说明会更准确吧

    http://technet.microsoft.com/zh-cn/library/ms175581(SQL.90).aspx

    只有 SQL Server 2005 Enterprise Edition、Standard Edition 和 Developer Edition 支持 AWE,并且 AWE 只能应用于 32 位操作系统

    2010年6月22日 4:32
  • 内存数据库, 目前 SQL SERVER 还没有, 不过, 只要内存足够, SQL Server 会把访问过的资料缓存到内存, 再次使用的时候不会从磁盘加载, 这个是自动管理的, 无法人工干预.

    mysql 倒是有内存数据库.

    2010年6月22日 4:34
  • 32G内存的限制估计是我看错了。

    64位系统sql server采用awe早就有了结论,大家看看以下的链接吧,不然sql2005 64位标准版的SP3补丁也不可能为此修正

    http://support.microsoft.com/kb/970070/en-us

    2010年6月22日 6:12