Меню

Настройка доступа к mysql для phpmyadmin



Удалённое управление MySQL с помощью phpMyAdmin

Если вы проектируете веб-сайты, используя для хранения информации базу данных, то с высокой долей вероятности вы работаете с MySQL. Вы можете управлять своей базой данных из командной строки, но это не слишком удобно. Использование графического инструмента phpMyAdmin помогает решить эту проблему, но не все веб-хостеры предлагают его или позволяют установить его на сервер. К счастью, вы можете установить его на свой собственный компьютер и одновременно управлять различными MySQL-базами удалённо, без необходимости ставить что-то ещё.

phpMyAdmin является программой с открытым кодом, написанной (как нетрудно догадаться) на PHP. Она позволяет вам решать самые разнообразные задачи по администрированию MySQL через веб посредством простого графического интерфейса. Если вам нужно сделать что-то, не предусмотренное этим интерфейсом, phpMyAdmin позволяет вернуться к непосредственному использованию MySQL-команд, так что вы всегда сможете выполнить любую задачу, независимо от её сложности. Это ПО доступно для большинства дистрибутивов, переведено более чем на 50 языков и распространяется под GPL.

Установка и настройка

Прежде чем приступать к установке phpMyAdmin, у вас уже должен быть установлен Apache. В этой статье я предполагаю, что html-файлы веб-сервера размещаются в /src/www/htdocs (другой общепринятый каталог — /var/www/html ) и что Apache запускается от имени пользователя wwwrun , входящего в группу www . Детали конфигурации для html-файлов сохраняются в файле default-server.conf , а всё, что касается пользователя и группы — в uid.conf .

Если phpMyAdmin есть в репозитариях вашего дистрибутива, вы можете установить его с помощью вашего менеджера пакетов. В моём случае, поскольку я предпочитаю Smart , я просто запустил команду smart install phpMyAdmin . Если последней версии в ваших репозитариях нет, зайдите на страницу загрузки phpMyAdmin и скачайте подходящую версию. (Для многоязычной установки я рекомендую файл all-languages.tar.gz ; если вам хватает английского, попробуйте english.tar.gz .) После загрузки этого файла выполните от имени пользователя root следующую команду:

(Не забудьте подправить при необходимости имя архива и путь к каталогу.) Для изменения настроек phpMyAdmin вам придётся редактировать файл config.inc.php , синтаксис которого трудно назвать слишком дружелюбным. Вы можете обратиться к онлайновой документации , но в данном случае вам нужно будет подправить лишь несколько строк. Откройте файл и найдите группу строк, начинающихся с $cfg[‘Servers’][$i] ; отредактируйте следующие строки (замечание: они могут перемежаться с другими параметрами или располагаться в другом порядке, чем показано здесь):

Для каждого сервера, которым вы хотели бы управлять удалённо, скопируйте все показанные выше строки, включая $i++; , и вставьте их в файл конфигурации: в конечном итоге, вы должны получить подобную группу строк для каждого сервера. Имейте в виду, что указанные вами пользователи MySQL должны обладать правами на удалённый доступ к соответствующим базам данных. Эти права (для каждой базы) должны быть предоставлены администратором ещё до подключения к базе.

Другие решения

Пакет MySQL Tools , предоставляемый самой MySQL AB (ныне приобретённой Sun ), включает в себя MySQL Administrator и MySQL Query Browser — отдельные программы, которые также способны подключаться к удалённым хостам. В настоящее время инструмент миграции существует только для Windows.

Если на удалённом сервере, к которому вы подключаетесь, есть Webmin , вы можете воспользоваться его модулем конфигурации MySQL для управления базой данных. Однако имейте в виду, что вы не сможете осуществлять все действия по управлению базой данных с помощью одной этой программы — Webmin позволяет работать только лишь с сервером на этой же машине.

Наконец, для простых задач можно попробовать phpMinAdmin , которая является минималистической версией phpMyAdmin. Она меньше по размеру и даже немного быстрее, но её функциональность заметно урезана — вам наверняка придётся прибегать к SQL чаще, чем хотелось бы.

phpMyAdmin поддерживает три метода аутентификации ( ‘auth_type’ в конфигурационном файле). Метод аутентификации » config » — наиболее простой: он позволяет вам подключаться к серверу, не вводя вообще ничего, имя пользователя и пароль будут взяты непосредственно из файла конфигурации. (Другие два метода, » cookie » и » http «, вынуждают вас вводить имя пользователя и пароль при каждом подключении к базе данных.) Этот метод нельзя назвать слишком безопасным, но поскольку вы будете работать с удалённым сервером со своей собственной машины, это не представляет собой особую проблему — предполагается, что сервер уже достаточно защищён. Тем не менее, при желании вы можете защитить свою инсталляцию phpMyAdmin, используя соответствующий файл .htaccess .

Использование phpMyAdmin

Установив phpMyAdmin, при входе на стартовую страницу вы сможете выбрать сервер, с которым хотите поработать, из выпадающего списка. Все стандартные функции phpMyAdmin будут доступны, и единственное отличие, которое вы сможете заметить (сравнивая работу через phpMyAdmin с локальным подключением) — это небольшая задержка, вызванная передачей данных по сети. Вы сможете удалённо выполнять любые задачи администрирования, включая создание или изменение базы данных, её восстановление и выполнение запросов.

Читайте также:  Настройка прав доступа через ntfs

В сети можно найти массу документации по использованию phpMyAdmin — просто обратитесь к Google, а также можно приобрести книгу Mastering phpMyAdmin 2.8 for Effective MySQL Management , изданную Packt Publishing.

Итак, удалённо работать в базами MySQL очень просто, и вам даже не нужно ставить какие-то программы на другие серверы. phpMyAdmin предоставляет простой графический интерфейс, позволяющий выполнять большинство задач администрирования.

Источник

Работа с базой данных. MySQL

MySQL и phpMyAdmin

Как правило, в качестве хранилища данных используются базы данных. PHP позволяет использовать различные систему управления базами данных, но наиболее популярной на сегодняшний день в связке с PHP является MySQL. MySQL представляет бесплатное программное обеспечение, позволяющее взаимодействовать с базами данных с помощью команд языка SQL. Ранее уже рассматривался процесс установки и настройки MySQL.

Чтобы упростить себе работу с базами данных MySQL установим специальный набор скриптов phpMyAdmin. phpMyAdmin представляет интуитивный веб-интерфейс для управления базами данных MySQL. Используя данный инструмент, гораздо легче работать с базами данных, чем управлять MySQL через консоль.

Для установки phpMyAdmin загрузим архив и распакуем в папку C:\localhost, где находятся документы для php. Распакованную папку переименуем для краткости в phpMyAdmin .

В распакованном каталоге phpMyAdmin создадим файл config.inc.php со следующим содержанием:

И чтобы убедиться, что все настроено правильно, в браузере перейдем к phpMyAdmin, например, http://localhost:8080/phpmyadmin :

В левой колонке можно увидеть все имеющиеся базы данных на сервере MySQL. Даже если вы еще не создавали никакие базы данных, на сервере уже имеется некоторый набор баз данных по умолчанию.

В правой части интерфейса phpMyAdmin содержатся основные инструменты управления базами данных, а также различная конфигурационная информация.

Создание базы данных MySQL в phpMyAdmin

Чтобы обмениваться данными с сервером MySQL (сохранять, изменять, удалять, получать данные), нам естественно нужна база данных. Создать базу данных мы можем из консоли MySQL, а также из визуального интерфейса phpMyAdmin.

Откроем интерфейс phpMyAdmin. Перейдем на вкладку Базы данных . Под меткой Создать базу данных введем какое-нибудь имя для новой бд, например, compstore и нажмем на кнопку «Создать».

И после этого мы получим сообщение об успешном создании новой бд, и она будет добавлена в списки баз данных.

Новая база данных пока пуста и не содержит ничего. Добавим в нее таблицу, которая будет хранить данные. Для этого нажмем на название базы данных и мы попадем на вкладку «Структура», где нам будут предложены опции новой таблицы. В поле «Имя» введем название новой таблицы. Пусть, таблицы будет хранить данные о моделях смартфонов, поэтому введем название «phones», а в качестве количества столбцов введем цифру 3:

Для создания таблицы нажмем на кнопку «Вперед». После этого у нас появится набор ячеек для установки параметров столбцов. Укажем последовательно для имен столбцов следующие: id, name, company. В качестве типа укажем для столбцов id тип INT , а для столбцов name и company — тип VARCHAR . Для столбцов name и company в поле «Длина/Значения» укажем число 200 — оно будет указывать максимальную длину строки в символах. Также для столбца id укажем в поле «Индекс» PRIMARY а в поле «A_I» (AutoIncrement) поставим галочку:

Таким образом, таблица будет иметь столбцы для уникального идентификатора, названия телефона и названия производителя. И затем нажмем внизу на кнопку «Сохранить».

После создания таблицы мы сможем увидеть в колонке баз данных таблицу и ее столбцы:

Это не единственный способ создания таблиц в phpMyAdmin, так как здесь мы можем управлять базой данных с помощью запросов SQL. Так, выделим в списке баз данных нашу базу и перейдем на вкладку «SQL». Она отображает поле для ввода команды на языке запросов SQL. Введем в него следующую команду:

Это стандартная команда создания таблицы на языке SQL. После ключевых слов CREATE Table идет название создаваемой таблицы, а затем в скобках идут через запятую определения столбцов.

Каждое определение столбцов содержит имя столбца, его тип и ряд дополнительных значений. Например, в определении столбца id ( id INT NOT NULL AUTO_INCREMENT PRIMARY KEY ) указывается имя столбца, тип — INT, а также то, что столбец обязательно должен иметь значение — NOT NULL, что его значение будет автоматически увеличиваться на единицу с добавлением нового объекта — AUTO_INCREMENT, и что он играет роль первичного ключа — PRIMARY KEY.

В целом создаваемая таким образом таблица будет равносильна той, что была создана ранее. Нажмем кнопку «Вперед», и будет создана вторая таблица phones1.

Источник

Минимальная настройка phpmyadmin для открытого запуска

Данная статья входит в цикл статей, посвященных установке веб сервера на windows.

Установка веб сервера на windows
Настройка и защита apache под windows
Бесплатный ДНС сервер
Настройка php
Настройка mysql
Настройка phpmyadmin (эта статья)
Настройка sendmail
Настройка ftp сервера FileZilla

Если вы ставили сервер с помощью xampp, то в комплекте сразу имеется phpmyadmin.
Попасть в него можно так http://localhost/phpmyadmin или через любой ваш прописанный домен
http://домен/phpmyadmin
Если устанавливали phpmyadmin отдельно, то путь к нему возможно будет другой, вам виднее куда ставили.

Доступ в phpmyadmin осуществляется через пользователей базы данных, используя их логины и пароли. Сразу после установки в базе будет создан пользователь root без пароля, имеющий полный административный доступ к базе данных.
По умолчанию phpmyadmin настроен на работу именно с пользователем root без пароля, поэтому вход в phpmyadmin происходит без ввода логина и пароля с максимальными правами.

Естественно, в первую очередь нужно установить пароль пользователю root.
Заходите в phpmyadmin и нажимайте на вкладку «Привилегии«.
Тут вы должны увидеть минимум двух пользователей «pma» и «root»
Примерно так

Пользователь pma необходим для phpmyadmin для его внутренних административных целей.
По умолчанию он тоже без пароля, поэтому пользователю pma тоже нужно поставить пароль.
Именно с пользователя pma лучше и начать.
Нажимайте на иконку редактирования привилегий возле пользователя pma

Когда войдете в редактирование привилегий пользователя, никакие галочки не трогайте, все оставьте как есть, только добавьте пароль и нажмите ОК

Теперь снова вернитесь к пользователям в Привелегии и точно так же смените пароль пользователю root.
Обратите внимание, после того как вы установите пароль пользователю root вы больше не сможете войти в phpmyadmin без пароля, доступ сразу же будет закрыт .
Поэтому запомните пароль.

Теперь начинаем настраивать phpmyadmin.

Редактировать настройки phpmyadmin будем с помощью файла config.inc.php, который находится в папке с установленным phpmyadmin.
Я расскажу о наиболее важных настройках, если каких-то параметров вы не найдете в файле настроек, можете добавить их.

Начнем с авторизации и входа.
В конфиге за это дело отвечают следующие переменные

$cfg[‘Servers’][$i][‘auth_type’] = ‘config’;
$cfg[‘Servers’][$i][‘user’] = ‘root’;
$cfg[‘Servers’][$i][‘password’] = »;
$cfg[‘Servers’][$i][‘AllowNoPassword’] = true;

$cfg[‘Servers’][$i][‘auth_type’]
Это тип авторизации.
Если значение ‘cookie’, то логин и пароль будет запрашиваться при входе в phpmyadmin.
Если значение ‘config’, то логин и пароль для доступа к базе нужно прописать в этом конфиге в переменных
$cfg[‘Servers’][$i][‘user’]
$cfg[‘Servers’][$i][‘password’]
и входить можно будет не указывая логин и пароль.
При авторизации ‘cookie’ прописывать логин и пароль здесь не нужно.

$cfg[‘Servers’][$i][‘AllowNoPassword’] = true;
Разрешение входить под пользователями без установленных паролей.
Эту переменную лучше установить в false, тем самым запретить входить под пользователями без установленных паролей.

Дальше нужно прописать пароль для пользователя pma, чтобы phpmyadmin мог соединяться со своей базой

$cfg[‘Servers’][$i][‘controluser’] = ‘pma’;
$cfg[‘Servers’][$i][‘controlpass’] = »;
Это переменные логин и пароль для pma. Пропишите в controlpass пароль, который указали.

$cfg[‘blowfish_secret’] = ‘xampp’;
Это любая произвольная фраза-ключ для шифрования паролей в куках.
Желательно изменить стандартную фразу.
Если этой переменной у вас нет, добавьте ее.

Остальные настройки можно оставить по умолчанию, этих настроек хватит, чтобы phpmyadmin был открыт для доступа из интернета.

Другие статьи посвященные запуску сервера на windows

Установка веб сервера на windows
Настройка и защита apache под windows
Бесплатный ДНС сервер
Настройка php
Настройка mysql
Настройка phpmyadmin (эта статья)
Настройка sendmail
Настройка ftp сервера FileZilla

Комментарии

16.08.2010 Tigrusha
а ешё надо root паминять для тех кто не знает как ишем 2 файлика config.inc и config.inc.php в папки phpMyAdmin ишим /* Authentication type and info */
$cfg[‘Servers’][$i][‘auth_type’] = ‘config’;
$cfg[‘Servers’][$i][‘user’] = ‘root’;
$cfg[‘Servers’][$i][‘password’] = »;
$cfg[‘Servers’][$i][‘AllowNoPassword’] = true;
и миня ем на сваего ползывателя ток сначала в бази саздть не забудте

09.01.2011 serdjuzz
подскажите пожалуйста:
когда набираю в браузере(Chrome и IE пишут:
Веб-страница по адресу http://localhost/phpmyadmin, возможно, временно недоступна или постоянно перемещена по новому адресу.
Дополнительная информация об этой ошибке
Исходное сообщение об ошибке показано ниже
Ошибка 101 (net::ERR_CONNECTION_RESET): Неизвестная ошибка.

что не так ?
спасибо

09.01.2011 serdjuzz
вот всегда так )))
спросишь и разберешься )))
спасибо, хелп ваш зрелый = это я туплю

20.01.2011 Алексей
Спасибо за такой мануал! Очень все подробно и качественно написано. Вот единственное что у меня не получилось сделать, так это чтобы phpMyadmin могли заходить из инета (работает тока по локалке). При наборе в браузере http://имя сайта/phpmyadmin — выдает ошибку:
New XAMPP security concept:
Access to the requested object is only available from the local network.

This setting can be configured in the file «httpd-xampp.conf».

Вижу что копать надо в файле «httpd-xampp.conf» но не знаю что поправить.

Админ, не подскажешь? Заранее спасибо.

21.01.2011 админ
Алексей, в статье «Настройка и защита apache под windows» я коснулся этой темы.

Смотрим самый конец статьи.
Цитирую

===============
В последних версиях xampp доступ к административным скриптам возможен только при локальном входе, внешний доступ закрыт, phpmyadmin тоже доступен только локально.
Если хотите открыть внешний доступ для phpmyadmin или другим стандартным скриптам, опять смотрим файл
/xampp/apache/conf/extra/httpd-xampp.conf
Тут есть подобная конструкция

Эта конструкция и запрещает доступ снаружи, конечно сам запрет находится внутри этой конструкции, но если вам нужно открыть внешний доступ например для phpmyadmin, то просто удалите его из этого списка.
==============

То есть из строки

удалите phpmyadmin

14.03.2011 Андрей
Когда я прописываю у себя http://localhost/phpmyadmin/ то мне выдаёт ошибку Не удалось установить подключение для пользователя указанного в директиве controluser, с помощью параметров определенных в конфигурационном файле config.inc.php . Помогите пожалуйста!

15.03.2011 админ
Андрей, речь идет про пользователя pma.
Не правильно указаны логин или пароль для pma.
В файле настроек нужно указать для него логин пароль, если вы его меняли.
$cfg[‘Servers’][$i][‘controluser’] = ‘pma’;
$cfg[‘Servers’][$i][‘controlpass’] = »;

26.05.2011 Дмитрий
После всех настроек phpAdmin вообще перестал открываться. На нажатия кнопки в панели не реагирует. После ввода в командную строку в локале выдает ошибку 403 и «доступ закрыт». Извне так же ошибка. Куда копать? Все настроено в строгости с вашей инструкцией.

27.05.2011 Админ
Дмитрий, скорее всего в настройках сервера что-то сделали.
403 это скорее всего направлен запрос на каталог, который не имеет индексного файла и в настройках сервера запрещен листинг файлов.
Мне кажется, что где то в настройках апача прописали не верный путь до phpmyadmin.

27.05.2011 Дмитрий
в общем перепроверил все по новой и выяснил такую штуку. Если в файле
/xampp/apache/conf/extra/httpd-xampp.conf
убрать параметр phpmyadmin из строки

.

То все.. phpmyadmin становится недоступным вообще. Ни из локала, ни снаружи. В файле hosts все прописано, что нужно. пути все правильны.

Правда еще одну ошибку выдавало:
В файле php.ini если прописать директорию D:/xampp/, то выдавало ошибку. Оказалось нужно прописывать D:\xampp\. В этом файле половина путей прописана со слэшами то в одну, то в другую сторону. Может сборка 1.7.4 не оттестирована подобающим образом?

30.05.2011 админ
Дмитрий, вот со слешами странная ситуация.
Действительно есть такая проблема, слеши в разные стороны.
У некоторых это вызывает проблемы, у некоторых нет.
У некоторых работают слеши в одну сторону, у некоторых в другую.
А у многих работают все слеши.
Почему такая ерунда с этими слешами, я не могу понять

10.08.2011 Олег
Установил, сделал защиту, настроил php,mysql,phpmyadmin, мне больше пока не надо так вот появилось такое
Access forbidden!

You don’t have permission to access the requested directory. There is either no index document or the directory is read-protected.

If you think this is a server error, please contact the webmaster.
Error 403
localhost
10.08.2011 23:38:10
Apache
в phpmyadmin могу зайти, но что делать не знаю. помогите пожалуйсто.

11.08.2011 Олег
А да забыл добавить что все работало пока я не перезагрузил Apache

22.08.2011 Виктор
Олег, в настройках значит стоит запрет на чтение директории без индексного файла или еще где то запрет.
Но это уже надо смотреть все по месту, так сложно сказать почему запрещен доступ к директории.

21.09.2011 максим
поменял пароль на root и способ входа установил cookie
Теперь при входе в а вадминку выдает ошибку
Error

MySQL said: Documentation
#1130 — Host ‘localhost’ is not allowed to connect to this MySQL server
Connection for controluser as defined in your configuration failed.
phpMyAdmin tried to connect to the MySQL server, and the server rejected the connection. You should check the host, username and password in your configuration and make sure that they correspond to the information given by the administrator of the MySQL server.

02.09.2012 Антон
Здравствуйте! столкнулся с такой же проблемой как Дмитрий
» Если в файле
/xampp/apache/conf/extra/httpd-xampp.conf
убрать параметр phpmyadmin из строки

.

То все.. phpmyadmin становится недоступным вообще. Ни из локала, ни снаружи. В файле hosts все прописано, что нужно. пути все правильны.»
не подскажите как быть и что и как исправить надо что бы работало все

15.01.2013 zenon
отличная статья, спасибо

20.02.2013 Gannibal
Подскажите пожалуйста а как удалить правельно те что на скрине выделил стрелками.

10.02.2014 Кривая статья
После установки пароля нет доступа к админке. Проще в 10 раз на время НЕ использования phpmyadmin папку хамрр перемещать в другой директорий. И никто в жизни ее не найдет.

26.07.2016 Евгений
Типичная абсолютно бесполезная статья, написаная непонятно кем и непонятно для чего!

«Зайдите во вкладку Привилегии. » А вот НЕТ ТАКОЙ ВКЛАДКИ в PHPmyadmin. НЕТ И ВСЁ! Нахрена писать такие статьи.

Я потому и начал искать материалы, что эта тупая программа впринципе не содержит в интерфейсе ничего похожего на настройки доступа. И автор этой «статьи» ничем не помог.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Настройка техники © 2021
Внимание! Информация, опубликованная на сайте, носит исключительно ознакомительный характер и не является рекомендацией к применению.

Adblock
detector