phpMyAdmin — це вебзастосунок для керування базами даних MySQL/MariaDB. Доступний у кожному акаунті cPanel і дозволяє працювати з БД без знання SQL-команд.
Відкрити phpMyAdmin
cPanel → Databases → phpMyAdmin. Відкриється інтерфейс із вашими базами в лівій панелі.
Основні операції
Створити базу даних
Краще створювати через cPanel → MySQL Databases (там же створюється користувач і призначаються права). У phpMyAdmin теж можна: ліва панель → «New» → введіть ім'я → «Create».
Імпорт бази даних
1. Виберіть БД у лівій панелі
2. Вкладка "Імпорт"
3. Натисніть "Огляд" і виберіть файл .sql
4. Натисніть "Вперед" (Go)
Максимальний розмір файлу: зазвичай 50–512 МБ
Для великих файлів використовуйте SSH:
mysql -u user -p dbname < backup.sql
Експорт бази даних
1. Виберіть БД → вкладка "Експорт"
2. Метод: Швидкий (Quick) або Користувацький
3. Формат: SQL
4. Натисніть "Вперед"
✅ Для регулярних бекапів краще використовувати cPanel → Backup або SSH mysqldump — phpMyAdmin не підходить для файлів >100 МБ.
Виконати SQL-запит
-- Виберіть БД → вкладка "SQL"
-- Приклади:
SELECT * FROM wp_users LIMIT 10;
UPDATE wp_options SET option_value='https://example.com'
WHERE option_name='siteurl';
ALTER TABLE wp_posts ADD INDEX (post_status, post_type);
Корисні операції для WordPress
| Завдання | SQL |
|---|---|
| Скинути пароль адміна | UPDATE wp_users SET user_pass=MD5('newpass') WHERE user_login='admin' |
| Змінити URL сайту | UPDATE wp_options SET option_value='https://new.com' WHERE option_name IN ('siteurl','home') |
| Видалити спам-коментарі | DELETE FROM wp_comments WHERE comment_approved='spam' |
⚠️ Перед будь-якими змінами зробіть експорт БД! Помилковий UPDATE без WHERE може пошкодити всю базу.
Часті помилки в phpMyAdmin
#1045 Cannot log in to the MySQL server
#2006 MySQL server has gone away
File exceeds the maximum size (upload_max_filesize)
#1698 Access denied for user 'root'@'localhost'
| Повідомлення | Причина | Рішення |
|---|---|---|
| #1045 Cannot log in to the MySQL server | Невірний логін/пароль користувача БД у конфігурації доступу | Перевірити облікові дані в cPanel → MySQL Databases, за потреби скинути пароль користувача |
| #2006 MySQL server has gone away | Імпорт великого дампа перевищив max_allowed_packet або час виконання запиту | Імпортувати через SSH: mysql -u user -p dbname < backup.sql замість вебінтерфейсу |
| File exceeds the maximum size (upload_max_filesize) | Дамп більший за ліміт завантаження, заданий у php.ini для phpMyAdmin | Стиснути файл у .zip перед завантаженням або імпортувати через SSH без обмежень вебформи |
| #1698 Access denied for user 'root'@'localhost' | На Ubuntu/Debian root MySQL за замовчуванням авторизується через auth_socket, а не паролем | Заходити в phpMyAdmin не під root, а під окремим користувачем БД із паролем, створеним у cPanel |
phpMyAdmin проти SSH і mysqldump: коли що використовувати
| Завдання | phpMyAdmin | SSH + mysqldump/mysql |
|---|---|---|
| Разовий простий запит або правка рядка | Швидко, наочно, не потрібен SSH | Надмірно для дрібної правки |
| Імпорт/експорт БД більше 100 МБ | Часто впирається в ліміти PHP і таймаути | Працює без обмежень вебсервера |
| Регулярні автоматичні бекапи | Не призначений для розкладу | Легко ставиться в cron |
| Масове редагування структури таблиць | Зручний візуальний редактор | Вимагає ручних ALTER TABLE |
Коли phpMyAdmin не підходить
- База даних важить гігабайти — вебінтерфейс впирається в ліміти PHP (upload_max_filesize, max_execution_time) і таймаути браузера
- Потрібні регулярні автоматизовані операції — розклад бекапів, міграції під час деплою — це завдання для SSH і резервного копіювання, а не ручного інтерфейсу
- Робота йде з БД, до якої немає доступу з cPanel (зовнішній сервер MySQL без інтеграції з панеллю) — тоді простіше пряме підключення клієнтом на кшталт DBeaver або через SSH-тунель
- Потрібні транзакційні операції з продуманим відкатом при помилці — виконання через вебформу SQL менш передбачуване, ніж скрипт із явним BEGIN/COMMIT
Перевірка результату
# Звірити кількість рядків у таблиці до і після операції
mysql -u user -p dbname -e "SELECT COUNT(*) FROM wp_posts;"
# Перевірити, що дамп справді імпортувався без обривів
tail -5 backup.sql
mysql -u user -p dbname -e "SHOW TABLES;" | wc -l
- Після імпорту звірте кількість таблиць і кількість рядків у ключових таблицях із тим, що очікували — обрив імпорту через ліміт часто проходить без явної помилки
- Відкрийте сайт, який використовує цю БД, і переконайтеся, що він не видає помилку підключення або порожні дані
- Після правки через вкладку SQL виконайте той самий SELECT ще раз і переконайтеся, що зміна справді застосувалася, а не залишилася в кеші сторінки
- Для експорту — відкрийте файл .sql текстовим редактором і перевірте, що він закінчується коректно, а не обривається посередині INSERT
Про зміну пароля MySQL напряму через консоль, якщо доступ до phpMyAdmin втрачено, — стаття скидання пароля root MySQL. Роботу з файлами сайту поряд із базою розглядає матеріал файловий менеджер cPanel.