Решение проблемы с ошибкой «import.php: Отсутствующий параметр: import_type»
Затем сразу возникла проблема:
phpMyAdmin - Ошибка import.php: Отсутствующий параметр: import_type
Несмотря на суперинформативность ошибки, я разобрался в её причине – до скрипта просто не доходил файл с резервной копией БД. Причина в том, что по умолчанию в PHP установлены очень маленькие значения на максимальный размер выгружаемого на сервер файла, и файла, передаваемого методом POST. На локальном, своём сервере это очень легко исправить. Откройте файл c:\Server\bin\PHP\php.ini, и отредактируйте там следующие директивы:
upload_max_filesize = 2M
максимальный размер загружаемого на сервер файла. Изначально установлен очень маленький размер – только два мегабайта. Например, при загрузке базы данных в phpMyAdmin, не получится загрузить файл больше 2 мегабайт до тех пор, пока не будет изменён этот пункт настройки. Мой бэкап был в сотни мегабайт – установите это значение больше, чем размер импортируемого файла.
post_max_size = 8M
устанавливает максимальное количество данных, которые будут приняты при отправке методом POST. Аналогично – установите размер больше, чем импортируемый файл.
Другие директивы можно не менять, но при желании вы можете предоставить PHP скриптам дополнительные ресурсы:
memory_limit = 128M
устанавливает максимальное количество памяти, которое может использовать скрипт
max_file_uploads = 20
максимальное количество файлов для загрузки за один раз
max_execution_time = 30
максимальное время выполнения одного скрипта
;default_charset = "UTF-8"
устанавливает кодировку (по умолчанию, строка закомментирована)
Чтобы эти изменения вступили в силу, нужно перезапустить веб-сервер.
Обновление MySQL
Перед обновлением до версии MySQL 5.6 в FreeBSD нужно обязательно создать резервную копию всех баз данных. Это можно сделать множеством способов, например просто переместив директорию с базами (пути указаны в разделе «Полезные сведения по MySQL» ниже) в свой домашний каталог, предварительно остановив сервер базы данных. В DirectAdmin есть способ настроить обновление так, чтобы перед ним автоматически сохранялась резервная копия БД — за это отвечают две директивы в /usr/local/directadmin/custombuild/option.conf: mysql_backup=yes, mysql_backup_dir=/usr/local/directadmin/custombuild/mysql_backups.
Сам процесс обновления сводится к удалению порта старой версии MySQL и установкой новой. Процесс установки подробно описан в разделе этой статьи «Установка MySQL 5.6 в FreeBSD».
Удаление старой версии MySQL, установленной из портов
# cd /usr/ports/databases/mysql50-server/
# make deinstall
# cd /usr/ports/databases/mysql50-client/
# make deinstall
После успешной установки новой версии, в случае необходимости, нужно вернуть директории, содержащие данные таблиц MySQL из старой версии (сервер MySQL на это время нужно остановить). Ни в коем случае, не стоит возвращать в директорию с файлами новой версии MySQL файлы из корневой директории, такие как: ib_logfile0, ib_logfile1 и др. После возврата таблиц нужно запустить утилиту mysql_upgrade, которая приведет системную таблицу «mysql» в соответствие с новой версией сервера MySQL (например в версии 5.5 добавлены новые колонки в системных таблицах, по отношению к версии 5.1, структуры таблиц 5.5 и 5.6 также, отличаются) и запустить MySQL-сервер.
Если не запустить mysql_upgrade, то например при обновлении версии 5.1 до 5.5 сервер базы данных работать будет, но запрос GRANT ALL PRIVILEGES ON *.* TO ‘superuser’@’localhost’ WITH GRANT OPTION; завершится ошибкой Access denied for user ‘root’@’localhost’ (using password: YES) из-за того, что служебные таблицы MySQL не содержат необходимых колонок. Также, возможны и другие не заметные на первый взгляд ошибки при работе с БД.
При использовании DA обновление проводится командой /usr/local/directadmin/custombuild/build mysql d. При этом также, как и при обновлении из портов, нужно сначала очистить или перенести каталог /home/mysql/, запустить новую версию и убедиться, что она работает, а уже после этого возвращать данные в БД.
После обновления MySQL нужно обновить скрипты, используемые для подключения к БД в PHP. Пользователям DA можно просто обновить php в целом: /usr/local/directadmin/custombuild/build php d.
Установка MySQL 5.6 в FreeBSD
Обычно MySQL в FreeBSD устанавливают из портов, но если на сервере используется DirectAdmin, то при помощи скриптов обновления программ custombuild (/usr/local/directadmin/custombuild). Перед установкой, желательно обновить дерево портов, как это сделать описано тут: работа с портами в FreeBSD, при использовании DA, нужно перенастроить /usr/local/directadmin/custombuild/options.conf и обновить скрипты установки MySQL командой ./build update.
Предварительно можно настроить параметры устанавливаемой базы данных в файле /etc/make.conf, но это не обязательно. Об обновлении более старых версий БД до MySQL 5.6 написано ниже.
В DirectAdmin MySQL устанавливается при установке панели DA и требуется не установка с нуля, а обновление, процесс которого описан в разделе «Обновление MySQL».
Уствновка MySQL 5.6 из портов FreeBSD
Переход в директорию с портами баз данных
# cd /usr/ports/databases/
Выбрать версию MySQL из доступных
# find . -name ‘mysql*-server’
./mysql56-server
./mysql50-server
./mysql51-server
./mysql55-server
./mysql41-server
Переход в директорию с портом MySQL srver 5.6
# cd /usr/ports/databases/mysql56-server
Установить mysql56-server
# make install clean
Обновление путей
#rehash
Скопировать главный конфигурационный файл MySQL
# cp /usr/local/share/mysql/my-small.cnf /etc/my.cnf
Создать фалы баз данных по умолчанию (необходимы для работы сервера MySQL)
# cp /usr/local/mysql/scripts/mysql_install_db /usr/local/mysql/mysql_install_db
# /usr/local/mysql/mysql_install_db
Установить права доступа к каталогу баз данных MySQL
# chown -R mysql:mysql /var/db/mysql
Добавить автоматический запуск MySQL в FreeBSD
# echo ‘mysql_enable=»YES»‘ >> /etc/rc.conf
Запуск MySQL сервера
# /usr/local/etc/rc.d/mysql-server start
Установка пароля для root в MySQL
# mysqladmin -u root password ‘НОВЫЙ ПАРОЛЬ для root’
Подключение в БД
# mysql -u root -p
Enter password:НОВЫЙ ПАРОЛЬ для root
Переход в конфигурационную БД MySQL
mysql>use mysql
Удаление всех лишних пользователей, чтобы остался только 1 root с новым, только что установленным паролем
mysql>DELETE FROM user WHERE user != ‘root’;
На этом первичная настройка и установка MySQL 5.6 завершена. Если в процессе установки появились ошибки или сервер MySQL не запустился, смотрите раздел «Полезные сведения по MySQL», который размещен в этой статье ниже.
Поврежденные таблицы
Некоторые действия могут повредить таблицы MySQL. Это означает, что произошла ошибка и данные, содержащиеся в них, не читаются. Попытки чтения данных из поврежденной таблицы обычно приводят к сбою сервера.
Вот распространенные причины поврежденных таблиц:
- Сервер MySQL остановился в середине записи.
- Внешняя программа изменяет таблицу, которая одновременно изменяется сервером.
- Машина неожиданно выключилась.
- Аппаратное обеспечение компьютера вышло из строя.
- Где-то в коде MySQL есть ошибка.
Если вы подозреваете, что одна из ваших таблиц была повреждена, вы должны сделать резервную копию вашего каталога данных перед устранением неполадок или попыткой исправить таблицу. Это поможет минимизировать риск потери данных.
Сначала остановите MySQL:
Затем скопируйте все свои данные в новый каталог. В системах Ubuntu каталогом данных по умолчанию является /var/lib/mysql/:
После создания резервной копии вы можете начать проверку таблицы на наличие повреждений. Если таблица использует механизм хранения MyISAM, вы можете проверить, не повреждена ли она, запустив CHECK TABLE из командной строки MySQL:
В выводе этого оператора появится сообщение о том, повреждена она или нет. Если таблица MyISAM действительно повреждена, ее обычно можно исправить, выполнив REPAIR TABLE:
Если таблица успешно исправлена, вы увидите:
Если это не помогло исправить таблицу, в документации MySQL есть несколько альтернативных методов восстановления поврежденных таблиц.
Если поврежденная таблица использует механизм хранения InnoDB, процесс ее восстановления будет другим. InnoDB – это стандартный механизм хранения MySQL начиная с версии 5.5, он поддерживает автоматическую проверку и исправление ошибок. InnoDB проверяет наличие поврежденных страниц, отслеживая контрольные суммы на каждой странице, которую он читает, и если он находит несоответствие контрольной суммы, он автоматически останавливает сервер MySQL.
Необходимость исправления таблиц InnoDB возникает редко, поскольку InnoDB предоставляет механизм восстановления после сбоя, который может решить большинство проблем при перезапуске сервера. Однако если вы все же столкнулись с такой необходимостью, в документации MySQL рекомендуется использовать .
Этот метод подразумевает восстановление доступа к поврежденной таблице с помощью утилиты mysqldump для создания логической резервной копии таблицы, которая сохранит структуру и данные в ней, и дальнейшую перезагрузку таблицы.
Имея это в виду, попробуйте перезапустить MySQL, чтобы увидеть, позволит ли это вам получить доступ к серверу:
Если сервер по-прежнему недоступен, тогда может быть полезно включить опцию InnoDB force_recovery. Вы можете сделать это, отредактировав файл mysqld.cnf:
В раздел добавьте такую строку:
Сохраните и закройте файл, а затем попробуйте перезапустить MySQL снова. Если вы можете получить доступ к поврежденной таблице, используйте утилиту mysqldump, чтобы выгрузить данные таблицы в новый файл. Вы можете назвать этот файл как угодно, но здесь мы для примера назовем его out.sql:
Затем удалите таблицу из базы данных. Чтобы избежать повторного открытия командной строки MySQL, вы можете использовать следующий синтаксис:
После этого восстановите таблицу с помощью только что созданного файла:
Обратите внимание, что механизм хранения InnoDB обычно более отказоустойчив, чем старый механизм MyISAM. Таблицы, использующие InnoDB, все еще могут быть повреждены, но благодаря функциям автоматического восстановления риск повреждения и сбоев таких таблиц значительно ниже
Ошибки MySQL и их решения
Can’t start server : Bind on unix socket: Permission denied
MySQL запускается, работает несколько секунд и останавливается. В логе MySQL обнаружены строки с такими ошибками:
Can’t start server : Bind on unix socket: Permission denied
Do you already have another mysqld server running on socket: /tmp/mysql.sock ?
Aborting
Сообщения об ошибке сообщают, что доступ сокету MySQL запрещен. Чтобы открыть доступ, необходимо сменить права на каталог /tmp:
# chmod chmod 1777 /tmp
Посмотреть изменения
# ls -ld /tmp
drwxrwxrwt root wheel 512 /tmp
Такая ошибка может возникнуть после переноса FreeBSD с одного HDD на другой. Обычно, при таком переносе, директория /tmp не копируется, и при монтировании ее в новой системе забывают настроить права доступа.
Как остановить mysqld_safe?
Чтобы остановить mysqld_safe нужно найти PID скрипта, запустившего mysql, а уже потом остановить процесс MySQL, иначе по команде kill -9 PID процесс будет не остановлен, а перезагружен, и так до бесконечности. Описание процесса останова mysqld_safe находится в разделе «Полезные сведения по MySQL» и подразделе «Изменить/восстановить пароль root в MySQL».
Опубликовано: 2013/07/18
HTML-код ссылки на эту страницу:
<a href=»https://petrenco.com/freebsd.php?txt=175″ target=»_blank»>Установка и настройка MySQL в FreeBSD</a>
22861
MySQL внезапно останавливается или не может запуститься
Самая распространенная причина сбоев в MySQL заключается в недостатке памяти. Чтобы проверить это, нужно просмотреть лог ошибок MySQL после сбоя.
Сначала попытайтесь запустить сервер MySQL:
Затем просмотрите логи ошибок, чтобы узнать, что именно вызывает сбой MySQL. Вы можете использовать less:
Сообщения, которые указывают на недостаточный объем памяти – это обычно записи типа Out of memory или mmap can’t allocate.
Потенциально решить проблемы с памятью могут:
Оптимизация настройки MySQL. Отличным инструментом для этого является открытый MySQLtuner. Сценарий MySQLtuner выведет набор рекомендуемых настроек в файл конфигурации MySQL (mysqld.cnf)
Обратите внимание, чем дольше ваш сервер работал до использования MySQLTuner, тем точнее будут его предложения. Чтобы получить оценку использования памяти ваших текущих настроек и предложенных MySQLTimer, используйте этот MySQL Calculator.
Снижение зависимости загрузки страниц от MySQL
Обычно для этого можно добавить в приложение статическое кеширование. Например, можно использовать инструмент Joomla, который имеет встроенную функцию кэширования, и WP Super Cache, плагин WordPress, который добавляет такую функциональность.
Увеличение ресурсов VPS. Как минимум для обслуживания MySQL мы рекомендуем сервер с 1 ГБ памяти, но размер и тип ваших данных могут существенно повлиять на требования к памяти.
Обратите внимание: хотя обновление (увеличение) сервера является потенциальным решением проблем с памятью, делать это рекомендуется только после того, как вы изучите и взвесите все остальные варианты. Модернизированный сервер с большим количеством ресурсов будет стоить больше денег, поэтому изменение размера следует выполнять только в том случае, если это действительно лучший (или единственный) вариант
Документация MySQL предлагает ряд других решений по диагностике и предотвращению сбоев.
MySQL в FreeBSD — база знаний
Скрипты запуска/останова MySQL:
# /usr/local/etc/rc.d/mysql-server start
# /usr/local/etc/rc.d/mysql-server stop
В DA названия скриптов запуска и останова MySQL отличаются:
/usr/local/etc/rc.d/mysqld start
/usr/local/etc/rc.d/mysqld stop
Посмотреть, запущен ли mysqd: # ps ax | grep mysql
Лог-файл MySQL-сервера по умолчанию располагается тут: /var/db/mysql/HOSTNAME.err, DirectAdmin изменяет путь к логу на /home/mysql/HOSTNAME.err. HOSTNAME — hostname сервера, на котором установлен MySQL.
Настроить место хранения лога запросов и лога медленных запросов можно при помощи директивы log-output в my.cnf. Если указать log-output=TABLE, тогда эти логи будут храниться в БД с именем «mysql» и соответствующих таблицах: general_log и slow_log.
Включить и отключить главный лог MySQL, в который будут записываться абсолютно все запросы к БД можно не перезагружая сервер:
SET GLOBAL general_log = ‘ON’;SET GLOBAL general_log = ‘OFF’;
Следует учитывать, что на сервере под нагрузкой лог запросов MySQL будет очень быстро разростаться, поэтому оставлять его включенным на долго не стоит.
Путь к базам данных: /var/db/mysql/ (DirectAdmin — /home/mysql/).
Путь к конфигурационному файлу MySQL my.cnf: /etc/my.cnf.
Добавить пользователя с полным доступом:
CREATE USER ‘superuser’@’localhost’ IDENTIFIED BY ‘PASS’; GRANT ALL PRIVILEGES ON *.* TO ‘superuser’@’localhost’ WITH GRANT OPTION;# PASS — нужно заменить на пароль для пользователя superuser# Доступ у пользователя superuser будет только с локального компьютера# Чтобы открыть доступ для superuser из сети, нужно добавить нового пользователя# и заменить localhost на %
Изменить/восстановить пароль root в MySQL не имея ученой записи с ALL PRIVILEGES:
# mysqladmin -u root password ‘Новый пароль’
Для смены root пароля можно использовать и другой способ: запустить MySQL с опцией, запрещающей проверку прав доступа, зайти под root без пароля и сменить пароль SQL запросом (пример для БД установленной Директадмином, но его легко можно изменить, используя материалы этого раздела и для MySQL установленного из портов):
# /usr/local/etc/rc.d/mysqld stop
# cd /usr/local/mysql/bin/
# ./mysqld_safe —skip-grant-tables &
# mysql -uroot
use mysqlUPDATE user SET password=PASSWORD(‘НОВЫЙ ПАРОЛЬ’) WHERE user=’root’;
FLUSH PRIVILEGES;
quit
Теперь находим номера PID процессов MySQL
# ps ax | grep mysql
69349 1 I 0:00.01 /bin/sh ./mysqld_safe —skip-grant-tables
69583 1 I 0:00.09 /usr/local/mysql/bin/mysqld —basedir=/usr/local/mysql —datadir=/usr/local/mysql/data —plugin-dir=/usr/local
69787 1 S+ 0:00.00 grep mysql
Далее первым нужно остановить процесс ./mysqld_safe —skip-grant-tables, потом /usr/local/mysql/bin/mysqld
# kill -9 69349
# kill -9 69583
Номера процессов в Вашей системе будут отличаться!
Если остановить вначале не тот процесс — /usr/local/mysql/bin/mysqld, то он не остановится, а просто перезапустится, и так будет до бесконечности, пока не будет остановлен процесс ./mysqld_safe —skip-grant-tables.
Директория с установленным MySQL: /usr/local/mysql/. Если база данных была установлена при помощи DirectAdmin, то /usr/local/mysql будет символической ссылкой на директорию в /usr/local/, например для MySQL 5.6 это может быть ссылка на /usr/local/mysql-5.6.10-freebsd8.4-x86_64.
Устанавливаем ftp сервер vsftpd
Начнем нашу настройку с установки ftp сервера vsftpd. Для авторизации мы будем использовать системные учетные записи, анонимный доступ отключим.
Первым делом обновим порты:
# portsnap fetch update
После обновления, ставим сервер:
# cd /usr/ports/ftp/vsftpd # make install clean
Компоненты оставляем по-умолчанию. Добавляем загрузку vsftpd в /etc/rc.conf:
# echo 'vsftpd_enable="YES"' >> /etc/rc.conf
Редактируем конфиг /usr/local/etc/vsftpd.conf, приводим его к следующему виду:
anonymous_enable=NO local_enable=YES write_enable=YES local_umask=022 dirmessage_enable=YES xferlog_enable=YES connect_from_port_20=YES xferlog_file=/var/log/vsftpd.log listen=YES background=YES secure_chroot_dir=/usr/local/share/vsftpd/empty
Запускаем сервер:
# /usr/local/etc/rc.d/vsftpd start
Проверяем, запустился ли демон:
# sockstat | grep 21
В ответ должны увидеть что-то похожее:
root vsftpd 4793 3 tcp4 *:21 *:*
Это означает, что сервер запустился и слушает входящие соединения на 21 порт. С текущими настройками можно залогиниться учетной записью root и перемещаться по всему серверу. Это очень небезопасно, призываю внимательно относиться к этим возможностям
Рекомендую подробнее ознакомиться с настройками сервера, обратить внимание на директивы userlist_enable, userlist_file, chroot_local_uses, chroot_list_enable, chroot_list_file. С помощью них можно ограничивать доступ к серверу и перемещение пользователей по папкам
Вообще, у vsftpd много настроек и возможностей, в интернете достаточно статей на подобную тему. Можно без проблем хранить базу пользователей сервера в mysql. В завершение порекомендую ограничить доступ к ftp через firewall.
Почему не запускается MySQL сервер?
Если вы используете systemd для запуска сервисов, то получите такую ошибку:
failed to start mysql server или job for mysql failed because the control proccess exited
Из сообщения понято только то что что-то пошло не так, но что именно неизвестно. Чаще всего проблемы в работе MySQL могут вызвать такие причины:
- Синтаксические ошибки в конфигурационном файле;
- Неверные настройки;
- Недостаточное количество оперативной памяти на сервере;
- Проблемы с правами доступа;
- Сетевой порт уже занят;
- Таблицы баз данных повреждены;
Дальше мы рассмотрим основные пути решения этих проблем. Но сначала нам нужно выяснить почему не запускается программа. Гадать на кофейной гуще и перебирать все возможные методы решения можно очень долго, самым эффективным решением будет посмотреть какие ошибки выдает сама программа.
PHP 5.6 не коннектится к MySQL 8.0
Притом, из PHP 7.0 и выше подключение успешно.
При попытке подключения из PHP 5.6 получаем ошибку:
Warning: PDO::__construct(): Server sent charset (255) unknown to the client.
Или так, если смотреть ексепшн:
SQLSTATE Server sent charset unknown to the client.
Ох уж эти пляски с чарсетами и их алиасами! Теперь сервер по дефолту желает общаться на utf8mb4, которую старый клиент не понимает.
Лечится настройкой сервера. Правки в my.cnf следующие:
client default-character-set=utf8 mysql default-character-set=utf8 mysqld collation-server = utf8_unicode_ci character-set-server = utf8
Впрочем, можно и классическую latin1 установить.
Разумеется, после правки конфига требуется перезапуск сервера.
Что нового в MySQL 5.6
В феврале 2013 года Oracle анонсировала новый релиз MySQL 5.6, в котором содержатся весьма интересные обновления, в основном коснувшиеся таблиц InnoDB, такие как поддержка средств полнотекстового поиска в таблицах InnoDB, повышенная производительность при интенсивной записи данных, доступ к данным через memcached API и другое. С полным списком изменений можно ознакомиться тут: , .
Установка MySQL 5.6 в FreeBSD, обычно, проходит гладко, а вот обновление, наоборот, таит в себе множество скрытых проблем (MySQL — установка и настройка в Windows). Все описанные в статье примеры протестированы на FreeBSD 8.4.
Шаг 4: установите PHP 7.4
Последний компонент стека FAMP — это PHP, ведущий язык программирования в области веб-разработки на данный момент. Без PHP динамические веб-сайты, которые вы хотите запускать на своем сервере, не будут полностью функционировать.
Подобно тому, как мы использовали команду pkg раньше, мы также можем установить PHP из репозиториев FreeBSD.
Чтобы установить важные пакеты php74, php74-mysqli и mod_php74, введите команду ниже:
$ sudo pkg install -y php74 php74-mysqli mod_php74
Смотрите установленную версию:
$ php --version
Если установленная версия актуальна, перейдите к репликации образца файла конфигурации PHP, выполнив команду, как показано ниже:
$ sudo cp /usr/local/etc/php.ini-production /usr/local/etc/php.ini
Чтобы запустить PHP, введите:
$ sudo sysrc php_fpm_enable=yes $ sudo service php-fpm start
Чтобы проверить, запущен ли PHP, введите:
$ sudo service php-fpm status
Чтобы добавить что-то еще к только что установленному пакету PHP, попробуйте несколько вспомогательных модулей. Найдите пакеты, написанные с помощью модулей PHP:
$ php -m
Затем используйте команду ниже для поиска любых доступных модулей PHP:
$ pkg search ^php74-*
Вы должны увидеть несколько модулей PHP. Вы можете установить любой из них, который хотите попробовать, с помощью команды pkg.
Начало работы в MySQL
Многие пользователи MySQL впервые сталкиваются с проблемой уже в процессе установки и настройки. Мануал Установка MySQL в Ubuntu 18.04 содержит инструкции по базовой конфигурации и может быть полезным для новичков в MySQL.
Причина, по которой некоторые пользователи сталкиваются с проблемами, заключается в том, что их приложениям требуются функции базы данных, доступные только в последних релизах, но версия MySQL в репозиториях по умолчанию некоторых дистрибутивов Linux (включая Ubuntu) не очень свежая. Потому разработчики MySQL поддерживают свой собственный репозиторий программного обеспечения, который вы можете использовать для установки последней версии и регулярного ее обновления. В мануале Установка последней версии MySQL в Ubuntu 18.04 содержатся инструкции о том, как это сделать.
Импорт бэкапов
С импортом баз проблем не возникло.
С пользователями пришлось немного повозиться и найти их оригинальные пароли. Дело в том, что CREATE USER и GRANT теперь строго разделены (ранее запрос GRANT так же и создавал пользователя), синтаксис вида IDENTIFIED BY PASSWORD ‘*03E2854B1BC2353C7FED1F780C55F7845322DC57’ тоже не поддерживается, а синтаксис вида IDENTIFIED WITH mysql_native_password BY ‘new_password1’ , о котором сказано в мануале, требует реальный пароль. Соответственно, скрипт создания пользователей, полученный при помощи SHOW GRANTS на сервере предыдущей версии (5.6) пришлось значительно переделать.
Заключение
Самое важное при диагностике — понять, что именно вызвало ошибку. Следующие шаги помогут вам в этом:
Первый и самый важный шаг — просмотреть журналы MySQL, которые хранятся в каталоге . Вы можете использовать утилиты командной строки вроде для чтения файлов журнала.
Если служба MySQL не запускается, проверьте её состояние с помощью . Или используйте команду (с флагом ) в systemd.
Вы также можете проверить файл системного журнала (например, ) на предмет обнаружения ошибок.
Попробуйте использовать такие инструменты, как Mytop, glances, top, ps или htop, чтобы проверить, какая программа использует весь ресурс процессора или блокирует машину
Они также помогут определить нехватку памяти, дискового пространства, файловых дескрипторов или какого-либо другого важного ресурса.
Если проблема в каком-либо процессе, можно попытаться его принудительно остановить, а затем запустить (при необходимости).
Если вы уверены, что проблемы именно на стороне сервера, можете выполнить команды: или , чтобы получить от него ответ.
Если при подключении проблема не связана с сервером, проверьте, нормально ли работает клиент. Попробуйте получить какие-либо его выходные данные для устранения неполадок.
Перевод статьи «Useful Tips to Troubleshoot Common Errors in MySQL»
Заключение
MySQL управляет данными огромного количества приложений и веб-сайтов. Конечно, такое широкое применение подразумевает и много потенциальных ошибок.
Здесь мы рассмотрели некоторые из наиболее часто встречающихся ошибок, но есть и другие, которые могут возникнуть в зависимости от того, как ваше приложение взаимодействует с MySQL.
Если вы не смогли найти здесь четкое решение своей проблемы, мы надеемся, что мануал, по крайней мере, дал вам некоторое представление об устранении общих неполадок MySQL, а это поможет найти источник ваших ошибок. Много полезной дополнительной информации вы можете найти в официальной документации MySQL. Кроме тем, которые мы здесь обсуждали, она охватывает другие стратегии устранения неполадок.
MariaDBMySQLSQL