MySQL server has gone away

MySQL, PostgreSQL, InterBaseSQL etc

Модераторы: Art.i, vasya

MySQL server has gone away

Сообщение nebaz » Пн дек 15, 2014 3:34 pm

Здравствуйте. В последнее время начал постоянно перезагружается mysql с ошибками: "MySQL server has gone away","Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock'", "Lost connection to MySQL server during query." В чём может быть прична? вот логи:

Код: выделить все
141215 15:23:21 mysqld_safe Number of processes running now: 0
141215 15:23:21 mysqld_safe mysqld restarted
141215 15:23:21 [Note] Plugin 'FEDERATED' is disabled.
141215 15:23:21 InnoDB: The InnoDB memory heap is disabled
141215 15:23:21 InnoDB: Mutexes and rw_locks use GCC atomic builtins
141215 15:23:21 InnoDB: Compressed tables use zlib 1.2.3
141215 15:23:21 InnoDB: Using Linux native AIO
141215 15:23:21 InnoDB: Initializing buffer pool, size = 256.0M
141215 15:23:21 InnoDB: Completed initialization of buffer pool
141215 15:23:21 InnoDB: highest supported file format is Barracuda.
InnoDB: The log sequence number in ibdata files does not match
InnoDB: the log sequence number in the ib_logfiles!
141215 15:23:21  InnoDB: Database was not shut down normally!
InnoDB: Starting crash recovery.
InnoDB: Reading tablespace information from the .ibd files...
InnoDB: Restoring possible half-written data pages from the doublewrite
InnoDB: buffer...
141215 15:23:21  InnoDB: Waiting for the background threads to start
141215 15:23:22 InnoDB: 5.5.40 started; log sequence number 100708230579
141215 15:23:22 [Note] Server hostname (bind-address): '0.0.0.0'; port: 3306
141215 15:23:22 [Note]   - '0.0.0.0' resolves to '0.0.0.0';
141215 15:23:22 [Note] Server socket created on IP: '0.0.0.0'.
141215 15:23:22 [Note] Event Scheduler: Loaded 0 events
141215 15:23:22 [Note] /usr/libexec/mysqld: ready for connections.
Version: '5.5.40'  socket: '/var/lib/mysql/mysql.sock'  port: 3306  MySQL Community Server (GPL) by Remi
nebaz
 
Сообщений: 5
Зарегистрирован: Пн дек 15, 2014 3:31 pm

Re: MySQL server has gone away

Сообщение Art.i » Вт дек 16, 2014 5:57 am

В логе нет никаких ошибок. Только лог запуска.
Скорей всего мускул падает из-за нехватки ресурсов, посмотри другие логи сервера, например Apache или messages в момент падения.
Art.i
Support team
 
Сообщений: 719
Зарегистрирован: Ср сен 25, 2013 2:07 pm

Re: MySQL server has gone away

Сообщение nebaz » Вт дек 16, 2014 1:02 pm

Действительно, php-fpm сожрал всю память и сервер убивал mysql из-за нехватки памяти. Рестарт php-fpm решил проблему.
Если уменьшить значения pm.max_children, pm.max_requests должно помочь?
nebaz
 
Сообщений: 5
Зарегистрирован: Пн дек 15, 2014 3:31 pm

Re: MySQL server has gone away

Сообщение Art.i » Вт дек 16, 2014 3:54 pm

Да, должно помочь.
Art.i
Support team
 
Сообщений: 719
Зарегистрирован: Ср сен 25, 2013 2:07 pm

Re: MySQL server has gone away

Сообщение nebaz » Вт дек 16, 2014 4:36 pm

Да, уменьшил, в течение дня только половина памяти забилась, пока хорошо.
Можете порекомендовать на ваш взгляд оптимальные параметры? 1000 уникальных в сутки, 3000 просмотров страниц в сутки, память: 1GB, проц: 2 ядра 1.2GHz.
nebaz
 
Сообщений: 5
Зарегистрирован: Пн дек 15, 2014 3:31 pm

Re: MySQL server has gone away

Сообщение Art.i » Вт дек 16, 2014 4:45 pm

Оптимального параметра нет.
Ставьте этот параметр повыше, если проблема наблюдается, понижайте, пока не найдёте оптимальное значение.
Либо закажите побольше оперативной памяти.
Art.i
Support team
 
Сообщений: 719
Зарегистрирован: Ср сен 25, 2013 2:07 pm

Re: MySQL server has gone away

Сообщение nebaz » Пн дек 22, 2014 6:02 pm

Поставил pm.max_children = 30. При старте создаётся 10 процессов "php-fpm: pool mysite.ru". Через несколько дней процессов около 20. Прошла неделя и "504 Gateway Time-out", в логах: "server reached pm.max_children setting (30), consider raising it". Понятно, если увеличить pm.max_children, то это поможет, но тогда вернёмся к первой проблеме нехватки памяти. Почему процессы php плодятся и занимают всю память?
nebaz
 
Сообщений: 5
Зарегистрирован: Пн дек 15, 2014 3:31 pm

Re: MySQL server has gone away

Сообщение ls » Пн дек 22, 2014 9:30 pm

Надо смотреть подключения к веб-серверу по netstat -na | grep 80
Возможно, также повисают вебскрипты и возможно поможет выключение keepalive в nginx (keepalive 0)
* FirstVDS в twitter в facebook и в вконтакте *
ls
Support team
 
Сообщений: 6388
Зарегистрирован: Чт мар 01, 2007 10:36 am
Откуда: FirstVDS


Вернуться в Базы данных

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1