mysql 9804 0.0 0.6 58556 22960 pts/0 S 12:43 0:00 \_ /usr/sbin/mysqld --basedir=/ --datadir=/var/lib/mysql --user=mysql --pid-file=/var/lib/mysql/myhostname.pid --skip-external-locking --port=3306 --socket=/var/lib/mysql/mysql.sock
mysql 9807 0.0 0.6 58556 22960 pts/0 S 12:43 0:00 \_ /usr/sbin/mysqld --basedir=/ --datadir=/var/lib/mysql --user=mysql --pid-file=/var/lib/mysql/myhostname.pid --skip-external-locking --port=3306 --socket=/var/lib/mysql/mysql.sock
mysql 9808 0.0 0.6 58556 22960 pts/0 S 12:43 0:00 \_ /usr/sbin/mysqld --basedir=/ --datadir=/var/lib/mysql --user=mysql --pid-file=/var/lib/mysql/myhostname.pid --skip-external-locking --port=3306 --socket=/var/lib/mysql/mysql.sock
mysql 9809 0.0 0.6 58556 22960 pts/0 S 12:43 0:00 \_ /usr/sbin/mysqld --basedir=/ --datadir=/var/lib/mysql --user=mysql --pid-file=/var/lib/mysql/myhostname.pid --skip-external-locking --port=3306 --socket=/var/lib/mysql/mysql.sock
mysql 9810 0.0 0.6 58556 22960 pts/0 S 12:43 0:00 \_ /usr/sbin/mysqld --basedir=/ --datadir=/var/lib/mysql --user=mysql --pid-file=/var/lib/mysql/myhostname.pid --skip-external-locking --port=3306 --socket=/var/lib/mysql/mysql.sock
[ ... repeated output truncated ... ]
他们没有使用13 * 50mb的内存-他们可能总共使用了70mb的内存。请记住,Linux将在进程之间共享未修改的内存页面,因此,如果服务器是新启动的,则大部分内存将全部共享。实际上,由于mysql是线程化的,因此每个线程分配的内存可能甚至更少。如果您担心每个mysql进程的内存使用情况,请查看/etc/mysql/my.cnf
,然后查看mysqld部分中的变量:
key_buffers
thread_stack
thread_cache_size
max_connections
query_cache_limit
query_cache_size
但是请注意,这些变量是非常强大的变量,您可以通过将它们设置得太低而轻易杀死mysql性能,或者通过将它们设置得太高而浪费本来可以在其他地方使用的内存。
弄清楚调整mysql实例的最佳方法的一个简单起点是先运行您的应用程序,然后从此处运行mysqltune脚本,该脚本将分析性能计数器,然后就应该更改的内容提出建议。您的服务器配置。
mysqltune
,非常有用的感谢。另外,可以使用它htop
为线程着色并查看每个进程使用的实际内存。