Среда, 29 апреля 2015 19:31

Red Hat Enterprise Linux 7.1: если крэшится база

Оцените материал
(0 голосов)

Продолжаем разговор про Amazon Web Services.

 

Dev banner 1

 

Итак, свой сервер на Amazon Web Services мы с вами получили и сайты свои на нем разместили. Все ок? Немного подождем с проявлением эмоций и попробуем для начала взглянуть логи MariaDB:

 

$ sudo cat /var/log/mariadb/mariadb.log

 


попробовали.. . и видим, к удивлению своему, что здесь далеко не все гладко... хм, а что же именно мы видим? - ну, возможно, вот примерно такое, в любых вариациях и последовательностях:

 

таблица_такая-то is marked as crashed and should be repaired
InnoDB: Database was not shut down normally!
InnoDB: Database was not shut down normally!
InnoDB: The InnoDB memory heap is disabled
InnoDB: Database was not shut down normally!
[Note] Plugin 'FEEDBACK' is disabled. (это как раз нестрашно).



Да, радоваться рано... ладно, по порядку. Этот крэш (или же ярко выраженное предвестие крэша):

 

131101 3:29:40 InnoDB: Fatal error: cannot allocate memory for the buffer pool
131101 3:29:40 [ERROR] Plugin 'InnoDB' init function returned error.
131101 3:29:40 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.

 

способен быть вылеченным, как правило, вот так (для небольших серверов):

 

innodb_buffer_pool_size = 16M

 

Попробуйте. В качестве же решения для

 

InnoDB: The InnoDB memory heap is disabled

 

вполне помогает

 

innodb_use_sys_malloc = 0

 

да, и не забываем обозначить кодировку utf8 по умолчанию:

 

[mysqld]
init_connect=‘SET collation_connection = utf8_unicode_ci’
character-set-server = utf8
collation-server = utf8_unicode_ci
[client]
default-character-set = utf8

 

Таким образом, совсем по минимуму ваш /etc/my.cnf способен выглядеть теперь примерно так:

 

[mysqld]
innodb_use_sys_malloc = 0
innodb_buffer_pool_size = 16M
innodb_log_buffer_size = 4M
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd
init_connect='SET collation_connection = utf8_unicode_ci'
character-set-server = utf8
collation-server = utf8_unicode_ci
[client]
default-character-set = utf8
[mysqld_safe]
log-error=/var/log/mariadb/mariadb.log
pid-file=/var/run/mariadb/mariadb.pid
#
# include all files from the config directory
#
!includedir /etc/my.cnf.d

 

Далее, сахар и соль, как говорится - по вкусу... да, но это не главное. Причиной проблем с БД способен стать, как ни странно... неправильно сконфигурированный apache (клик по ссылке).

 

Серия статей, посвященных Amazon Web Services, берет начало от топика форума. Если вас заинтересовало предложение бесплатного, сроком на один год, сервера - сервера с весьма неплохими, хотя и лимитированными, ресурсами - мы рекомендуем внимательно прочесть все представленные в разделе Red Hat Enterprise Linux материалы, на форуме и в блоге. Никаких умолчаний, никакого скрытого текста, поверьте. Все честно. Но, если вы все-таки решите поручить настройку облачного сервера на Амазоне специалистам Masterpro - вам понадобится всего-навсего найти страничку Контакты на этом сайте; да, вы правы, это у нас была небольшая реклама.

 

Последнее изменениеЧетверг, 16 декабря 2021 21:41

Оставить комментарий

Добавьте ваш комментарий

Linux для вас. Аутсорсинг и консультации

Линукс для вас. Аутсорсинг и консультации.