ITPub博客

首页 > Linux操作系统 > Linux操作系统 > How to configure MYSQL resource limitation

How to configure MYSQL resource limitation

原创 Linux操作系统 作者:licheng79 时间:2011-09-08 17:52:27 0 删除 编辑

(Database: MYSQL 5.5, OS: RHEL)

 

A case study about how to configure MYSQL resource limitation

Set up MYSQL resource limitation at file: /etc/security/limits.conf

 

Following is a case of properly setting of max_open_files

 

During MYSQL startup, the system shows a warning as following marked in RED.    

 

110905 20:12:24  InnoDB: Starting shutdown...
110905 20:12:26  InnoDB: Shutdown completed; log sequence number 1595675
110905 20:12:26 [Note] /usr/sbin/mysqld: Shutdown complete

 

110905 20:12:26 mysqld_safe mysqld from pid file /home/mysql/data/cpprdjm1.ctm.plc.cwintra.com.pid ended
110905 20:13:54 mysqld_safe Starting mysqld daemon with databases from /home/mysql/data
110905 20:13:54 [Warning] Could not increase number of max_open_files to more than 1024 (request: 4356)
110905 20:13:54 [Note] Plugin 'FEDERATED' is disabled.
InnoDB: The InnoDB memory heap is disabled
InnoDB: Mutexes and rw_locks use GCC atomic builtins
InnoDB: Compressed tables use zlib 1.2.3
110905 20:13:54  InnoDB: Using Linux native AIO
110905 20:13:54  InnoDB: Initializing buffer pool, size = 5.0G
110905 20:13:54  InnoDB: Completed initialization of buffer pool
110905 20:13:54  InnoDB: highest supported file format is Barracuda.
110905 20:13:55  InnoDB: 1.1.4 started; log sequence number 1595675
110905 20:13:55 [Note] Event Scheduler: Loaded 0 events
110905 20:13:55 [Note] /usr/sbin/mysqld: ready for connections.
Version: '5.5.8-enterprise-commercial-advanced-log'  socket: '/home/mysql/mysql.sock'  port: 3306  MySQL Enterprise Server - Advanced Edition (Commercial)

 

 

I tried to update the /etc/security/limits.conf.  Relogin the server and try again.

 

 [mysql@cpprdjm1 ~]$ ulimit -n

5120

[mysql@cpprdjm1 ~]$ ulimit -a

core file size          (blocks, -c) 0

data seg size           (kbytes, -d) unlimited

scheduling priority             (-e) 0

file size               (blocks, -f) unlimited

pending signals                 (-i) 106496

max locked memory       (kbytes, -l) 32

max memory size         (kbytes, -m) unlimited

open files                      (-n) 5120

pipe size            (512 bytes, -p) 8

POSIX message queues     (bytes, -q) 819200

real-time priority              (-r) 0

stack size              (kbytes, -s) 10240

cpu time               (seconds, -t) unlimited

max user processes              (-u) 106496

virtual memory          (kbytes, -v) unlimited

file locks                      (-x) unlimited

 

The warning message does not appear anymore when MySQL startup.

 

 110908 12:26:03 mysqld_safe mysqld from pid file /home/mysql/data/cpprdjm1.ctm.plc.cwintra.com.pid ended
110908 12:26:48 mysqld_safe Starting mysqld daemon with databases from /home/mysql/data
110908 12:26:48 [Note] Plugin 'FEDERATED' is disabled.
InnoDB: The InnoDB memory heap is disabled
InnoDB: Mutexes and rw_locks use GCC atomic builtins
InnoDB: Compressed tables use zlib 1.2.3
110908 12:26:48  InnoDB: Using Linux native AIO
110908 12:26:48  InnoDB: Initializing buffer pool, size = 5.0G
110908 12:26:49  InnoDB: Completed initialization of buffer pool
110908 12:26:49  InnoDB: highest supported file format is Barracuda.
110908 12:26:49  InnoDB: 1.1.4 started; log sequence number 1613515
110908 12:26:50 [Note] Event Scheduler: Loaded 0 events
110908 12:26:50 [Note] /usr/sbin/mysqld: ready for connections.
Version: '5.5.8-enterprise-commercial-advanced-log'  socket: '/var/lib/mysql/mysql.sock'  port: 3306  MySQL Enterprise Server - Advanced Edition (Commercial)

 

Reference:

如何使用 ulimit

ulimit 通过一些参数选项来管理不同种类的系统资源。在本节,我们将讲解这些参数的使用。

ulimit 命令的格式为:ulimit [options] [limit]

具体的 options 含义以及简单示例可以参考以下表格。


1. ulimit 参数说明

选项 [options]

含义

例子

-H

设置硬资源限制,一旦设置不能增加。

ulimit – Hs 64;限制硬资源,线程栈大小为 64K

-S

设置软资源限制,设置后可以增加,但是不能超过硬资源设置。

ulimit – Sn 32;限制软资源,32 个文件描述符。

-a

显示当前所有的 limit 信息。

ulimit – a;显示当前所有的 limit 信息。

-c

最大的 core 文件的大小, blocks 为单位。

ulimit – c unlimited 对生成的 core 文件的大小不进行限制。

-d

进程最大的数据段的大小,以 Kbytes 为单位。

ulimit -d unlimited;对进程的数据段大小不进行限制。

-f

进程可以创建文件的最大值,以 blocks 为单位。

ulimit – f 2048;限制进程可以创建的最大文件大小为 2048 blocks

-l

最大可加锁内存大小,以 Kbytes 为单位。

ulimit – l 32;限制最大可加锁内存大小为 32 Kbytes

-m

最大内存大小,以 Kbytes 为单位。

ulimit – m unlimited;对最大内存不进行限制。

-n

可以打开最大文件描述符的数量。

ulimit – n 128;限制最大可以使用 128 个文件描述符。

-p

管道缓冲区的大小,以 Kbytes 为单位。

ulimit – p 512;限制管道缓冲区的大小为 512 Kbytes

-s

线程栈大小,以 Kbytes 为单位。

ulimit – s 512;限制线程栈的大小为 512 Kbytes

-t

最大的 CPU 占用时间,以秒为单位。

ulimit – t unlimited;对最大的 CPU 占用时间不进行限制。

-u

用户最大可用的进程数。

ulimit – u 64;限制用户最多可以使用 64 个进程。

-v

进程最大可用的虚拟内存,以 Kbytes 为单位。

ulimit – v 200000;限制最大可用的虚拟内存为 200000 Kbytes

U2727P2DT20110908094746.jpg

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26136400/viewspace-706940/,如需转载,请注明出处,否则将追究法律责任。

上一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2011-09-07

  • 博文量
    54
  • 访问量
    69833