Как использовать Adminer для простого управления базами данных с помощью одного PHP-файла
Опубликовано: 2021-01-18Управление базами данных MySQL является одним из основных требований профессионального разработчика WordPress. Администратор значительно упрощает эту задачу.
Каждому сайту WordPress для работы требуется база данных — именно там WordPress хранит все важные данные ваших сайтов. Хотя phpMyAdmin уже много лет является основным инструментом управления базами данных MySQL/MariaDB, Adminer является отличной альтернативой. Он поставляется с множеством полезных функций и более красивым пользовательским интерфейсом, и все это в одном легком PHP-файле, который вы можете быстро развернуть на своем сервере.
В этом посте вы узнаете об Adminer, о многих преимуществах, которые он предлагает по сравнению с phpMyAdmin, и о том, как вы можете использовать его для управления своими базами данных. Мы также рассмотрим, как DevKinsta использует Adminer для упрощения управления базами данных WordPress в локальных средах разработки.
Давай приступим к работе!
Что такое администратор?
Adminer (ранее phpMinAdmin) — это бесплатный инструмент управления базами данных с открытым исходным кодом на основе PHP. Его очень просто развернуть на вашем сервере. Чтобы использовать его, все, что вам нужно сделать, это загрузить его единственный файл PHP, указать его в браузере и войти в систему.

В отличие от phpMyAdmin, который поддерживает только управление базами данных MySQL и MariaDB , Adminer также поддерживает управление другими базами данных, такими как PostgreSQL , SQLite , MS SQL , Oracle , SimpleDB , Elasticsearch , MongoDB и Firebird . Он также доступен на 43 языках.
Администратор предоставляет простой в использовании интерфейс, улучшенную поддержку многих функций MySQL, более высокую производительность и повышенную безопасность.
Давайте рассмотрим, как установить Adminer сейчас.
Как использовать администратор
Но прежде чем приступить к его установке, вот несколько основных требований для работы администратора на вашем сервере:
- Установите PHP 5, 7 или 8
- Драйвер базы данных (например, MySQL, PostgreSQL и т. д.)
Вот и все!
Загрузите последнюю версию Adminer с их официального сайта. Вы также можете найти версии Adminer только для MySQL и только для английского языка. Если вы управляете базой данных MySQL или MariaDB (например, для сайта WordPress), вы можете получить эти более легкие варианты.

В качестве альтернативы, если вы используете терминал, вы можете загрузить его прямо в свой каталог с помощью команды curl .
curl -o https://github.com/vrana/adminer/releases/download/v4.7.8/adminer-4.7.8.php
Adminer 4.7.8 — последняя стабильная версия. Он добавляет поддержку только что выпущенного PHP 8.0. Вы можете изменить номер версии администратора в приведенном выше URL-адресе загрузки кода, если доступна новая версия.
После загрузки вы можете поместить этот файл .php в любое место на вашем сервере, например, в его корневую папку. Однако хорошей практикой является размещение всех ваших сторонних инструментов в отдельном каталоге (например, vendor , assets и т. д.).
Теперь вы установили Adminer на свой сервер. Его конструкция plug-and-play означает, что Adminer будет работать практически на любом сервере.
Как получить доступ к администратору
Чтобы получить к нему доступ, все, что вам нужно сделать, это перейти по ссылке через браузер.
Например, если вы разместили его в корневом каталоге своего веб-сайта, вы можете получить к нему доступ, посетив https://your-website.com/adminer-4.7.8.php . Если у вас нет настроенного доменного имени, вы также можете получить к нему доступ через IP-адрес вашего сервера или среду localhost.

Отсюда вы можете войти в любую базу данных, установленную на вашем сервере. Вы также можете оставить поле базы данных пустым. Администратор покажет вам список всех баз данных на следующем экране.
Если вы установите флажок « Постоянный вход », ваши данные для входа будут сохранены, чтобы вы могли легко вернуться к этому сеансу позже по ссылкам сбоку.

Функции администратора
Adminer включает в себя множество функций, упрощающих управление базой данных. Пришло время глубоко погрузиться в них.
Подключиться к серверу базы данных
Как объяснялось ранее, вы можете подключиться к любому серверу базы данных, поддерживаемому администратором. Для сервера базы данных MySQL имя пользователя по умолчанию — root, а пароль по умолчанию — пустая строка. Здесь также можно выбрать существующую базу данных для управления.

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

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

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

Изменить имя базы данных и тип сопоставления
Щелкнув ссылку Изменить базу данных , вы сможете изменить ее имя и тип сопоставления. Если вы только что создали базу данных и допустили опечатку, это будет очень кстати.

Например, я изменил тип сопоставления базы данных с utf8_unicode_ci на utf8mb4_unicode_ci .

Примечание. Если ваша база данных уже используется каким-либо приложением, убедитесь, что сделанные здесь изменения отразятся и на коде вашего приложения.
Изучите схему базы данных
Схема базы данных относится к логической конфигурации, которая определяет, как связаны все элементы базы данных. В MySQL схема является синонимом базы данных. Значит, они относятся к одному и тому же.
Однако в других базах данных, таких как PostgreSQL и Oracle, схема относится к набору таблиц. Это только часть базы данных.
WordPress использует MySQL для своей базы данных. Следовательно, его схема — это, по сути, его таблицы со своими столбцами. Администратор даже позволяет вам перемещать поля схемы и играть с ними по своему усмотрению.

Это отличный способ изучить все тонкости типичной структуры базы данных WordPress.
Проверка данных и структуры таблиц
Нажав на любую таблицу, вы увидите более подробную информацию о ней. По умолчанию администратор направит вас на вкладку Показать структуру таблицы. Здесь вы найдете информацию о столбцах таблицы, такую как их имена, типы и индексы.

Если в вашей таблице базы данных есть какие-либо внешние ключи или триггеры, связанные с ней, они также будут перечислены здесь в самых нижних разделах.
В приведенном выше примере показаны подробности о таблице wp_options. Именно здесь WordPress хранит все свои важные настройки. Затем вы можете перейти на вкладку « Выбрать данные », чтобы увидеть все значения, хранящиеся в этой таблице.

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

Для таблицы вы можете изменить ее имя, механизм и тип сопоставления. Внизу вы также можете найти параметры для установки значения таблицы по умолчанию для запуска автоинкрементов и можете ли вы установить для ее столбцов значение по умолчанию и комментарии.
Что касается столбцов, вы можете изменить их имена, тип, длину и тип сопоставления.
Вы также можете добавлять или удалять столбцы, нажимая кнопки + и x . Кнопка Drop полностью удалит таблицу базы данных, поэтому используйте ее с осторожностью.
После внесения изменений не забудьте нажать кнопку « Сохранить ».
Вставка новых записей и обновление существующих
Нажмите ссылку « Новый элемент », чтобы перейти на вкладку « Вставка: <table_name> ».

Здесь вы можете добавить новую строку в свою таблицу. Администратор перечисляет имена столбцов и их типы, чтобы вы могли быстро их ввести. Вы также можете запустить хеш-функцию для введенного вами значения, чтобы зашифровать их автоматически. Это очень полезно, если данные конфиденциальны, например пароль. Например, WordPress хранит свои пароли в базе данных, используя алгоритм MD5.
Редактировать существующую запись так же просто. Например, если вы хотите изменить описание своего сайта, вы можете отредактировать значение параметра blogdescription в таблице wp_options .

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

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

Когда я искал термин home , Adminer вытащил таблицу wp_options как наиболее вероятного кандидата. Щелкнув по нему, я увидел точный столбец и строки, в которых администратор нашел его в базе данных.
Нажав на таблицу, указанную под результатом поиска, вы увидите более подробную информацию о ней. Отсюда вы можете выполнить более детальный поиск в этой таблице.

Например, я могу отредактировать значение имени параметра домашней страницы и изменить URL-адрес домашней страницы моего сайта.
Усекать, удалять, перемещать и копировать таблицы
Администратор позволяет выполнять многие операции с таблицами прямо из панели управления базой данных.

Вы можете выполнять множество SQL-запросов к таблицам, выбирая их и нажимая кнопки ниже.
Например, если вы хотите удалить все комментарии на своем сайте, вы можете выбрать таблицу wp_comments и нажать кнопку « Усечь ». Он очистит все строки в таблице, но сохранит существующую структуру столбцов. Нажатие кнопки Drop полностью удалит таблицу.
Отсюда вы также можете переместить или скопировать таблицу в другую базу данных. С опцией « Перезаписать » это быстрый и грязный способ переноса данных сайта, таких как сообщения и комментарии, с одного сайта на другой.
Создание таблиц, представлений, подпрограмм и событий
Вы можете использовать Adminer для создания новых таблиц, представлений, подпрограмм и событий.

Функция « Создать таблицу » позволяет определить полную схему таблицы, включая ее столбцы и вложенные значения.
Опытные пользователи могут использовать другие расширенные функции администратора для определения представлений, процедур, функций и событий MySQL.

Импорт или экспорт базы данных
Администратор позволяет легко импортировать базу данных MySQL. Все, что вам нужно сделать, это загрузить резервную копию .sql или . sql.gz (рекомендуется) и запустите его. Этот метод является простым способом восстановления базы данных MySQL.

Точно так же резервное копирование существующей базы данных также очень просто с помощью администратора. Щелкните ссылку Экспорт , а затем выберите параметры экспорта, такие как тип вывода, формат и другие параметры базы данных. Вы также можете выбрать таблицы, которые хотите экспортировать.

По умолчанию администратор поддерживает экспорт базы данных с выходными данными Open , Save или GZIP , с SQL , CSV , CSV; , или TSV форматы. Однако вы можете легко расширить эту функциональность с помощью плагинов администратора. Я расскажу о них позже в этой статье.
Выполнение SQL-запросов
Вам не нужно иметь дело с неуклюжим пользовательским интерфейсом администратора для выполнения SQL-запроса. Просто зайдите на экран команд SQL и выполните любой запрос, который хотите.

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


Широкие возможности настройки
Вы можете расширить или перезаписать функции администратора по умолчанию своим собственным кодом, используя его класс администратора по умолчанию. Для этого вам нужно определить функцию adminer_object , которая возвращает пользовательские значения для класса Adminer.
Хотите использовать Adminer прямо сейчас? DevKinsta использует Adminer в своем бесплатном наборе локальных инструментов разработки. С DevKinsta вы можете создавать, тестировать и развертывать сайты WordPress за считанные минуты. Попробуйте DevKinsta прямо сейчас!
Например, если вы хотите настроить имя, отображаемое в заголовке и заголовке страницы, вы можете сделать это с помощью этого кода:
<?php function adminer_object() { class AdminerExtender extends Adminer {function name() { // your custom name for title & heading return 'Adminer for Kinsta'; } } return new AdminerExtender; } include './adminer-4.7.8.php';
Теперь вы можете увидеть пользовательское имя, которое мы установили («Администратор для Kinsta») в разделе заголовка.

Есть еще много интересных вещей, которые вы можете делать с расширениями администратора. Вы можете узнать больше о расширениях администратора на их справочной странице API.
Плагины администратора
Плагины администратора — это готовые к использованию расширения, которые можно использовать для простого расширения функций администратора по умолчанию.
Например, если вы хотите экспортировать базу данных в формате XML, вы можете установить плагин Adminer dump-xml. Аналогичным образом, если вы хотите экспортировать базу данных в виде сжатого ZIP-файла, вы можете подключить расширение dump-zip.

На официальном сайте перечислены некоторые из самых популярных плагинов администратора. Там же вы найдете информацию о том, как настроить и использовать плагины администратора.
Темы администратора
Одной из самых крутых функций Adminer является возможность создания тем. На официальном сайте перечислены некоторые готовые дизайны, которые вы можете использовать прямо сейчас.

Чтобы использовать тему администратора, вам нужно поместить файл темы adminer.css в тот же каталог, где находится adminer.php .
Это так просто.

В приведенном выше примере представлена тема Hydra, указанная на веб-сайте администратора. Это темная тема на основе Material Design для администратора.

Некоторыми другими хорошими примерами тем для администратора являются дизайн в стиле Adminer Bootstrap и тема администратора от pematon. Используя любую из вышеперечисленных тем в качестве шаблона, вы можете настроить их по своему вкусу, изменив файл CSS.
Администратор против phpMyAdmin
Теперь, когда мы изучили многие функции Adminer, пришло время посмотреть, как Adminer сравнивается с phpMyAdmin, лидером отрасли. Вот краткий обзор того, как они складываются на разных фронтах:
Администратор против phpMyAdmin: сравнение возможностей
phpMyAdmin поддерживает только базы данных MySQL, в то время как Adminer поддерживает многие другие базы данных. Adminer также доступен только для MySQL.
Редактирование и создание таблиц в phpMyAdmin — рутинная работа по сравнению с Adminer. Выбор данных в пакетном режиме и их одновременное редактирование удобно для администратора. В этой области вам не хватает phpMyAdmin.
Вы также можете посмотреть Adminer Editor, вариант Adminer, ориентированный на редактирование базы данных. Он работает одновременно только с одной базой данных, и вам нужно подключить его к другой базе данных, чтобы он заработал.
Есть некоторые области, в которых phpMyAdmin превосходит другие. Например, он поддерживает гораздо больше языков и форматов экспорта, чем Adminer. Его большая пользовательская база гарантирует наличие процветающего сообщества, которое готово помочь вам, если вы столкнетесь с какой-либо проблемой.
Администратор против phpMyAdmin: безопасность
По словам команды Adminer, « Безопасность является приоритетом номер один при разработке Adminer. Например, Adminer блокирует доступ к базам данных без установки пароля в бэкенде. Он также ограничивает количество попыток подключения для защиты от атак грубой силы или SQL-инъекций.
Plug-and-play дизайн администратора также означает, что вы можете быстро удалить его со своего сервера, когда он больше не нужен. Если вы хотите использовать его снова в будущем, вы можете быстро загрузить его обратно. Вы не можете сделать то же самое с phpMyAdmin.
Используя подключаемый модуль login-ssl администратора, вы можете подключиться к серверу базы данных MySQL с помощью SSL. Панель администратора также подскажет вам, доступна ли новая версия, поэтому вы можете быть уверены, что всегда используете последнюю версию.
Администратор против phpMyAdmin: производительность
Согласно независимому тесту Юрая Хайдуха, Adminer в среднем на 28% быстрее, чем phpMyAdmin. Хотя они опубликовали эти результаты еще в 2009 году, когда Adminer был еще в зачаточном состоянии, это единственный доступный независимый тест производительности (пока).
Поскольку Adminer состоит всего из одного облегченного файла, вы можете развернуть его даже на сервере с самыми ограниченными ресурсами.
Администратор против phpMyAdmin: взаимодействие с пользователем
Использование Adminer очень просто с самого начала, в отличие от phpMyAdmin. Вам не нужно баловаться с какой-либо конфигурацией или настройками. Это просто работает.
Администратор также предоставляет улучшенный и удобный пользовательский интерфейс. Настройка таблиц, столбцов и их значений с помощью Adminer невероятно проста. Так же как и импорт базы данных или создание резервных копий.
Кроме того, плагины и темы администратора позволяют настраивать его функции и интерфейс в соответствии с вашими требованиями. Это делает Adminer явным победителем с точки зрения взаимодействия с пользователем.
Администратор против phpMyAdmin: размер файла
Adminer — это компактный инструмент управления базами данных. Он как минимум в 28 раз меньше, чем phpMyAdmin, хотя поддерживает больше типов баз данных, чем phpMyAdmin.
Последняя полнофункциональная версия Adminer (v4.7.8) занимает всего лишь 478 КБ , а последняя версия phpMyAdmin (v5.0.4) — 13,7 МБ (плюс, это сжатый файл для загрузки). Разница в размере файла становится еще более заметной, если принять во внимание версию Adminer, предназначенную только для MySQL ( 354 КБ ).
Как использовать администратора с WordPress
Нет особого способа использовать Adminer с WordPress. Он работает одинаково со всеми базами данных MySQL. Загрузите его PHP-файл, разместите его в любом месте на своем сервере и получите доступ к нему из браузера. После входа в Adminer вы можете исследовать с его помощью базу данных вашего сайта WordPress.
Я рекомендую вам удалить файл администратора с вашего сервера, как только вы закончите его использовать. Если оставить его без присмотра на вашем сервере в течение длительного периода времени, ваша база данных может стать уязвимой.
Был плагин WordPress под названием ari-adminer, который позволял вам получать доступ к Adminer прямо с панели управления WordPress. Однако он был закрыт и больше не доступен для загрузки уже почти два года из-за критической проблемы с безопасностью.
Следующим лучшим способом использования Adminer с WordPress является DevKinsta.
DevKinsta и администратор: простое управление базой данных WordPress
DevKinsta, бесплатный набор инструментов локальной разработки Kinsta, использует Adminer в фоновом режиме для управления своим менеджером баз данных.

Нажмите кнопку « Диспетчер баз данных» на панели инструментов DevKinsta, чтобы получить доступ к администратору.

Менеджер баз данных DevKinsta поддерживает все функции администратора, описанные ранее в этом посте. Вы можете использовать его для переключения между различными базами данных, просмотра и редактирования таблиц, управления значениями базы данных, импорта и экспорта баз данных, выполнения SQL-запросов и многого другого.
Если вы настраиваете несколько сайтов локально с помощью DevKinsta, вы можете переключаться между их базами данных с панели администратора. Просто выберите базу данных, которую хотите использовать, в раскрывающемся меню в верхнем левом углу.
Вы можете посетить документацию DevKinsta для получения дополнительной информации о его диспетчере баз данных.
твитнутьРезюме
Adminer — одна из лучших альтернатив phpMyAdmin. Он не только имеет более легкий след, но и намного быстрее работает с ним. Он находится в стадии медленного, но постоянного развития. В последней версии Adminer добавлена поддержка сред PHP 8, что делает ее перспективной.
Если вы хотите поэкспериментировать с Adminer, вы можете почти мгновенно создать локальный сайт WordPress с помощью DevKinsta и начать изучать его базу данных с помощью Adminer.
Теперь ваша очередь: каков ваш опыт работы с Adminer? У вас есть вопросы об управлении базами данных с помощью Adminer или DevKinsta? Если это так, поделитесь ими в разделе комментариев.