phpMyAdmin (PMA) - абсолютно безкоштовний клієнт для роботи з базами даних MySQL. В даному уроці, ми розповімо як його встановити, і розглянемо кілька поширених сценаріїв роботи для адмініструванні баз даних. Тут знаходиться онлайн демо PMA.
До того ж до забезпечення візуального графічного інтерфейсу для роботи з базами даних мені також подобається можливість використання команд для виконання SQL операцій безпосередньо з браузера без необхідності входу на сервер через SSH. Наприклад, деякі Wi-Fi з'єднання і мобільні джерела регулярно переривають стійкі SSH сесії, роблячи роботу з базами даних досить проблематичною.
установка phpMyAdmin
Немає нічого простішого, ніж встановити PMA на Linux. Я опишу як зробити це на Ubuntu 14.x в Digital Ocean. Зайдіть на сервер через SSH.
apt-get install phpmyadmin
Під час установки можете використовувати стандартні настройки або підлатати їх під себе.
Якщо ви обмежите доступ MySQL тільки через localhost (що ви повинні зробити), то для хакера база буде поза зоною досяжності. Звичайно він може спробувати підключитися через SSH або здійснить атаку за допомогою SQL ін'єкцій, але безпосередньо атакувати базу даних не зможе. Як тільки ви встановите PMA, то даний інструмент стає потенційно вразливим для атак, тому запобіжні заходи не зашкодять.
Є кілька заходів, які я б порадив при конфігуруванні PMA.
Добваляем алиас в файл apache.conf:
Alias / myobscuredpma / usr / share / phpmyadmin
service apache2 reload
Якщо вам необхідно змінити пароль вашого phpMyAdmin, змініть вміст файлу config-db.php:
4. Налаштуйте веб-аутентифікацію для доступу до PMA. Після цього вам буде потрібно ввести додатковий пароль:
![Установка і робота з phpmyadmin (установка) Установка і робота з phpmyadmin](https://images-on-off.com/images/113/ustanovkairabotasphpmyadmin-decddc5d.jpg)
Для настройки обмежень користувача apache дотримуйтесь цих кроків:
Встановіть htpasswd з пакета apache2-utils:
apt-get install apache2-utils
Створіть директорію для зберігання ваших паролів:
Додайте в htaccess підтримку для PMA:
Далі додайте AllowOverride:
І перезапустіть Apache:
service apache2 restart
Тепер для доступу до PMA вам необхідно буде ввести ще один пароль, як показано вище.
Використання phpMyAdmin для веб-розробки
1. Створення і видалення баз даних
На мій погляд PMA особливо корисний на стадіях розробки та тестування, коли в будь-який момент зможу скинути базу або зробити відкат якоїсь операції.
Без PMA мені б довелося заходити на мій сервер через SSH, підключатися до MySQL, а потім запускати запит:
PMA дозволяє нам запускати будь-який запит через зручний візуальний інтерфейс. Натисніть вкладку SQL і вставте вищевказані SQL код. Потім клікніть Go щоб створити базу даних.
![Установка і робота з phpmyadmin (роботи базами даних) Установка і робота з phpmyadmin](https://images-on-off.com/images/113/ustanovkairabotasphpmyadmin-6035e7b2.jpg)
Так само для створення бази даних можите безпосередньо скористатися візуальний інтерфейсом:
![Установка і робота з phpmyadmin (phpmyadmin) Установка і робота з phpmyadmin](https://images-on-off.com/images/113/ustanovkairabotasphpmyadmin-9cbd456c.jpg)
Таким же чином, ви можете додавати користувачів і призначати привілеї. Перейдіть на вкладку "Привілеї":
![Установка і робота з phpmyadmin (установка) Установка і робота з phpmyadmin](https://images-on-off.com/images/113/ustanovkairabotasphpmyadmin-b470c496.jpg)
Натисніть "Додати користувача" і призначте бажані привілеї для бази даних:
![Установка і робота з phpmyadmin (установка) Установка і робота з phpmyadmin](https://images-on-off.com/images/113/ustanovkairabotasphpmyadmin-8fd72808.jpg)
Щоб видалити базу даних відкрийте меню, виберіть базу, натисніть "видалити":
![Установка і робота з phpmyadmin (phpmyadmin) Установка і робота з phpmyadmin](https://images-on-off.com/images/113/ustanovkairabotasphpmyadmin-e762ef71.jpg)
Клацніть на базу даних, перейдіть на вкладку "Експорт" і виберіть "Custom".
![Установка і робота з phpmyadmin (роботи базами даних) Установка і робота з phpmyadmin](https://images-on-off.com/images/113/ustanovkairabotasphpmyadmin-55369556.jpg)
Виберіть пункт «Add Drop Table / View / Procedure / Function / Event»:
![Установка і робота з phpmyadmin (установка) Установка і робота з phpmyadmin](https://images-on-off.com/images/113/ustanovkairabotasphpmyadmin-8c2ff67d.jpg)
Коли натиснете Go, PMA створить резервну копію всієї вашої бази даних і віддасть її на скачку. Якщо настройки тайм-ауту в вашому Apache PHP не налаштовані належним чином, деякі завантаження великих файлів можуть не завершитися або перерватися. Змініть настройки в php.ini.
3. Тестування запитів
Виберіть ваше базу даних, натисніть Query. Вставте або відредагуйте складні SQL запити і протестуйте їх безпосередньо через PMA:
![Установка і робота з phpmyadmin (роботи базами даних) Установка і робота з phpmyadmin](https://images-on-off.com/images/113/ustanovkairabotasphpmyadmin-c40e423b.jpg)
Після шліфування запиту, його легше застосувати в рамках шаблону ActiveRecord. Як тут:
4. Швидка зміна даних
Якщо ви розробник, то у вас напевно виникала ситуація що при роботі з БД вискакували помилки через відсутність або неправильного значення в якийсь із елементів таблиці. Чи не так?
PMA надає нам чудову можливість зміни значення осередків безпосередньо з відображення таблиці. Відкрийте базу даних і виберіть таблицю. Двічі клікніть на колонці щоб ввести значення. Після закінчення змін натисніть "Enter":
![Установка і робота з phpmyadmin (установка) Установка і робота з phpmyadmin](https://images-on-off.com/images/113/ustanovkairabotasphpmyadmin-724789bf.jpg)
5. Актуалізація бази даних на основі міграцій
Якщо ви використовуєте фреймворк (як Yii), то напевно у вашому арсеналі є інструмент міграції. Міграції полегшує поетапне зміна БД в процесі розробки. Однак при тестування можуть виникнути проблеми.
Найчастіше я натрапляю на помилки міграції через зайвих (не видалені) індексів, зовнішніх ключів або таблиць. В такому випадку я використовую PMA для видалення таблиці і небажаних індексів.
У PMA, виберіть базу даних, клікніть НЕ вкладку SQL і виконайте запит. Ось кілька прикладів:
![Установка і робота з phpmyadmin (установка) Установка і робота з phpmyadmin](https://images-on-off.com/images/113/ustanovkairabotasphpmyadmin-5ce25684.jpg)
![Установка і робота з phpmyadmin (phpmyadmin) Установка і робота з phpmyadmin](https://images-on-off.com/images/113/ustanovkairabotasphpmyadmin-9d3176f4.jpg)
За рахунок отримання інформації відразу по двох каналах (зір і слух) ефективність навчання значно перевершує навчання по книгах. А домашні завдання і онлайн-тести дозволять вам постійно думати на мові, що вивчається і відразу перевіряти свої знання!
![Установка і робота з phpmyadmin (phpmyadmin) Установка і робота з phpmyadmin](https://images-on-off.com/images/113/ustanovkairabotasphpmyadmin-536f87f0.jpg)
![Установка і робота з phpmyadmin (установка) Установка і робота з phpmyadmin](https://images-on-off.com/images/113/ustanovkairabotasphpmyadmin-63bc1c66.png)
Якщо ви давно хочете як слід вивчити HTML, то у мене для Вас є чудова новина!
![Установка і робота з phpmyadmin (установка) Установка і робота з phpmyadmin](https://images-on-off.com/images/113/ustanovkairabotasphpmyadmin-1d28c85e.png)
Якщо ви вже вивчили HTML і хочете рухатися далі, то наступним кроком буде вивчення технології CSS.
![Установка і робота з phpmyadmin (установка) Установка і робота з phpmyadmin](https://images-on-off.com/images/113/ustanovkairabotasphpmyadmin-62e1c2af.png)
Якщо ви хочете розібратися з поняттями домену і хостингу, навчитися створювати бази даних, закачувати файли сайту на сервер по FTP, створювати піддомени, налаштовувати поштові скриньки для свого сайту і стежити за його відвідуваністю, то цей курс створений спеціально для вас!