Всі статті
  • Пошук роботи

MySQL у розрізі Linux: що питають на технічних інтерв'ю DBA, SysAdmin та DevOps Engineer

January 30, 2026 ~ 6 хв
MySQL у розрізі Linux: що питають на технічних інтерв'ю DBA, SysAdmin та DevOps Engineer

Більшість матеріалів про підготовку до інтерв’ю з баз даних зосереджені на SQL-запитах: джойни, індекси, нормалізація. Це — база, яку очікують від розробників.

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

У цій статті ми розберемо питання, що стосуються адміністрування та архітектури MySQL у зв'язці з Linux.

Чому знання MySQL + Linux важливе у 2026 році?

У більшості продакшн-середовищ MySQL працює саме на серверах Linux. Кандидатам потрібно не лише писати запити, а й:

  • встановлювати та налаштовувати сервери;
  • аналізувати логи та відстежувати помилки;
  • оптимізувати продуктивність на рівні ОС;
  • автоматизувати резервне копіювання та відновлення.

Для DevOps-інженерів знання Linux дозволяє інтегрувати MySQL у CI/CD пайплайни, працювати з контейнерами та хмарними інфраструктурами. Для DBA — це фундаментальна навичка, яка демонструє розуміння того, як база даних взаємодіє із системою та як уникати простоїв.

Питання та відповіді

Для зручності, ми розбили питання за категоріями:

Встановлення та конфігурація

1. Яка різниця між встановленням MySQL на Linux через пакетний менеджер і компіляцією з вихідного коду?

  • Через пакетний менеджер (apt, yum) —  швидко, легко оновлювати та підтримувати стандарти безпеки.
sudo apt-get install mysql-server  # For Ubuntu/Debian
sudo yum install mysql-server      # For CentOS/RHEL
  • Компіляція з вихідного коду — дає повний контроль над увімкненими функціями та оптимізацією під конкретне залізо, але потребує значно більше часу на підтримку та оновлення.

2. Де знаходяться конфігураційні файли MySQL у Linux і який файл має пріоритет?

Локація залежить від дистрибутива Linux, але зазвичай MySQL читає конфігурацію у такому порядку:

/etc/my.cnf
/etc/mysql/my.cnf
~/.my.cnf (user-specific configuration)

Файли, що йдуть пізніше, перекривають налаштування попередніх.

В Ubuntu головний файл зазвичай знаходиться тут: 

/etc/mysql/mysql.conf.d/mysqld.cnf

Моніторинг та продуктивність

3. Як перевірити, чи працює MySQL на Linux?

sudo systemctl status mysql       # For systemd-based systems
sudo service mysql status         # Traditional method
ps aux | grep mysqld              # Check running processes
netstat -tlnp | grep 3306         # Check if MySQL port is listening
  • ps показує, чи живий сам процес.
  • netstat підтверджує, що порт відкритий  і готовий приймати з’єднання.

4. Яка різниця між systemctl stop mysql та kill -9 mysqld?

  • systemctl stop mysql або service mysql stop— дозволяє MySQL закрити з’єднання, зберегти дані на диск і завершити роботу коректно.
  • kill -9 — примусове завершення. Може пошкодити файли бази, якщо транзакції ще виконуються.
  • kill -15 — альтернативне коректне завершення через SIGTERM.

5. Як моніторити продуктивність MySQL?

  • На рівні ОС:
top                    # Check CPU and memory usage
iostat                 # Check disk I/O
vmstat                 # Check system performance
  • Всередині MySQL:
SHOW PROCESSLIST;                    # See running queries
SHOW STATUS;                         # Server status variables
SHOW ENGINE INNODB STATUS;           # InnoDB specific stats
  • Додаткові інструменти: mytop, innotop, pt-query-digest

Резервне копіювання та відновлення

6. Як зробити бекап бази через командний рядок Linux?

Найпопулярніший метод — утиліта mysqldump:

mysqldump -u username -p database_name > backup.sql
mysqldump -u username -p --all-databases > all_databases.sql

Для гарячих бекапів без блокування таблиць: Percona XtraBackup

7. Як налаштувати автоматичні бекапи через cron?

Створюєте скрипт та додаєте його до cron:

crontab -e
0 2 * * * /usr/bin/mysqldump -u root -pYourPassword --all-databases > /backup/mysql_$(date +\%Y\%m\%d).sql

Виконується щодня о 2:00

Рекомендація: задля безпеки не зберігати пароль у скрипті, використати ~/.my.cnf

Проблеми та усунення неполадок

8. Що таке socket-файл MySQL і де він знаходиться?

Він використовується для локальних підключень клієнта до сервера (без використання мережі), що швидше за TCP/IP. Зазвичай розташований тут:

/var/run/mysqld/mysqld.sock 

або 

/tmp/mysql.sock

Якщо файл відсутній або має неправильні права, ви отримаєте помилку: 

Can't connect to local MySQL server through socket.

9. Як знайти та аналізувати MySQL логи?

  • Якщо сервер не запускається, перше місце для перевірки — Error Log:
/var/log/mysql/error.log
  • Перегляд у реальному часі — зручно при старті сервісу:
sudo tail -f /var/log/mysql/error.log
  • Дізнатися шлях до логу зсередини бази:
SHOW VARIABLES LIKE 'log_error';

На завершення

Розуміння того, як MySQL працює у Linux, показує здатність кандидата працювати з продакшн-системами, а не лише з тестовими базами.

Опрацювання наведених питань допоможе вам систематизувати знання та почуватися впевнено під час технічних інтерв’ю.


Христина Донченко

Лише профільні вакансії та проєкти

NETFORCE Jobs — перша в Україні платформа з пошуку роботи для DevOps-інженерів.

Нові вакансії