Как подключиться к phpmyadmin через php
Перейти к содержимому

Как подключиться к phpmyadmin через php

  • автор:

Подключение к PhpMyAdmin

Для подключения к PhpMyAdmin воспользуйтесь одной из следующих инструкций в зависимости от используемого решения:

Putty Терминал Linux или Mac OS

В целях безопасности phpMyAdmin доступен только в случае, когда в имени хоста указывается «127.0.0.1». Чтобы получить к нему доступ удаленно, необходимо создать SSH -туннель, который направляет запросы на веб-сервер 127.0.0.1.

  • Убедитесь, что запущен SSH-сервер , а также сервера Apache и PostgreSQL .
  • В примерах ниже для создания SSH-туннеля используется порт 8888. Если он занят другим приложением, замените его на любой другой порт, номер которого больше 1024. Или, если вы включили перенаправление на Varnish или HTTPS , веб-сервер вашего стека доступен через порт 81 (Varnish) или порт 443 ( SSL ).

Для подключения к phpMyAdmin через SSH-туннель нужен SSH-клиент. Рассмотрим подключение через PuTTY — бесплатный SSH-клиент для платформ Windows ® и UNIX.

  1. Настройте SSH-клиент (см. Подключение к серверу по SSH ).
  2. Перейдите в раздел Connection → SSH → Tunnels .
  3. В поле Sourсe port укажите «8888», а в поле Destination — «localhost:80». Если вы перенаправляете HTTP -запросы на порт HTTPS, в Destination нужно указать «443» вместо «80».
  4. Нажмите Add , чтобы добавить настройки безопасного туннеля в сессию. Порты появятся в списке Forwarded ports.
  5. Перейдите в раздел Session .
  6. Нажмите Save .
  7. Нажмите Open , чтобы открыть SSH-сессию с сервером. SSH-сессия будет создавать защищенный SSH-тунель между двумя указанными портами.
  8. Перейдите по ссылке http://127.0.0.1:8888/phpmyadmin , чтобы получить доступ к консоли управления phpMyAdmin через созданный SSH-туннель.
  9. Войдите в phpMyAdmin, используя учетные данные:
    • пользователь — «root»;
    • пароль — пароль root-пользователя (см. Получение учетных данных и IP-адреса приложения ).
  10. Если не получается получить доступ к phpMyAdmin, убедитесь, что SSH-туннель создан. Проверьте журнал событий PuTTY, через меню Event Log . ../_images/s__event-log-1.png../_images/s__event-log-2.png

В целях безопасности phpMyAdmin доступен только в случае, когда в имени хоста указывается «127.0.0.1». Чтобы получить к нему доступ удаленно, необходимо создать SSH -туннель, который направляет запросы на веб-сервер 127.0.0.1.

  • Убедитесь, что запущен SSH-сервер , а также сервера Apache и PostgreSQL .
  • В примерах ниже для создания SSH-туннеля используется порт 8888. Если он занят другим приложением, замените его на любой другой порт, номер которого больше 1024. Или, если вы включили перенаправление на Varnish или HTTPS , веб-сервер вашего стека доступен через порт 81 (Varnish) или порт 443 ( SSL ).
  1. Откройте терминал в ОС Linux или Mac OS X .
  2. Чтобы получить доступ к серверу через определенный порт по SSH-туннелю, необходимо знать IP-адрес сервера (см. Получение учетных данных и IP-адреса приложения ) и иметь SSH-ключ в формате .pem .
  3. Выполните команду для настройки SSH-туннеля.
ssh -N -L 8888:127.0.0.1:80 -i KEYFILE bitnami@SERVER-IP
  • KEYFILE — путь к файлу закрытого ключа (.pem);
  • SERVER-IP — публичный IP-адрес или имя хоста сервера.

Если вы перенаправляете HTTP -запросы на порт HTTPS, в Destination нужно указать «443» вместо «80».

Команда создаст SSH-туннель, но ничего не выведет на консоли сервера.

  • пользователь — «root»;
  • пароль — пароль root-пользователя (см. Получение учетных данных и IP-адреса приложения ).

Установка phpMyAdmin 3.5.0

Статья описывает процесс установки и первоначальной настройки на локальном компьютере, работающим под операционной системой Windows XP, прекрасно зарекомендовавшей себя связки программ, используемых при создании, как крупных, так и средних веб-проектов: Apache, MySQL, PHP и phpMyAdmin.

  • Предисловие
  • Установка MySQL 5.5.23
  • Установка PHP 5.3.10
  • Установка Apache HTTP Server 2.2.22
  • Установка phpMyAdmin 3.5.0
  • Послесловие, полезные ресурсы
  • Скачать статью в формате .pdf (596 Kb)

Вместо тестирования нашего хозяйства, предлагаю установить скрипт phpMyAdmin для управления базой данных MySQL. Если он будет работать, значит мы все сделали правильно и можем собой гордиться. Ну а если работать не будет, значит во всем виновато трудное детство и недостаток витаминов, на чем и порешим. ��

Остановите сервис Apache выполнив в командной строке «C:\Apache2\bin\httpd.exe -k stop», либо с помощью пакетного файла «stop-webserver.bat». Распакуйте архив в каталог «C:\apache\localhost\www\». Появившуюся папку, для большего удобства, желательно переименовать в «phpmyadmin». Далее, в каталоге «C:\apache\localhost\www\phpmyadmin» создайте файл «config.inc.php» следующего содержания (не забудьте вписать пароль пользователя «root», который вы создавали при установке MySQL):

$i = 0;
$i++;
$cfg[‘Servers’][$i][‘host’] = ‘localhost’;
$cfg[‘Servers’][$i][‘extension’] = ‘mysqli’;
$cfg[‘Servers’][$i][‘connect_type’] = ‘tcp’;
$cfg[‘Servers’][$i][‘compress’] = false;
$cfg[‘Servers’][$i][‘auth_type’] = ‘config’;
$cfg[‘Servers’][$i][‘user’] = ‘root’;
$cfg[‘Servers’][$i][‘password’] = ‘пароль’; // Пароль пользователя root
?>

Обратите внимание (!) , что при подключении мы указываем phpMyAdmin, использовать расширение «mysqli», так как установленный нами MySQL 5, и произведенные выше настройки PHP 5, позволяют полноценно работать с функциями данного расширения.

Далее откройте многострадальный httpd.conf и добавьте в блок начинающийся строкой:

Следующую строку:
Alias /pma «C:/apache/localhost/www/phpmyadmin»

Теперь запустите сервисы с помощью пакетного файла start-webserver.bat и введите в адресной строке браузера «localhost/phpmyadmin». Вы увидите основное окно скрипта phpMyAdmin для управления базами данных MySQL. Благодаря добавленной нами выше строке в конфигурационный файл Apache (так называемый алиас), мы также можем попасть в phpMyAdmin из любого хоста, для чего понадобится установить виртуальный хост и ввести в адресной строке браузера адрес вида: «имя хоста»/pma. Например: http://www.test.ru/pma.

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

Для установки расширения сперва необходимо создать базу данных «phpmyadmin» и импортировать в нее специально предназначенные таблицы, для чего выберите на главной странице ссылку «Import» («Импорт»), на открывшейся странице, в разделе «File to import» («Импортируемый файл») нажмите кнопку «Browse. » («Обзор. «), выберите файл «create_tables.sql», находящийся в каталоге «examples», и нажмите кнопку «Go» («OK»).

Следующим шагом необходимо создать специального пользователя с именем «pma» и наделить его соответствующими правами, для чего нажмите «Privileges» («Привилегии»), на открывшейся странице нажмите ссылку «Add a new User» («Добавить нового пользователя»), в разделе «Login Information» («Информация учетной записи») заполните поля следующим образом:

User name (Имя пользователя): pma
Host (Хост): localhost
Password (Пароль): придумайте пароль

Нажмите кнопку «Go» (OK).

На открывшейся странице, в разделе «Database-specific privileges» («Привилегии уровня базы данных») из ниспадающего меню «Add privileges on the following database:» («Добавить привилегии на следующую базу») выберите «phpmyadmin». Откроется следующая страница, где в разделе «Database-specific privileges» («Привилегии уровня базы данных»), в блоке «Data» («Данные»), поставьте галочки рядом с опциями: SELECT, INSERT, UPDATE, DELETE и нажмите «Go» («OK»).

И последнее что надо сделать – это вновь открыть конфигурационный файл phpMyAdmin «config.inc.php» и добавить несколько новых директив. Все содержимое конфигурационного файла должно будет выглядеть примерно так:

$i = 0;
$i++;
$cfg[‘Servers’][$i][‘host’] = ‘localhost’;
$cfg[‘Servers’][$i][‘extension’] = ‘mysqli’;
$cfg[‘Servers’][$i][‘connect_type’] = ‘tcp’;
$cfg[‘Servers’][$i][‘compress’] = false;
$cfg[‘Servers’][$i][‘auth_type’] = ‘config’;
$cfg[‘Servers’][$i][‘user’] = ‘root’;
$cfg[‘Servers’][$i][‘password’] = ‘пароль’; /* Пароль пользователя root. */
$cfg[‘Servers’][$i][‘controlhost’] = ‘localhost’;
$cfg[‘Servers’][$i][‘controluser’] = ‘pma’; /* Имя созданного вами только что пользователя для доступа к расширенным таблицам. */
$cfg[‘Servers’][$i][‘controlpass’] = ‘пароль’; /* А здесь его пароль. */
$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’;
$cfg[‘Servers’][$i][‘userconfig’] = ‘pma_userconfig’;
$cfg[‘Servers’][$i][‘recent’] = ‘pma_recent’;
$cfg[‘Servers’][$i][‘table_uiprefs’] = ‘pma_table_uiprefs’;
?>

Теперь у вас будет возможность воспользоваться всеми дополнительными функциями скрипта phpMyAdmin.

Вот и всё. Полная установка и настройка скрипта phpMyAdmin – завершена, как и всего комплекса веб-разработчика в целом. Примите мои поздравления. И заметьте — никто не умер. ��

Подключение к БД phpMyAdmin

Не получается подключиться к базе данных, пробовал простейший запрос с выведением ошибки (приведен ниже) ничего не вышло. При попытке входа с корректными данными и некорректными ошибка не появляется. Вообще никаких действий не происходит

   Мой сайт   ?>  

С html я знаком чуть больше суток, возможно ошибся в какой-то совершенно очевидной и элементарной вещи. Файл открываю через localhost. Wamosercer 3.1.0 MySQL бд phpMyadmin Может быть кто-то таки поймет в чем моя ошибка?

Отслеживать
задан 6 дек 2017 в 12:26
Pavel Bobrov Pavel Bobrov
395 6 6 серебряных знаков 22 22 бронзовых знака

вы вероятно хотели вывести текст ошибки, но mysql_error() для ее получения вызвали а вот echo забыли сделать

6 дек 2017 в 13:08

mysql_error должен вывести ошибку «по умолчанию». Но и echo в if цикле я тоже попробовал вставлять. Эффекта никакого

Как подключиться к удаленной базе данных phpmyadmin

У меня есть сервер. На нем phpmyadmin. Я пытался подключиться к нему таким кодом:

$link = mysqli_connect("IP", "USER", "PASS", "DB"); 

Естественно там были настоящие ip, user, pass и db, я не настолько идиот. Но меня всеровно шлют очень далеко. Ошибок нигде нету, по этому думаю что нужно указывать не ip адрес, а что то другое. Но что?

vvediteima
29.11.20 19:04:23 MSK

Бывает, тоже хорошо.

Я пытался подключиться к нему таким кодом

vvn_black ★★★★★
( 29.11.20 19:13:20 MSK )

sigurd ★★★★★
( 29.11.20 19:13:30 MSK )
Последнее исправление: sigurd 29.11.20 19:15:22 MSK (всего исправлений: 1)

Ответ на: комментарий от sigurd 29.11.20 19:13:30 MSK

А еще он не нужен, ведь есть https://www.adminer.org/

anonymous
( 29.11.20 20:03:51 MSK )

пользователь обычно прописан для коннекта к 127.0.0.1. надо добавить другого пользователя.

CREATE USER drupal9db@localhost IDENTIFIED BY 'passwd'; Grant all privileges ON drupal9db.* TO 'drupal9db'@'localhost' IDENTIFIED BY 'passwd'; 

замените слова localhost и имя бд drupal9db.
jura12 ★
( 29.11.20 20:13:52 MSK )
Jopich1
( 30.11.20 10:52:46 MSK )

По умолчанию в нем отключен доступ снаружи, только локалхост. Нужно включить.

Zhbert ★★★★★
( 30.11.20 11:16:22 MSK )

Но меня всеровно шлют очень далеко

Если ошибок нигде нету, то как ты понял, что тебя шлют?

slowpony ★★★★★
( 30.11.20 12:11:03 MSK )

По моему задача недоопределена

Psilocybe ★★★★
( 30.11.20 13:15:16 MSK )
Ответ на: комментарий от slowpony 30.11.20 12:11:03 MSK

Бесконечный код. Я сделал вывод после каждой операции и на $link = mysqli_connect(«IP», «USER», «PASS», «DB»); просто зацикливание

vvediteima
( 30.11.20 20:25:47 MSK ) автор топика
Ответ на: комментарий от sigurd 29.11.20 19:13:30 MSK

Спасибо, а я то дурачок, не понимаю. Я же просто так захотел с помощью кода подключиться

vvediteima
( 30.11.20 20:40:26 MSK ) автор топика
Ответ на: комментарий от vvediteima 30.11.20 20:40:26 MSK

Я же просто так захотел с помощью кода подключиться

А нафига тогда информация про phpmyadmin? Если ты просто напрямую к серверу MySQL пытаешься подключиться? Перед тем, как вбивать данные в программу, неплохо бы их проверить консольным клиентом mysql. Он более внятно ругается!

sigurd ★★★★★
( 30.11.20 22:00:36 MSK )

Читай https://www.php.net/manual/ru/function.mysqli-connect.php Там, во первых, написано, что функция устанавливает подключение к Mysql, во вторых, пример кода, который выдает сообщение о ошибке, которое тебе и расскажет, что не так.

goingUp ★★★★★
( 30.11.20 23:56:32 MSK )
Ответ на: комментарий от goingUp 30.11.20 23:56:32 MSK

А слабо почитать предыдущие комментарии, и понять что у меня функция $link = mysqli_connect(«IP», «USER», «PASS», «DB»); длится бесконечно? Она не выдает ошибок

vvediteima
( 01.12.20 20:32:07 MSK ) автор топика
Ответ на: комментарий от sigurd 30.11.20 22:00:36 MSK

Я ввел в консоль mysql —host=[ip адрес сервера] -u root -p , ввел пароль, снова ничего не происходит, никаких логов

vvediteima
( 01.12.20 20:35:29 MSK ) автор топика

Тебе нужно настроить MySQL, чтобы был доступен порт сервера БД снаружи. Тогда ты сможешь подключиться к нему откуда угодно. Это может быть небезопасно.

anonymous8 ★★
( 01.12.20 20:39:30 MSK )

Ещё можешь прокинуть порт через ssh-туннель.

anonymous8 ★★
( 01.12.20 20:40:25 MSK )
Ответ на: комментарий от vvediteima 01.12.20 20:35:29 MSK

снова ничего не происходит, никаких логов

вот у меня:
подключение к серверу БД с несуществующим пользователем:

mysql -h 192.168.0.114 -u sig -p Enter password: ERROR 1045 (28000): Access denied for user 'sig'@'sighome.home' (using password: YES) 

Подключение к несуществующему серверу:

mysql -h 192.168.0.115 -u sig -p Enter password: ERROR 2002 (HY000): Can't connect to MySQL server on '192.168.0.115' (115) 

Надеюсь, на сервере открыт доступ из сети к MySQL (на самом MySQL и файрволе — порт 3306; проверить nmap ip_addres).
В MySQL настроен доступ пользователю root по сети?

sigurd ★★★★★
( 01.12.20 21:54:18 MSK )
Последнее исправление: sigurd 01.12.20 22:03:36 MSK (всего исправлений: 3)

Ответ на: комментарий от anonymous8 01.12.20 20:40:25 MSK

Ещё можешь прокинуть порт через ssh-туннель.

Для постоянки проще через stunnel

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

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