П О Р Т А Л                            
С Е Т Е В Ы Х                          
П Р О Е К Т О В                        
  
                                                 
Главная

О проекте

Web-мастеру
     HTML & JavaScript
     SSI
     Perl
     PHP
     XML & XSLT
     Unix Shell

MySQL

Безопасность

Хостинг

Другое







Самое читаемое:

Учебник PHP - "Для Чайника".
Просмотров 97881 раз(а).

Иллюстрированный самоучитель по созданию сайтов.
Просмотров 29008 раз(а).

Учебник HTML.
Просмотров 56134 раз(а).

Руководство по PHP5.
Просмотров 25896 раз(а).

Хостинг через призму DNS.
Просмотров 30411 раз(а).

Подборка текстов стандартных документов.
Просмотров 28914 раз(а).

Учебник PHP - Самоучитель
Просмотров 33630 раз(а).

Документация на MySQL (учебник & справочное руководство)
Просмотров 34928 раз(а).

Внешние атаки...
Просмотров 26912 раз(а).

Учебник PHP.
Просмотров 22732 раз(а).

SSI в примерах.
Просмотров 17821 раз(а).



 
 



Приложение A. Проблемы и распространенные ошибки
Пред.     След.

A.2. Распространенные ошибки при использовании MySQL
A.2.16. Не найден файл (File not found)

Получение от MySQL ERROR '...' not found (errno: 23), Can't open file: ... (errno: 24), или любой другой ошибки с номером 23 или 24 означает, что для MySQL выделено недостаточно файловых дескрипторов. Можно использовать утилиту perror для получения описания ошибки с определенным номером:

shell> perror 23
File table overflow
shell> perror 24
Too many open files
shell> perror 11
Resource temporarily unavailable

Проблема здесь в том, что mysqld пытается одновременно держать открытыми слишком много файлов. Можно либо указать mysqld не открывать так много файлов одновременно, либо увеличить количество файловых дескрипторов, доступных mysqld.

Чтобы предписать mysqld держать одновременно открытыми меньше файлов, можно уменьшить табличный кэш, задав safe_mysqld опцию -O table_cache=32 (значение по умолчанию 64). Уменьшение значения max_connections также уменьшит количество открытых файлов (по умолчанию значение переменной 90).

Чтобы изменить число доступных mysqld файловых дескрипторов, можно использовать опцию --open-files-limit=# в safe_mysqld или опцию -O open-files-limit=# в mysqld (see Раздел 4.5.6.4, «SHOW VARIABLES»). Проще всего это сделать путем добавления опции в файл опций (see Раздел 4.1.2, «Файлы параметров my.cnf»). Если используется ранняя версия mysqld, не поддерживающая эту возможность, можно отредактировать скрипт safe_mysqld. В скрипте есть закомментированная строка ulimit -n 256; можно, убрав символ "#", раскомментировать эту строку и, заменив значение 256 другим, повлиять на количество доступных mysqld файловых дескрипторов.

При помощи ulimitopen-files-limit) можно увеличить количество файловых дескрипторов только до предела, установленного в операционной системе. Существует также "жесткий" предел, который может быть переопределен только при запуске safe_mysqld или mysqld от имени пользователя root (но помните, что в этом случае также следует использовать опцию --user=...). Если необходимо увеличить предел ОС по количеству доступных отдельному процессу файловых дескрипторов, обращайтесь к документации по своей операционной системе.

Обратите внимание: при использовании tcsh ulimit работать не будет! Кроме того, tcsh будет сообщать неверные значения при запросе текущих пределов! В этом случае необходимо запускать safe_mysqld с использованием sh!


Назад Начало Главы Начало Раздела Вперед

Пред. Глава След. Глава
Глава 9. Расширение MySQL Начало Книги Приложение B. Error Codes and Messages


 





Copyright © 2005-2011 Project.Net.Ru