Недавно я перешел с MySQL4 на MySQL5 (у нас были приложения, которые требовали MySQL4, который мы наконец заменили)
С тех пор у меня было МНОГО проблем, похожих на:
connect() failed: Lost connection to MySQL server at 'reading initial communication packet', system error: 0
Да, это системная ошибка 0 - «Успех».
Понятия не имею, почему это происходит, но хочу выяснить, почему
Вот мой (санированный) my.cnf
[client]
port = 3306
socket = /var/run/mysqld/mysqld.sock
[mysqld_safe]
socket = /var/run/mysqld/mysqld.sock
nice = 0
[mysqld]
user = mysql
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
port = 3306
basedir = /usr
datadir = /var/lib/mysql
tmpdir = /tmp
language = /usr/share/mysql/english
skip-external-locking
key_buffer = 1048M
max_allowed_packet = 16M
thread_stack = 2M
thread_cache_size = 16384
sort_buffer_size = 256K
read_buffer_size = 2M
read_rnd_buffer_size = 256K
tmp_table_size = 512M
max_heap_table_size = 512M
query_cache_size = 512M
thread_concurrency = 16
set-variable = table_cache=16384
max_connections = 500
wait_timeout = 3600
innodb_buffer_pool_size = 1024M
innodb_additional_mem_pool_size = 8M
innodb_lock_wait_timeout = 50
innodb_flush_method=O_DIRECT
innodb_log_buffer_size = 8M
innodb_thread_concurrency = 8
innodb_file_per_table=1
query_cache_limit = 1024M
query_cache_size = 512M
query_cache_type = 1
server-id = 9
log_bin = /var/log/mysql/mysql-bin.log
expire_logs_days = 10
max_binlog_size = 100M
expire_logs_days = 3
skip-bdb
[mysqldump]
quick
quote-names
max_allowed_packet = 16M
[mysql]
prompt = (\u@atlas) [\d]>\\_
[isamchk]
key_buffer = 16M
!includedir /etc/mysql/conf.d/
РЕДАКТИРОВАТЬ Я изменил my.cnf выше - я только что понял, что это старый сервер! Также - это 5.0, а не 5.1
Кажется, есть подробный отчет об ошибке это объясняет эту ошибку с возможным решением для увеличения connect_timeout
параметр.
Во-первых, избавьтесь от строки «skip-bdb», как написано здесь: Проблема с обновлением mysql-Server-5.1