(我读过很多关于64位操作系统和32位操作系统/应用程序的文章,但这个问题专门针对数据库。)
我试图了解32位和64位数据库的优缺点,也就是在什么条件下开始使用64位的安装是有意义的。
我感兴趣的数据库系统是: Server 2008、MySQL和PostgreSQL 9.0。
我读过PostgreSQL的前9.0版本只有32位版本的Windows,这个关于在64位上运行32位PostgreSQL的文章消除了我的一些困惑,但我正在寻找更多的信息。
何时使用64位数据库(即数据库大小/磁盘空间、可用系统内存、已知从中受益的数据服务器类型、正在使用的数据库引擎等)?
发布于 2010-07-13 21:12:09
在什么条件下开始使用64位的安装是合理的.对不起-在64位服务器上安装32位数据库有什么好处?想象一下,服务器2008R2只在64位中可用。
如果有机会安装32位SQL Server版本,现在就没有一个场景是有意义的。
数据库在这方面是特定的,因为它们希望在必要时使用大量内存作为缓存。比只有2gb / 3gb的32位进程所能提供的要多得多。是不一样的。即使忽略限制,PAE内存也不等于Server的实际内存(它只用于一件事--缓存数据库页)。
32位操作系统-在相同的水平上。在现代硬件上安装32位操作系统是毫无意义的。
发布于 2010-07-16 02:31:03
PostgreSQL通过两种主要方式获得64位构建的好处。首先,可以容纳64位的数据类型(主要是大整数和时间戳类型)可以更有效地直接在寄存器中传递,而不是使用指针。其次,可以为数据库的专用缓冲区缓存分配更多的内存。可调谐(shared_buffers)的收益递减点通常在8GB左右,但在32位系统上它将被限制为<2GB。
但是,如果您使用的是Windows,那么PostgreSQL处理共享内存的效率就不如在UNIX平台上那么高效。收益递减的点通常是数据库专用内存的<=512MB,无论是32位还是64位构建的PostgreSQL。最好将其余部分留给操作系统缓存,而不是将其专用于数据库。因此,Windows上的PostgreSQL实际上并没有从32位到64位的性能提升;通常情况下,拥有更多可用内存的主要可调性并不能很好地利用它。
发布于 2010-07-13 21:09:31
我在64位架构上运行MySQL,因为我希望它们能够最有效地利用每个线程超过4GB的内存。一般来说,这应该适用于所有数据库。
架构之间的主要区别之一是增加了寻址,从而允许更大的内存处理。虽然英特尔的物理地址扩展允许寻址超过4GB,但它仍然限于每个线程4GB。PAE允许最高可达64 up。
维基百科的比较为64位,而32位则包含更低级别的详细信息。
https://serverfault.com/questions/160082
复制相似问题