Що ми створюємо
PHPMyAdmin (PMA) - чудовий безкоштовний веб-клієнт баз даних з відкритим вихідним кодом, який може використовуватися для більш активної взаємодії з MySQL і додатками баз даних.
Я розповім, як його встановити, забезпечити безпеку, а також опишу деякі загальні сценарії, при яких він може допомогти в адмініструванні баз даних. Тут для вашого ознайомлення розміщено онлайн демо PMA.
На додаток до візуального графічного інтерфейсу для операцій з базами даних, я також високо ціную можливість запуску операцій з командного рядка SQL мого браузера. Без необхідності безпосередньо заходити на сервер через SSH.
Наприклад, деякі Wi-Fi з'єднання і з'єднання мобільних точок доступу регулярно обривають сеанси SSH. що робить роботу з базою даних досить проблематичною.
установка PHPMyAdmin
Почати роботу з PMA на Linux досить просто. Я опишу, як це зробити за допомогою Ubuntu 14.x на Digital Ocean. Заходимо на сервер через SSH:
Під час установки ви можете використовувати стандартні параметри або налаштувати клієнт на свій смак.
Після того як ви обмежите доступ до MySQL тільки з одного локального хоста (свого), в MySQL більше не залишиться віддалених портів, якими б могли скористатися хакери.
Вони, звичайно, можуть спробувати прорватися через SSH або спробувати проти ваших додатків атаки впровадження SQL. але безпосередньо базу даних вони атакувати не зможуть. Після установки PMA. ніхто не зможе здійснити веб-атаку, щоб отримати контроль над вашою базою даних, так що безпека буде забезпечена.
Додайте псевдоніми в файл apache.conf:
Для цього буде потрібно ввести додатковий пароль, щоб отримати доступ до PMA. на додаток до вашого паролю до бази даних, наприклад:
Щоб налаштувати обмеження користувачів Apache, виконайте наступні дії:
Встановіть htpasswd як частина apache2-utils:
Створіть папку для зберігання паролів:
Додайте підтримку htaccess для PMA:
Додайте AllowOverride All:
Налаштуйте аутентифікацію користувачів для PMA:
Встановіть ваш пароль:
І перезапустіть Apache:
Зайдіть через браузер на ваш PMA-сайт, і вам буде запропоновано ввести ім'я користувача і пароль, як показано вище.
Використання PHPMyAdmin в веб-розробці
1. Створення і видалення баз даних
Я вважаю, PMA особливо корисний на стадії розробки і тестування, де, можливо, вам не раз буде потрібно скинути базу даних або відновити її з резервної копії.
Без PMA. мені потрібно було б заходити на свій сервер через SSH. Потім заходити в MySQL. а потім запускати:
З PMA ви можете запустити будь-який запит командного рядка через візуальний інтерфейс. Перейдіть на вкладку SQL і вставте інструкції для бази даних MySQL. Після цього натисніть кнопку Go для створення бази даних:
Або, ви можете використовувати візуальний інтерфейс безпосередньо:
Ви також можете додати користувачів і визначити для них привілеї. Перейдіть на вкладку привілеїв:
Натисніть кнопку додавання користувача і визначте йому привілеї для потрібної бази даних:
Щоб видалити базу даних, скористайтеся меню «Бази даних». Виберіть базу даних, яку ви хочете видалити, і натисніть «Видалити»:
Перед виконанням будь-яких операцій по розширенню бази даних або оновленню коду, завжди слід зберігати базу даних програми. Якщо щось піде не так, ви завжди зможете відновити свій сайт з резервної копії.
За допомогою веб-інтерфейсу PMA. виберіть базу даних, виберіть вкладку Export і виберіть пункт Custom:
Увімкніть оператор "Add Drop Table / View / Procedure / Function / Event":
При натисканні Go PMA завантажить резервну копію всієї вашої бази даних. Якщо параметри затримки Apache PHP налаштовані неправильно, завантаження деяких великих файлів може зависнути і обірватися. Ви можете налаштувати це в PHP.ini. як я описав на своєму сайті.
3. Тестування запитів
Виберіть базу даних, натисніть Query. Вставте або відредагуйте складні запити і перевірте їх безпосередньо з PMA:
Після того, як я встановив, що мої запити працюють, я дуже легко зміг написати програмний код ActiveRecord. В якості прикладу:
4. Редагування записів БД
Якщо ви розробник, ви, ймовірно, стикалися з ситуацією, коли в результаті помилки програми ваша база даних була пошкоджена. Я адже прав?
Наприклад, деякі з моїх програм управління електронною поштою іноді дають збій при обробці незвичайних повідомлень; ці помилки важко виявити при звичайному тестуванні.
Коли це сталося, я вважав корисним змінити базу даних безпосередньо через PMA. від'єднати завдання і знову запустити сайт. У деяких випадках можливість просто переглядати таблиці може допомогти вам при діагностиці неполадок.
У PMA відкрийте базу даних і виберіть таблицю. Двічі клацніть на стовпці, який ви хочете відредагувати. Внесіть потрібні зміни і поверніться назад:
5. Повернення до початкових установок бази даних для міграції
Якщо ви використовуєте фреймворк (наприклад, Yii), ви можете використовувати програмну міграцію бази даних. Міграції баз даних полегшують зміна функціоналу розробки та оновлення додатків. У той же час їх тестування може зламати елементи вашої локальної бази даних.
Дуже часто я стикаюся з помилками міграції і не можу зробити міграцію через нестерпних індексів, зовнішніх ключів або таблиць. У цьому випадку, я можу використовувати PMA. видалити таблицю і непотрібні файли індексу.
У PMA. виберіть вашу базу даних, перейдіть на вкладку SQL і введіть SQL для видалення зовнішніх ключів або індексів. Ось кілька прикладів:
Переклад статті «Installing and Using PHPMyAdmin for Web Development» був підготовлений дружною командою проекту Сайтобудування від А до Я.