При роботі з хостинговими середовищами на базі Linux керування базами даних за допомогою командного рядка є дуже важливою навичкою, особливо якщо ви використовуєте віртуальний або виділений сервер без графічного інтерфейсу. У цьому посібнику ми розповімо вам, як перерахувати всі бази даних MySQL за допомогою терміналу. Незалежно від того, чи ви досвідчений системний адміністратор, чи власник веб-сайту, який тільки починає освоювати цей інструмент, ця стаття допоможе вам.

Навіщо вам може знадобитися створити список баз даних MySQL

Перш ніж зануритися в команди, давайте швидко розглянемо кілька сценаріїв, де ця команда може бути корисною:

  • Ви керуєте кількома веб-сайтами з різними базами даних.
  • Вам потрібно підтвердити, що база даних була створена успішно.
  • Ви усуваєте проблеми або очищаєте невикористовувані бази даних.
  • Ви готуєтеся до резервного копіювання або міграції.

Тепер перейдемо до власне команд.

Крок 1: Доступ до інтерфейсу MySQL CLI

Щоб взаємодіяти з MySQL через командний рядок, спочатку увійдіть в оболонку MySQL:

mysql -u root -p
  • -u root – Вказує користувача MySQL. Замініть root на іншого користувача, якщо потрібно.
  • -p – Підказка для введення пароля (з міркувань безпеки не вводьте пароль безпосередньо в команду).

порада: Якщо ваш користувач MySQL root не має встановленого пароля (не рекомендується для виробництва), ви можете пропустити -p.

Крок 2: Перелічіть всі бази даних

Після того, як ви потрапили в оболонку MySQL, просто запустіть

SHOW DATABASES;

Ви побачите висновок, схожий на

 -------------------- 
| База даних
 -------------------- 
| інформаційна_схема |
| mysql |
| performance_schema
| sys
| ім'я_вашої_бази_даних
 -------------------- 

Кожен рядок представляє базу даних, що зберігається на сервері MySQL. Деякі з них (наприклад, information_schema, performance_schema) є системними базами даних і не повинні бути змінені.

Перерахування баз даних без входу до MySQL

Якщо ви бажаєте перелічити бази даних безпосередньо з командної оболонки, не відкриваючи запрошення до MySQL, скористайтеся командою

mysql -u root -p -e 'SHOW DATABASES;'

Це корисно для написання сценаріїв і завдань автоматизації.

Фільтрування або пошук певних назв баз даних

Щоб відфільтрувати виведення і знайти певні назви баз даних, ви можете комбінувати команду з командою grep:

mysql -u root -p -e 'SHOW DATABASES;' | grep ваше_ключове слово

Замініть ваше_ключове слово частиною назви бази даних. Цей трюк зручний для керування кількома клієнтами або програмами.

Де зберігаються бази даних MySQL в Linux?

Якщо вас цікавить фізичне сховище, бази даних MySQL зазвичай зберігаються у

/var/lib/mysql/

Кожна папка всередині відповідає імені бази даних. Не змінюйте і не видаляйте нічого тут вручну, якщо ви точно не знаєте, що робите – завжди використовуйте команди SQL або інструменти адміністрування.

Поширені помилки та виправлення

Помилка: Відмовлено в доступі для користувача ‘root’@’localhost’

  • Перевірте ім’я користувача та пароль.
  • Переконайтеся, що служба MySQL запущена:
sudo systemctl status mysql

Помилка: Не знайдено команду ‘mysql’

  • Встановіть клієнтські інструменти MySQL:
    sudo apt install mysql-client
    

Підсумок

Перелік баз даних MySQL за допомогою командного рядка у Linux:

  • Увійдіть за допомогою mysql -u root -p
  • Використовуйте SHOW DATABASES; всередині оболонки MySQL
  • Або виконайте mysql -u root -p -e ‘SHOW DATABASES;’ безпосередньо в терміналі

Цей спосіб швидкий, безпечний і чудово працює в SSH-середовищі – саме те, що вам потрібно для ефективного керування серверами та базами даних.