I have mysql running on a 2.4.18 kernel:
/usr/libexec/mysqld Ver 3.23.49 for redhat-linux-gnu on i386
and note that one started about 4 processes (threads?) began to handle the
various signal/table tasks and such. After several random queries the
process list grows accordingly.
After a couple hours all processes which showed consumption of about 8MB of
memory initially are now 25MB each and growing as queries are received.
My question is...Why if these are threads does it require each thread to
utilize so much memory? 4 threads using 10MB each is ok, 10 threads using
10MB each is ok. 20 threads using 25MB each is too much.
When I shutdown MySQL available memory increases according to the number of
threads * size previously in use.
Is this a problem or a feature? Is there a way to limit mysqld to only a
certain number of maximum threads and a maximum size of memory always? I
don't really like seeing this runaway with all my memory.
On the other hand, CPU load is incredibly low. Inserting about 1.5 million
records never hit more than about 30% load.
The machine is a dual P3 1000Mhz with 1GB of RAM.