Mysql
 sql >> база данни >  >> RDS >> Mysql

Грешка с твърде много отворени файлове в Ubuntu 8.04

Първо, за да идентифицирате определени потребителски или групови ограничения, трябва да направите следното:

[email protected]:~# sudo -u mysql bash
[email protected]:~$ 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) 71680
max locked memory       (kbytes, -l) 32
max memory size         (kbytes, -m) unlimited
open files                      (-n) 1024
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 8192
cpu time               (seconds, -t) unlimited
max user processes              (-u) 71680
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited
[email protected]:~$

Важният ред е:

отворени файлове (-n) 1024

Както можете да видите, доставчикът на вашата операционна система доставя тази версия с основната конфигурация на Linux – 1024 файла на процес.

Това очевидно не е достатъчно за натоварена инсталация на MySQL.

Сега, за да коригирате това, трябва да промените следния файл:

/etc/security/limits.conf

mysql             soft    nofile           24000
mysql             hard    nofile           32000

Някои разновидности на Linux също изискват допълнителна конфигурация, за да накарате това да се придържа към демон процесите спрямо сесиите за влизане. В Ubuntu 10.04, например, трябва да зададете и ограниченията на pam сесията, като добавите следния ред към /etc/pam.d/common-session :

session required pam_limits.so


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да прихващам DB-заявки? (MySQL)

  2. Mysql заявка за изтриване на дублирани коментари на Wordpress?

  3. Как да възстановите/пресъздадете базата данни по подразбиране 'mysql' на mysql

  4. Алтернатива за временна таблица на MySQL в Oracle

  5. Запитване от две таблици в отчета