phpMyAdmin по-русски
   О проекте  |  Скачать  |  Документация  |  Форум
  
Главная страница / Документация /

FAQ по phpMyAdmin. Конфигурация.



[2.1] Появляется сообщение об ошибке "Warning: Cannot add header information - headers already sent by ...", в чем проблема?
Отредактируйте файл config.inc.php и убедитесь, что ничего нет (в том числе переносов строки, пробелов, никаких символов...) до тэга <?php в начале документа и нет ничего после тэга ?> в конце.

[2.2] phpMyAdmin не может соединиться с MySQL. Что не так?
Возможно, в PHP не настроена поддержка MySQL, либо указан неверный логин/пароль. Попробуйте проверить работоспособность на примере элементарного скрипта, использующего функцию mysql_connect. Если скрипт работать не будет, возможно придется скомпилировать PHP с установленной библиотекой-клиентом MySQL. Дополнительную информацию можно прочитать на сайте phpClub.ru.

[2.3] Появляется следующее сообщение об ошибке: "Warning: MySQL Connection Failed: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (111)..." is displayed. Что делать?
Для пользователей RedHat, Гаральд Легнер (Harald Legner) предлагает следующее решение:
На RedHat-Box сокет MySQL - /var/lib/mysql/mysql.sock. В php.ini необходимо найти следующую строку
mysql.default_socket = /tmp/mysql.sock и изменить её на:
mysql.default_socket = /var/lib/mysql/mysql.sock
После этого перезапустите Apache

Решение от Бреда Уммера (Brad Ummer):
  • Сначала необходимо определить какой сокет используется MySQL.
    Чтобы сделать это, можете воспользоваться командой telnet для подключения к своему серверу, перейдите в директорию /mysql/bin/. В данной директории находится файл mysqladmin. Наберите ./mysqladmin variables, и получите общую информацию о MySQL сервере, включая сокет (/tmp/mysql.sock, например).
  • После этого необходимо указать PHP чтобы он использовал этот сокет.
    Чтобы сделать это в phpMyAdmin, Вам необходимо дополнить информацию о сокете в config.inc.php.
    Например: $cfg['Servers'][$i]['socket'] = '/tmp/mysql.sock';
Убедитесь также, что права доступа для этого файла разрешают вашему веб-серверу чтение (например, '0755'). Дополнительно о проблемах соединения с MySQL сервером смотрите также на официальном сайте MySQL.

[2.4] Браузер ничего не отображает при попытке запустить phpMyAdmin, что делать?
Попробуйте присвоить директиве $cfg['OBGZip'] значение FALSE в конфигурационном файле phpMyAdmin. Иногда это помогает решить проблему.
Также проверьте версию вашего PHP: если она содержит "4.0b..." это значит, что установлена бета версия PHP. Это плохая идея - работать под беткой, рекомендуется обновить до последней стабильной версии.

[2.5] Каждый раз, когда я хочу вставить или изменить запись, либо удалить таблицу или базу данных, появляется 404-я ошибка (page not found) как с HTTP, так и с cookie аутентификацией, мне предлагается снова ввести логин. В чем проблема?
Проверьте значение директивы $cfg['PmaAbsoluteUri'] в конфигурационном файле phpMyAdmin.

[2.6] Я получаю ошибку "Access denied for user: 'root@localhost' (Using password: YES)" при попытке доступа к MySQL-серверу на хосте редиректом (port-forward) с моего localhost.
Когда Вы используете порт на локальном хосте, который перенаправляется с port-forwarding на другой хост, MySQL не разрешает соединение с 'localhost'.
Эрик Вассер предлагает следующее решение: если ваш хост - "localhost" MySQL всегда пытается для ускорения использовать соединение через сокет (the socket connection), данный метод не работоспособен в конфигурации с редиректом (port forwarding).
Если вместо 'localhost' ввести "127.0.0.1" в качестве имени хоста (hostname), то все будет корректно и MySQL будет использовать TCP соединение.

[2.7] Использование и создание тем.
Темы конфигурируются с помощью $cfg['ThemePath'], $cfg['ThemeManager'] и $cfg['ThemeDefault'].
В переменной $cfg['ThemePath'], нельзя удалять директорию "original", а также расположенные ниже её структуры, т.к. это системная тема, используемая phpMyAdmin. "original" содержит все изображения и стили, для обратной совместимости и для всех тем, которые не содержат изображений или css-файлов.
Если $cfg['ThemeManager'] разрешена, Вы можете выбирать понравившуюся тему с главной страницы. Ваша выбранная тема будет сохранена в cookie.
Чтобы создать тему:
  • создайте новую поддиректорию (например, "your_theme_name") под $cfg['ThemePath'] (для тем по умолчанию)
  • скопируйте файлы и папки из "original" в "your_theme_name"
  • отредактируйте css-файлы в "your_theme_name/css"
  • поместите ваши новые изображения в "your_theme_name/img"
  • отредактируйте layout.inc.php в "your_theme_name"
  • отредактируйте info.inc.php в "your_theme_name", чтобы он содержал выбранное вами имя темы, которое будет отображаться в пользовательском интерфейсе.
  • Сделайте новый скриншот Вашей темы и сохраните его как "your_theme_name/screen.png"
В папке темы находится файл info.inc.php, который содержит развернутое имя темы, поколение темы и версию темы. Данные версии и поколения нумеруются от 1 и никак напрямую не связаны с версией phpMyAdmin. Темы без поколения могут быть обратно совместимыми - темы с версией 2 могут работать в phpMyAdmin требующем 1-ю версию. Темы с другими номерами поколений недопустимы.
Если Вы не хотите использовать свои символы и кнопки, удалите директорию "img" в "your_theme_name". phpMyAdmin будет использовать по умолчанию иконки и кнопки (из системной темы "original").

[2.8] Я получаю ошибку "Missing parameters", что можно сделать?
Тут есть несколько причин:
  • В config.inc.php, попробуйте оставить директиву $cfg['PmaAbsoluteUri'] пустой. См. также FAQ 4.7.
  • Может быть вы используете "битый" PHP дистрибутив или Вам необходимо обновление Вашего Zend Optimizer. См. http://bugs.php.net/bug.php?id=31134.
  • Если Вы используете Hardened PHP в файле ini для директивы varfilter.max_request_variables установите значение по умолчанию (200) или другое меньшее значение, Вы можете получать данную ошибку, если ваша таблица имеет большое кол-во столбцов. Приведите данную настройку к соответствию.
  • В php.ini в директиве arg_separator.input, значение ";" будет вызывать подобную ошибку. Замените его на "&;".
  • Если Вы используете Hardened-PHP, можете увеличить лимиты запросов.
  • Директория, определенная в php.ini в директиве session.save_path не создана или доступна только для чтения.