- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Маркетинг для шоколадной фабрики. На 34% выше средний чек
Через устранение узких мест
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Если буферы недопустимо уменьшать(из-за IO например), то можете установить на сервере swap в zram, это неплохо поможет.
таблиц в базе данных много? Структуру поврежденной таблице показать можете?
Таблицы стандартные для движков dle, joomla, wordpress
/etc/mysql/my.cnf покажите?
max_allowed_packet=32M
pid-file=/var/run/mysqld/mysqld.pid
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
symbolic-links=0
innodb_file_per_table=1
[mysqld_safe]
log-error=/var/log/mariadb/mariadb.log
pid-file=/var/run/mariadb/mariadb.pid
!includedir /etc/my.cnf.d
Я тут в файле mariadb.service добавил строки:
RestartSec=10s
не знаю это ли помогло или нет, но по крайней мере в последние пару дней сайты хотя бы не висят с ошибкой. Знаю, что это в целом не решает проблемы, но хотя бы такой костиль.
Подскажите, если перейти с OpenVZ на KVM с таким же объёмом оперативки, то памяти больше будет оставаться или нет? А то были мысли перейти на KVM на дисках NVMe, может уже пришло время.
---------- Добавлено 15.10.2018 в 17:17 ----------
Возможно боты начали активно спамить
На трёх новых сайтах, которые я недавно добавил (они на чистом html), посмотрел логи посещения. Там действительно много заходов от ненужных ботов. Наверняка отъедают часть оперативки и поэтому для базы данных её не хватает. Закрыл индексацию через .htaccess и теперь понаблюдаю как изменятся логи сервера базы данных.
KVM вам поможет если у вас хостер недобросовестный и сдавал вам ресурсы, которых у него реально нет. OpenVZ это позволяет. Но я бы бежал от такого хостера
далеко далеко и чем быстрее, тем лучше. А вот реально поможет или нет зависит от того в чём же реально причина. Мы тут все лишь гадаем, никто не видел
вашего сервера и никто не может знать наверняка.
Автоматически перезапускает службу, если она была остановлена. Так что да, этот костыль вам поможет. Но вам надо устранять причину, а не последствия...
И это все, что в my.cnf?
поиграйтесь с параметрами
[mysqld]
# * Fine Tuning
#
key_buffer = 16M
max_allowed_packet = 16M
thread_stack = 192K
thread_cache_size = 8
# This replaces the startup script and checks MyISAM tables if needed
# the first time they are touched
myisam-recover = BACKUP
#max_connections = 100
#table_cache = 64
#thread_concurrency = 10
#
# * Query Cache Configuration
#
query_cache_limit = 1M
query_cache_size = 16M
И это все, что в my.cnf?
поиграйтесь с параметрами
Совет вредный. С параметрами надо не играться, а подбирать опытным путём с обязательным пониманием того, что вы делаете.
ТС вряд ли осилит эту задачу самостоятельно. Также следует отключить InnoDB если оно не используется. А вообще всей ситуации
никто из нас не знает... Я бы порекомендовал ТСу нанять админа, который разберётся в ситуации на конкретном сервере.
Сделать это можно в соответствующем разделе данного форума. Также проблема может быть совсем не по вине сервера...
Посмотрите в какой кодировке текстовые данные записываются в таблицу и установленную кодировку для БД. Может что-то с кодировкой неправильно? У вас в my.cnf не указана кодировка. Когда добавите строчки с указание кодировки не забудьте перезагрузить MySQL.
Давно взял за правило, что если задаю вопрос на форуме и потом самостоятельно нахожу решение проблемы, то обязательно отписываюсь о ней. Вдруг кому-то пригодится.
По моей проблеме я сделал следующее:
1. Отключил Innodb - не помогло;
2. Добавил некоторые настройки в my.cnf - не помогло;
3. В процессе заметил, что крон выполняет какие-то задания от панели ISPmanager, которой я уже давно не пользуюсь. Отключил их, думая, что эти процессы съедают память - не помогло;
4. Для обработки статичных файлов "перед" аппачем поставил Nginx - не помогло, но всё равно полезно;
5. И только лишь изменив конфиг аппача httpd.conf и добавив пункты, указанные ниже, отключения базы данных прекратились. А по данным в панели VM-manager количество отказов памяти с 500 с лишним упало ровно до 0, вот уже второй день подряд.
MinSpareServers 4
MaxSpareServers 8
ServerLimit 15
MaxClients 15
MaxRequestsPerChild 4000
Возможно кому-нибудь пригодится ))
Спасибо всем, кто откликнулся.
Думаю, что не из-за этого. Что до исправления в файле было написано?
Вы очень жестко лимитировали максимальное число обслуживаемых посетителей одновременно этим вот конфигом. Это не решение, это костыль...
Переходите на KVM вместо OpenVZ и сделайте своп-раздел.