Implementation of Key Caches

Implementation of Key Caches

am 14.05.2010 17:28:36 von James.W.McKelvey

According to the 5.1 docs, I can have multiple key caches for MYISAM on
a 32-bit host, each with up to 4G.

But that means that each cache can take the entire address space of a
process. How does the MySQL server get around the limitation?

--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe: http://lists.mysql.com/mysql?unsub=gcdmg-mysql-2@m.gmane.org

Re: Implementation of Key Caches

am 14.05.2010 17:40:54 von Shawn Green

James W. McKelvey wrote:
> According to the 5.1 docs, I can have multiple key caches for MYISAM on
> a 32-bit host, each with up to 4G.
>
> But that means that each cache can take the entire address space of a
> process. How does the MySQL server get around the limitation?
>

If the OS fails to allow the memory allocation, then the request will
fail. That will stop your MySQL instance immediately.

The 4GB total limit is not something that 32 bit hardware can work
around easily as it is endemic to the fact that there are, at most, only
32 bits available for memory addressing.

What's even worse that that some Operating Systems will not provide the
full 4GB to the applications. They, such as Windows, only give about 2GB
to the processes and reserve the other 2 for the OS to use.

If you need to allocate more memory, it is best to upgrade to a 64 bit
machine running a 64 bit OS.
--
Shawn Green
MySQL Principle Technical Support Engineer
Oracle USA, Inc.
Office: Blountville, TN

--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe: http://lists.mysql.com/mysql?unsub=gcdmg-mysql-2@m.gmane.org