Ian Collins a écrit :
> Hi,
> I have a HP rp3410 with 4Gb RAM running HPUX 11.11. This is running,
> 
> Version: '5.0.26-pro-log'  socket: '/tmp/mysql.sock'  port: 3306  MySQL
> Pro (Commercial)
> 
> When this machine is put under load (i.e, a lot of database activity),
> the clients are receiving "Error 12" errors and the MySQL log has a lot
> of errors as follows,
> 
> 070327  8:24:20 [ERROR] mysql_ha_read: Got error 12 when reading table
> 'XLDEFN_IN'
> 070327  8:54:51 [ERROR] mysql_ha_read: Got error 12 when reading table
> 'XLDEFN_IN'
> 070327  8:55:19 [ERROR] mysql_ha_read: Got error 12 when reading table
> 'XLDEFN_IN'
> 
> In addition, I see at MySQL startup (in the mysql err log), a number of,
> 
> /usr/local/mysql/bin/mysqld: Out of memory (Needed 368389120 bytes)
> /usr/local/mysql/bin/mysqld: Out of memory (Needed 276289536 bytes)
> 
> 
> My /etc/my.cnf is set as,
> 
> [client]
> port=3306
> socket=/tmp/mysql.sock
> 
> [mysqld]
> port=3306
> socket=/tmp/mysql.sock
> set-variable = key_buffer_size=400M
> set-variable = max_allowed_packet=15M
> default-table-type=InnoDB
> datadir=/data/mysql
> 
> The machine is indicating it is under any ram pressure, which makes me
> think it may be kernel tuning (of course, I may be wrong). Are there any
> recommendations for HPUX kernel tuning with MySQL?
> 

Hi,
  You probably figured that out by now, but for the book.

You're probably using a 32 bits architecture and then are limited to 4GB
total memory allocation. That being said, that's the maximum you can
have, but the kernel reserved a certain value for it's stack and other
part. Depending of the os, it reserved from 800-2G. For example, many
linuxes cannot go over 2.2Gb without seeing those errors.

I'm not very familiar with HP-UX, so you may find parameter to tweak to
increase that value that you can allocate, but I doubt you could get
more than 3Gb so you may want to decrease your mysql settings so it
doesn't allow that much memory...

Example you set key_buffer_size to 400M, but default table to innodb. SO
if you don't have much myisam table you can reduce that to a much lower
value (say 100M?)

Or you can also decrease the per thread buffer, and limit the
max_connection settings...

I'm sure you could find a lot more info around on the net! This
http://www.mysqlperformanceblog.com/2006/05/17/mysql-server-memory-usage/
also gives a few pertinent information.

If all the memory are needed and you wish to increase those esttings, I
advice to consider a 64 Bits architecture as the next upgrade :) Should
really help with db is starting to get tight in a 32bits one!

Good luck!

-- 
Mathieu Bruneau
aka ROunofF

===
GPG keys available @ http://rounoff.darktech.org

-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]

Reply via email to