PhpMyAdmin самое популярное web ориентированное управление базой данных MySQL. Незаменимый инструмент для всех, кто не дружит с языком команд MySQL сервера.
Для работы phpMyAdmin у вас должны уже стоять и работать
- MySQL сервер
- Http сервер с поддержкой php
1.Установка в Ubuntu
2.Установка из исходников
3.Решение проблем при установке phpMyAdmin
Установка в Ubuntu
Установку выполняем командой
sudo aptitude install phpmyadmin
Установщик спросит на какой http сервер ставим – я выбрал apache2, т.к. он уже стоял у меня. Далее скрипт установки попросил создать и сконфигурировать базу данных phpmyadmin – соглашаемся и вводим пользователя и пароль для управления этой базой данных.
После установки все конфиги хранятся в /etc/phpmyadmin. На всякий случай перезапускаем http сервер.
sudo /etc/init.d/apache2 restart
В браузере вводим http://localhost/phpmyadmin/ и авторизуемся от пользователей MySQL сервера.
Установка из исходников
Чтобы представлять что происходит при установке phpMyAdmin, я покажу действия, которые выполняют установочные скрипты многих дистрибутивов. К тому же способ установки из исходников универсален и подходит для всех Unix систем.
1. Скачиваем последнюю версию phpMyAdmin с официального сайта (на сегодняшний день последняя версия была 3.3.8).
2. Распаковываем скачанный архив в любую папку корневой директории нашего http сервера. Для условности пусть это будет папка phpmyadmin.
3. Находим в папке phpmyadmin/scripts файл create_tables.sql – это дамп таблицы phpmyadmin. Восстановим его командой от root или sudo
#mysql -u root -p < create_tables.sql
4. Заходим в консоль MySQL сервера и выставляем права на только что созданную базу данных phpmyadmin.
# mysql -u root -p
mysql> use phpmyadmin;
mysql> GRANT ALL ON phpmyadmin.* TO phpmyadmin@localhost IDENTIFIED BY 'your_password';
mysql> flush privileges;
5. Правим конфигурационный файл в корне папке phpmyadmin – config.sample.inc.php.
Переименовываем его в config.inc.php, выставляем владельцем файла того от кого работает сервер http (у меня это пользователь nobody) и выставляем права на файл 600 (эти действия выполняем от root или sudo)
#mv config.sample.inc.php config.inc.php
#chown nobody config.inc.php
#chmod 600 config.inc.php
В самом файле config.inc.php меняем значение строк – заносим пароль для авторизации через cookie и имя пользователя, пароль для восстановленной из дампа базы phpmyadmin.
$cfg['blowfish_secret'] = 'password';
/* User for advanced features */
$cfg['Servers'][$i]['controluser'] = 'phpmyadmin';
$cfg['Servers'][$i]['controlpass'] = 'your_password';
а эти строки раскомментируем
/* Advanced phpMyAdmin features */
$cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';
$cfg['Servers'][$i]['bookmarktable'] = 'pma_bookmark';
$cfg['Servers'][$i]['relation'] = 'pma_relation';
$cfg['Servers'][$i]['table_info'] = 'pma_table_info';
$cfg['Servers'][$i]['table_coords'] = 'pma_table_coords';
$cfg['Servers'][$i]['pdf_pages'] = 'pma_pdf_pages';
$cfg['Servers'][$i]['column_info'] = 'pma_column_info';
$cfg['Servers'][$i]['history'] = 'pma_history';
$cfg['Servers'][$i]['tracking'] = 'pma_tracking';
$cfg['Servers'][$i]['designer_coords'] = 'pma_designer_coords';
Теперь можно набирать в браузере http://localhost/phpmyadmin/ и авторизовываться.
Решение проблем при установке phpMyAdmin
1. При открытии браузером phpMyAdmin не открывается, а предлагает скачать страницу.
Решение – настроить поддержку php на http сервере. В apache модуль php подключается в httpd.conf строками,
LoadModule php5_module modules/libphp5.so
само собой php должен быть установлен 🙂 После изменения httpd.conf перезагрузить apache сервер
2. При попытки авторизоваться возникает ошибка:
#2002 Невозможно подключиться к серверу MySQL
Решение – проверьте запущен ли MySQL сервер через консоль командой
mysql -u user -p
Если пользователь нормально авторизуется, то проверьте права на файл mysql.sock. Права на файл должны быть 777.
3. После авторизации возникает ошибка:
Невозможно загрузить расширение mcrypt! Проверьте настройки PHP.
Решение – убедитесь что в вашей системе установлено приложение mcrypt и библиотека libmcrypt, а модуль php для http сервера был собран с переменной
--with-mcrypt
4. После авторизации возникает ошибка:
При работе с многобайтными кодировками без установленного расширения PHP “mbstring”, phpMyAdmin не в состоянии производить корректное разбиение строк, что может привести к непредсказуемым результатам. Установите расширение PHP “mbstring”.
Решение – пересобрать модуль php для http сервера с параметром
--enable-mbstring
или раскомментировать в php.ini строку
extension=mbstring.so
5. После авторизации в phpMyAdmin видим предупредение:
При cookie-аутентификации, в конфигурационном файле необходимо задать парольную фразу установив значение директивы $cfg[‘blowfish_secret’].
Решение – в файле конфигурации phpMyAdmin – config.inc.php задать пароль в строке
$cfg['blowfish_secret']
6. После авторизации в phpMyAdmin видим предупредение:
Дополнительные возможности для работы со связанными таблицами недоступны. Для определения причины нажмите здесь.
Решение – либо не установлена база данных phpMyAdmin, либо не раскомментированы строки для этой базы в файле config.inc.php. Как это делать смотрите пункты 3,4,5 из установка из исходников
Если у вас есть или были другие ошибки при установке, настройке то прошу отписываться в комментах, будем дополнять..
при попытке авторизоваться просто снова показывает чистую форму для авторизации и так снова и снова. Может быть расскажете где хранятся пароли и логины пользователей при cookies авторизации
Денис Иванов
Попробуй установить/поменять пароль админа мускул сервера
[code] mysqladmin password новый пароль[/code]
не заходит на localhost/phpmyadmin пишет что страница отсутчвует что делать?
а вот так localhost/phpmyadmin/ на конце “/”. В apache так бывает 🙂
после установки запускаю phpmyadmin, а вместо авторизации выдаёт
The mysqli extension is missing. Please check your PHP configuration.
я какие тока инструкции по установке не просмотрел, сколько раз не переустанавливал – тот же баян
так это скорей всего у вас php собран без поддержки mysql. Сделайте тестовую страницу test.php
для проверки как собран php. Должна быть опция –with-mysql и указывать на правильный каталог с mysql
Добрый день. Установил Xampp 1.8.0 на ubuntu, затем установил mysqlserver и задал пароль – после чего phpmyadmin перестал работать
Ошибка
Ответ MySQL: Документация
#2002 – No such file or directory
Сервер не отвечает (либо локальный сокет сервера MySQL неверно настроен).
Ошибка при указании соединения для controluser в конфигурации.
Открыть phpMyAdmin в новом окне , после в config.inc.php записал пароль, поменял true на false, но проблема не решилась…)
ну а как в статье написано при данной ошибке пробовали сделать
mysql -u user -p
Доброго времени суток!
Не подскажете – установила сборку денвера, запускаю его, у меня выскакивает окошко с путем на mysql и быстро закрывается. В нем команды писать нельзя.
PHPAdmin не запускается, пишет 2002 ошибку. Версия в папке имеет расширение 5.5. Как запустить mysql, который работает под денвером и убрать ошибку?
Еще я установила по учебнику EASYPHP 3.0, запустила его через cmd. Там команды получается создавать. Причем иногда параллельно пускает в PHPAdmin но внизу подписывает, что есть какая-то разница в версиях. Можно ли эту 3.0 удалить или уже нельзя потому что я под ней создавала таблицы.
с уважением, баба зина.
Предлагаю взглянуть на хороший и бесплатный инструмент — Valentina Studio 5.x, который вышел буквально пару месяцев назад. Я юзаю уже месяц – до сих пор нахожу новые фишки.
http://www.valentina-db.com/valentina-studio-overview
Всем привет !
у меня такой вопрос:
при попытки зайти на главную страницу phpmyadmin пишет вот что:
—————————————————————————————————–
Ошибка
SQL-запрос: Изменить
SELECT `tables`
FROM `phpmyadmin`.`pma_recent`
WHERE `username` = ‘root’
Ответ MySQL:
#1146 – Table ‘phpmyadmin.pma_recent’ doesn’t exist
—————————————————————————————————–
– хотя физически существует о_О
как быть ? что делать ?
Статья уже устарела 🙁
если не делали то попробовать заново сделать создание таблиц из каталога examples/create_tables.sql.
Если не поможет то вниматеьно выполнить все шиги из http://php-myadmin.ru/learning/instrument-pma.html. Там еще пользователя pma создать надо.
Я накуролесил со временем действия сессии, и теперь она у меня длится 1 секунду, и, соответственно, не могу зайти в phpmyadmin и и изменить этот параметр. Подскажите пожалуйста, в каком файле хранятся настройки времени действия сессии?
попробуйте в config.inc.php поменять параметр $cfg[‘LoginCookieValidity’]. Ставьте больше 1800.
Все прекрасно работало, а в очередной раз попыталась зайти в одну из таблиц базы данных он мне пишет: Ответ MySQL: Документация
#2002 – ����������� �� �����������, �.�. �������� ��������� ������ ������ �� �����������.
Сервер не отвечает (либо локальный сокет сервера MySQL неверно настроен).
Причем данная таблица раньше открывалась, а сейчас нет….
Что это?
А пробовали пути решения что написаны у меня. Через консоль соединяет? lock файл на месте и с нужными правами?
все на месте и не чего….. все побывала. что за глюк? причем не чего не трогала….
ну что за глюк я вас не скажу.
Значит я правильно вас понял, вы убедились в наличии прав 777 на сокет файл, попробовали соединиться локально и все хорошо..
сделайте тестовую страницу на сервере phpinfo.php
< ?php phpinfo() ?>
откройте страницу и посмотрите куда ссылается переменная MYSQL_SOCKET .
Здравствуйте. При создании новой базы данных создал нового пользователя с ALL PREVILEGIES а на root пользователей ( их 3 ) поставил пароли и отменил все привилегии.В итоге выдает вот такую ошибку – #1045 – Access denied for user ‘root’@’localhost’ (using password: NO) .
Помогите пожулуйсто, 1.5 месяца работы уйдет в топку.(
То что для root пользователя отменили все привилегии это не очень хорошо. Попробуйте все вернуть как было и проверить заход в базу через командную строку для пользователя, что создали и для root пользователя.
Лучше всетаки придерживаться правил, что root пользователь главный для mysql со сложным паролем, а для разных баз создавать пользователей с правами ALL PREVILEGIES для конкретных баз.
Надеюсь в конфиге phpmyadmin все поменяли для нового пользователя?
Как это все вернуть как было?В phpmyadmin вообще не заходит а как с командной строки это делать я совсем не знаю.
Хотел сайт обезопасить…Дообезопасил мать его…
Добрый человек,помоги пожалуйста.
Я подумал, что вы просто пароль root сломали, а вашему пользователю на сайт дали все полномочия. Если это так то можно залогиниться в phpmyadmin не root а пользователем сайта и сделать все что надо пользователю root.
Если это не сработало, то теперь поможет только командная строка из ssh консоли. Там много нюансов в зависимости от ситуации как вы поломали пароли. Я вот сейчас глянул инет, самое толковое это посмотреть статью о mysql для сбросов паролей. http://www.youisbee.ru/howto/mysql/66-ustanovka-izmenenie-i-sbros-parolya-root-v-mysql.html
Вот сейчас подумал, что если у вас какой-то дешевый хостинг и нет доступа к ssh то это не поможет и надо просить техподдержку установить пароль и привелегии root на БД.