MacOS High Sierra MySQL server has gone away
После установки MySQL Server 5.7.19 на локальный MacBook Pro с операционной системой macOS High Sierra 10.13.4 (17E199). Начал испытывать проблему на своих Веб проектах. Так как иногда проекты первоначально делаю локально что бы не обращаться все время на удаленный сервер.
Ошибки проявлялись следующего типа что MySql Server во время не ответил или отключен. MySQL server has gone away. Поиски в интернет в большинстве рекомендации указывали на то что необходимо править конфигурационный файл /etc/my.cnf и увеличить параметры max_allowed_packet, max_connections, interactive_timeout, wait_timeout. К сожалению мне увеличение этих параметров не помогло, так как описание говорила о том что на сервере происходит timeout подключение к БД.
Для меня возможна в моем случае помогла исправление параметра table_open_cache = 250 после этого у меня сообщения MySQL server has gone away пропала. И так настраиваем параметры MySql сервера для улучшение его производительности.
Для этого необходимо указать параметры и их значения в файле /etc/my.cnf. Если его нет, то его необходимо создать:
$ sudo nano /etc/my.cnf
В нем создается секция [mysqld] и устанавливаются параметры. В моем случае это выглядит так:
[mysqld]
key_buffer_size = 64M
sort_buffer_size = 32M
table_open_cache = 250
query_cache_limit = 2M
query_cache_size = 128M
query_cache_type = 1
thread_cache_size = 16
max_heap_table_size = 128M
tmp_table_size = 128M
interactive_timeout=300
wait_timeout=300
max_allowed_packet = 256M
sql_mode = ""
После изменение конфигурации MySql сервера, что бы изменение были приняты необходимо перезапустить MySQL server
sudo /usr/local/mysql/support-files/mysql.server restart