Что такое phpMyAdmin?

Kate

Administrator
Команда форума
phpMyAdmin - это инструмент для работы с базами данных MySQL и MariaDB через веб-интерфейс. Распространяется он абсолютно бесплатно и есть демо версия (Оф.сайт | Скачать ).

На сегодняшний день если не все, то большинство хостинг-провайдеров интегрировали phpMyAdmin на свои сервера, и потому будет очень полезно уметь им пользоваться.

Как безопасно войти в phpMyAdmin?​

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

1. С использованием приложения для двухфакторной авторизации:​

  • Google Authenticator. Можно ставить его как на iOS, так и на Android. Прост и удобен в использовании. Распространяется бесплатно. Главное не терять телефон, на котором установлено приложение, и помнить, что автоматического переноса аккаунтов между устройствами нет - придётся вручную добавлять аккаунт на новом телефоне.
  • Authy for iOS, Android, Chrome, OS X. По принципу работы аналогичен с Google Authenticator, но в нем уже учтены минусы того же Google Authenticator. К примеру, если таки потеряли телефон - вы сможете на нем деактивировать приложение дистанционно с другого авторизованного устройства. И конечно же, учтен автоматический перенос аккаунтов между приложениями на разных устройствах. К тому же это приложение тоже распространяется бесплатно. Одним словом, рекомендуем.
  • LastPass Authenticator for iOS, Android, OS X, Windows. Тут уже можно выбрать способ двухфакторной авторизации: получить код по SMS, вводом 6-значного кода или подтверждением кликом (на компьютере вводите логин и пароль в phpMyAdmin, а на телефон получаете уведомление с просьбой подтвердить или отклонить авторизацию). Тоже распространяется бесплатно.

2. Двухфакторная авторизация с использованием токена.​

phpMyAdmin поддерживает FIDO U2F токены. Вот несколько их разработчиков:

Этот вариант авторизации не относится к бесплатно распространяемым, что логично. В этом есть свои плюсы: это не телефон, поэтому вряд ли придётся носить с собой, что уменьшает риски потери устройства.

Также вы можете ограничить доступ к phpMyAdmin по ip либо из панели управления сайтом, необходимо уточнить у техподдержки хостинг-провайдера о такой возможности.

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

Как экспортировать базу данных?​

Как безопасно авторизоваться в phpMyAdmin разобрались, приступаем к экспорту базы данных:

1. С помощью phpMyAdmin​

1.1. Авторизовавшись в phpMyAdmin с левой стороны, вы увидите столбец с названием базы данных. На нее нужно кликнуть.

autorization


1.2. Чуть правее вверху будет кнопка “Экспорт”. Нажмите на нее.

eksport


1.3 На открывшемся окне выберите способ экспорта (рекомендуем быстрый) и нажмите на кнопку Ок. Сохраненный файл с расширением .sql ищите у себя на компьютере.

2. С использованием Cron-задач:​

Задание задачи:

mysqldump -h сервер_БД -u пользователь_БД - -password=пароль имя_БД > имя_файла.sql
где:

сервер_БД - MySQL-сервер, где размещена ваша база данных;

пользователь_БД - название существующего пользователя, с помощью которого происходит подключение;

пароль - пароль к БД, которую надо экспортировать;

имя_БД - название базы данных, которую необходимо экспортировать;

имя_файла.sql - задается имя файла, куда база данных будет экспортирована. Файл создается автоматически.

Это очень удобно, поскольку экспорт будет производиться по заданному вами графику и без вашего вмешательства. Обязательно обращайте внимание на то, что могут быть установлены ограничения на выполнения Cron-задач. О них вы сможете узнать или в разделе FAQ хостера, или же у его техподдержки.

В целом, могут быть и другие способы экспорта - все зависит от функционала панели управления сайтом, потому обращайте на это внимание.

Как импортировать базу данных?​

1. Импорт базы данных с помощью phpMyAdmin:​

1.1. Создайте базу данных и пользователя к ней на хостинге, где размещен или будет размещен ваш сайт.

1.2. Войдите в phpMyAdmin и слева в столбце выберите созданную вами БД.

155a3115e56be6c08d674f42030531d1.png


1.3. Вы попали в саму БД. Убедитесь, что она пуста:

baza-dannuh


1.4. Нажмите на "Импорт", выберите дамп своей базы данных и нажмите на ОК

Важно! База данных перед импортом обязательно должна быть пуста, в противном случае воспользуйтесь инормацией описанной далее.

2. Импорт через SSH-консоль

Важно! Необходимо уточнять о возможности подключения к серверу по SSH у техподдержки вашего хостинг-провайдера (или смотрите раздел FAQ). Также, для импорта базы данных таким способом необходимо использовать либо Putty для ОС Windows, либо терминал для ОС Linux.

2.1. Загрузите дамп базы данных по ftp на веб-сервер, где размещен ваш сайт.

2.2. Теперь надо подключиться к серверу по SSH и выполнить следующую команду:

mysql -h сервер_БД -u пользователь_БД -p имя БД< путь_к_файлу/файл_дампа_БД.sql
Таким способом можно импортировать базы большого объема.

Все о паролях в phpMyAdmin​

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

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

Если же вы забыли пароль для входа в phpMyAdmin, установленный вами на сервере хостера, то надо в корневом каталоге phpMyAdmin найти файл config.inc.php и и в нем найти строку ['password']=, в которой и будет указан нужный вам пароль.

Важно! Этот способ возможен только в случае ранее установленного способа авторизации в phpMyAdmin без запроса пароля (см. раздел "Установка phpMyAdmin")

Если же вы забыли пароль от root-пользователя (в случае, когда у вас собственный MySQL-сервер), то для его восстановления необходимо:

Для Windows систем:​

1. Будучи авторизованным на MySQL-сервере под root-пользователем остановите его: здесь Start/Control Panel/Administrative tools/Services находите MySQL-службу и останавливаете ее.

2. Создайте текстовый файл со следующим содержимым:2.1 MySQL 5.7.6 и более поздние версии:

ALTER USER 'root'@'db_server' IDENTIFIED BY 'NewPass';
Заменяет существующий пароль на тот, который хотите использовать (вместо NewPass надо указать новый пароль)

2.2 MySQL 5.7.5 и более ранние версии:

SET PASSWORD FOR 'root'@'db_server' = PASSWORD('NewPass');
3. Запускаем MySQl-сервер в командной строке:

C:\> cd "C:\Program Files\MySQL\MySQL Server 5.7\bin"
C:\> mysqld --init-file=C:\\mysql_init.txt
где mysql_init.txt - созданный вами в пункте 2 файл.

Сервер запустится, сменив пароль для root'@'db_server на указанный в файле mysql_init.txt.

Для того, чтобы ответ сервера был выведен в консоль, следует команду mysqld использовать с ключом --console.

Важно! После успешного запуска сервера, не забудьте удалить файл mysql_init.txt.

Теперь осталось остановить MySQL-сервер и запустить его с использованием нового пароля.

Если же у вас не получилось сменить пароль таким образом, то выполните следующие команды:

SET authentication_string = PASSWORD('NewPass'), password_expired = 'N'
WHERE User = 'root' AND Host = 'db_server';

Для Unix и Unix-подобных систем:​

1. Будучи авторизованным на MySQL-сервере под root-пользователем остановите его:

kill `cat /mysql_data_directory/host_name.pid`
где host_name.pid - название процесса, который нужно остановить

2. Создайте файл .txt, в котором укажите (актуально для 2.1 MySQL 5.7.6 и более поздних версий):

ALTER USER 'root'@'db_server' IDENTIFIED BY 'NewPass';
2.2 2.2 MySQL 5.7.5 и более ранние версии:

SET PASSWORD FOR 'root'@'db_server' = PASSWORD('NewPass');
Важно! Если вы авторизовались на сервере не под пользователем, который запускает MySQL-сервер, проверьте есть ли у него права на чтение этого файла.

3. Запускаем MySQL:

shell> mysqld --init-file=/home/me/mysql_init &
где /home/me/mysql_init - созданный вами файл

Важно! После успешного запуска сервера не забудьте удалить файл /home/me/mysql_init.

Если таким способом не удалось сменить пароль, то выполните следующую команду:

SET authentication_string = PASSWORD('NewPass'), password_expired = 'N'
WHERE User = 'root' AND Host = 'db_server';
А как восстановить пароль администратора сайта? Ответ зависит от CMS вашего сайта и полностью раскрыт здесь.

Установка phpMyAdmin​

1. Скачиваем phpMyAdmin. При выборе дистрибутива для скачивания обращайте внимание на то, с какой версией РНР и MySQL он взаимодействует (это все описано по ссылке выше).

2. Все содержимое загруженного дистрибутива phpMyAdmin переносим на сервер в корневой каталог, где он будет размещен.

Важно! Обязательно надо проверить все ли скрипты phpmyAdmin имеют те же права, что и другие службы на вашем сервере (скрипты PHP и т.д.). Если права будут разные, то могут возникнуть сложности в работе со службой.

3. Создаем файл config.inc.php и открываем его в обычном текстовом редакторе:

$cfg['Servers'][$i]['host'] = 'db_server';
для использования определенного MySQL-сервера вместо db_server надо указать ip этого сервера.

После настройки, если вы не хотите каждый раз вводить логин и пароль, добавьте это:

$cfg['Servers'][$i]['user'] = 'root'; //Ваш логин
$cfg['Servers'][$i]['password'] = 'cbb74bc'; // Пароль
$cfg['Servers'][$i]['auth_type'] = 'config';
Важно! Такой способ авторизации не является безопасным, ибо хранение пароля в конфиге не дает гарантии его сохранности.

В принципе, это всё, что может понадобиться добавить в конфиг (поскольку phpMyAdmin сначала запускает libraries/config.default.php, а потом уже config.inc.php), а полную документацию по настройке config.inc.php можно найти здесь Настройка config.inc.php.

Источник статьи: https://ru.hostings.info/schools/chto-takoe-phpmyadmin.html
 
Сверху