Типичная архитектура MySQL сервера представлена на рисунке.
mysqld – это и есть MySQL сервер, главный серверный процесс, который обрабатывает обращения клиентских программ и управляет доступом к данным на дисках и в памяти.
Клиентские программы могут быть запущены, как локально, на этом же хосте, так и удаленно.
Примеры клиентских программ:
- mysql – простейший SQL shell, иначе называется command-line interface (CLI);
- mysqladmin – программа для выполнения административных задач;
- mysqlcheck – программа для проверки целостности таблиц в базе данных и их техническому обслуживанию;
- mysqldump – программа для создания логической копии базы данных;
- mysqlimport – импорт данных из файлов;
- mysqlshow – для просмотра информации о базах данных, таблицах, индексах, столбцах;
- mysqlslap – программа для эмуляции клиентской нагрузки.
Примеры административных программ и утилит:
- myisamchk – программа для проверки и восстановлению MyISAM таблиц;
- myisampack – утилита для сжатия MyISAM таблиц;
- innochecksum – программа для проверки файла InnoDB;
- mysqlaccess -программа для проверки привилегий;
- mysqldumpslow -утилита для просмотра slow query log файла.
Данные программы работают напрямую с файлами данных и не подключаются к серверу, как клиентские программы.
Позднее мы разберем работу всех этих программ подробнее.