Пытался зайти в консоль - не пускало, сложилось впечатление что дос идет. Сайты на сервере по http не открывались.
Зашел через web-консоль от хостинг компании, тоже не пускала, но она вывела что-то наподобие mysql proccess out of memory.
Попробовал перегрузить сервер, все заработало. Прошло пару дней ситуайия повтолась.
В поддержке сказали чтобы искал эту ошибку в системных логах. Но там в /var/log/messages этого нет.
Подскажите в каких логах искать эту ошибку и как еще можно определить почему сервер перестает отвечать.
Сервер расходует всю память.
Модераторы: SLEDopit, Модераторы разделов
-
Ленивая Бестолочь
- Бывший модератор
- Сообщения: 2760
- ОС: Debian; gentoo
Re: Сервер расходует всю память.
включите какую-нибудь систему диагностики, например sysstat.
посмотрите, что получите в её логах. нагрузку CPU, память, место и т.п.
так же мониторьте ко-во процессов, может быть что-то плодится у вас.
посмотрите, что получите в её логах. нагрузку CPU, память, место и т.п.
так же мониторьте ко-во процессов, может быть что-то плодится у вас.
Солнце садилось в море, а люди с неоконченным высшим образованием выбегали оттуда, думая, что море закипит.
-
Ism
- Сообщения: 1261
- Статус: Никто, по сути быдло
Re: Сервер расходует всю память.
mysql proccess out of memory
У меня тоже mysqld процесс рос как на дрожжах и не останавливался. Причина, криво настроенный конфиг не ограничивающий размер кеша индексов и тех же запросов.
Могу выложить свой конфиг.
-
abc123
- Сообщения: 32
Re: Сервер расходует всю память.
Спасибовключите какую-нибудь систему диагностики, например sysstat.
посмотрите, что получите в её логах. нагрузку CPU, память, место и т.п.
так же мониторьте ко-во процессов, может быть что-то плодится у вас.
Выложите пожалуйста
-
Ism
- Сообщения: 1261
- Статус: Никто, по сути быдло
Re: Сервер расходует всю память.
Много мусора, просто проверьте указанные переменные сервера. Я сам точно не знаю какие из них заставляют работать демон без утечки памяти
Это параметры для Core i7 16 Гигабайт памяти
Так что каждую переменную желательно проверить
Это параметры для Core i7 16 Гигабайт памяти
Так что каждую переменную желательно проверить
Код: Выделить всё
#
# The MySQL database server configuration file.
#
# You can copy this to one of:
# - "/etc/mysql/my.cnf" to set global options,
# - "~/.my.cnf" to set user-specific options.
#
# One can use all long options that the program supports.
# Run program with --help to get a list of available options and with
# --print-defaults to see which it would actually understand and use.
#
# For explanations see
# http://dev.mysql.com/doc/mysql/en/server-system-variables.html
# This will be passed to all mysql clients
# It has been reported that passwords should be enclosed with ticks/quotes
# escpecially if they contain "#" chars...
# Remember to edit /etc/mysql/debian.cnf when changing the socket location.
[client]
port = 3306
socket = /var/run/mysqld/mysqld.sock
# Here is entries for some specific programs
# The following values assume you have at least 32M ram
# This was formally known as [safe_mysqld]. Both versions are currently parsed.
[mysqld_safe]
socket = /var/run/mysqld/mysqld.sock
nice = 0
[mysqld]
#
# * Basic Settings
#
#
# * IMPORTANT
# If you make changes to these settings and your system uses apparmor, you may
# also need to also adjust /etc/apparmor.d/usr.sbin.mysqld.
#
user = mysql
socket = /var/run/mysqld/mysqld.sock
port = 3306
basedir = /usr
datadir = /var/lib/mysql
tmpdir = /tmp
skip-external-locking
#
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
bind-address = 0.0.0.0
#
# * Fine Tuning
#
key_buffer_size = 256M
max_allowed_packet = 16M
thread_stack = 192K
table_open_cache = 256
sort_buffer_size = 1M
read_buffer_size = 1M
read_rnd_buffer_size = 4M
myisam_sort_buffer_size = 512M
thread_cache_size = 12
query_cache_size= 16M
thread_concurrency = 24
record_buffer=32M
sort_buffer=128M
max_binlog_cache_size = 1000M
# This replaces the startup script and checks MyISAM tables if needed
# the first time they are touched
myisam-recover = BACKUP
max_connections = 30
#
# * Query Cache Configuration
#
query_cache_limit = 1M
max_heap_table_size=3500000000
#max_allowed_packet=100000000
#
# * Logging and Replication
#
# Both location gets rotated by the cronjob.
# Be aware that this log type is a performance killer.
# As of 5.1 you can enable the log at runtime!
#general_log_file = /var/log/mysql/mysql.log
#general_log = 1
log_error = /var/log/mysql/error.log
# Here you can see queries with especially long duration
#log_slow_queries = /var/log/mysql/mysql-slow.log
#long_query_time = 2
#log-queries-not-using-indexes
#
# The following can be used as easy to replay backup logs or for replication.
# note: if you are setting up a replication slave, see README.Debian about
# other settings you may need to change.
#server-id = 1
#log_bin = /var/log/mysql/mysql-bin.log
expire_logs_days = 10
max_binlog_size = 100M
#binlog_do_db = include_database_name
#binlog_ignore_db = include_database_name
#
# * InnoDB
#
# InnoDB is enabled by default with a 10MB datafile in /var/lib/mysql/.
# Read the manual for more InnoDB related options. There are many!
#
# * Security Features
#
# Read the manual, too, if you want chroot!
# chroot = /var/lib/mysql/
#
# For generating SSL certificates I recommend the OpenSSL GUI "tinyca".
#
# ssl-ca=/etc/mysql/cacert.pem
# ssl-cert=/etc/mysql/server-cert.pem
# ssl-key=/etc/mysql/server-key.pem
[mysqldump]
quick
quote-names
max_allowed_packet = 16M
[mysql]
#no-auto-rehash # faster start of mysql but no tab completition
#[isamchk]
#key_buffer = 16M
[myisamchk]
key_buffer_size = 128M
sort_buffer_size = 128M
read_buffer = 2M
write_buffer = 2M
#
# * IMPORTANT: Additional settings that can override those from this file!
# The files must end with '.cnf', otherwise they'll be ignored.
#-
neol
- Сообщения: 600
- ОС: Debian Stable
Re: Сервер расходует всю память.
Максимально возможный объем занятой MySQL памяти можно вычислить по формуле - (read_buffer_size + read_rnd_buffer_size + sort_buffer_size + thread_stack + join_buffer_size) * max_connections + innodb_buffer_pool_size + innodb_additional_mem_pool_size + innodb_log_buffer_size + query_cache_size + key_buffer_size + (большее из max_heap_table_size и tmp_table_size)
Но лучше не парить мозг и использовать специально обученный скрипт - http://mysqltuner.pl/mysqltuner.pl он еще и советов по улучшению даст (но применять их до внимательного изучения документации не стоит).
А мне кажется это северный пушной зверек.
-
Ism
- Сообщения: 1261
- Статус: Никто, по сути быдло
Re: Сервер расходует всю память.
А мне кажется это северный пушной зверек.
Завидовать нехорошо
Просто у нас используются MEMORY таблицы.
-
neol
- Сообщения: 600
- ОС: Debian Stable
-
Ism
- Сообщения: 1261
- Статус: Никто, по сути быдло
Re: Сервер расходует всю память.
Нет проблем, выложи правильный конфиг.
Я свой только для примера выложил
Я свой только для примера выложил
-
neol
- Сообщения: 600
- ОС: Debian Stable
Re: Сервер расходует всю память.
А правильного для всех не существует (: В дистрибутиве MySQL идут несколько примеров от которых можно начинать танцевать, вооружившись знанием о том, какие переменные влияют на потребление памяти и за что эти переменные отвечают (в документации все достаточно подробно разобрано). Так-то твой конфиг тоже наверное правильный (за исключением дублирования переменных и использования устаревших названий, что не фатально), но только для такого же сервера с таким же характером нагрузки.
А если я еще несколько конфигов с разных машин с различными задачами выложу, то у топикстартера может мозг разорвать (:
-
BIgAndy
- Сообщения: 1923
Re: Сервер расходует всю память.
по вопросам настройки SQL сервера рекометую обратиться на SQL.ru.
-
Ism
- Сообщения: 1261
- Статус: Никто, по сути быдло
Re: Сервер расходует всю память.
А если я еще несколько конфигов с разных машин с различными задачами выложу, то у топикстартера может мозг разорвать (:
Все такие загадочные.