Продолжение утренней темы с Mysql. Не стал всё в одной публикации делать, чтобы не смешивать темы. У меня необычная ситуация возникла, с которой столкнулся впервые. Я ранее уже делал заметку по ошибке с базой данных. Это её продолжение.
Напомню, что в базе Mysql с движком InnoDB внезапно появляется ошибка такого вида:
При этом сама база работает нормально, данные пишутся, читаются. Просто спотыкается чтение определённых строк в проблемной таблице. Это становится заметно при снятии дампа, так как он останавливается на этих строках.
Никакие рекомендованные процедуры лично мне не помогли восстановить таблицу. Пришлось восстанавливать из бэкапа.
А странность тут вот в чём. Ещё когда первый раз я с этим столкнулся, то восстановил всю виртуалку из бэкапа на другой сервер. Запустил её там и спокойно всё прочитал в таблицах, снял дамп. Никаких повреждений данных, всё на месте. То есть данные на самом деле не пострадали.
И вот эта история повторилась на том же сервере спустя более чем полгода. Опять побилась таблица. Развернул ночной бэкап виртуалки – там всё в порядке. Все данные на месте. Делают тут же без остановки ещё один бэкап проблемной виртуалки с помощью PBS, восстанавливаю на другом сервере, снимаю дамп. Опять всё в порядке, все данные на месте.
Не понимаю, что происходит, и как такое возможно. Идея только одна – какие-то проблемы с железом. Так как это уже не первый случай, принял решение отказаться от аренды этого сервера. Перед окончанием оплаченного периода закажу другой и перееду туда, а этот сервер сдам с тикетом в поддержку с предложением проверить хорошенько память. По идее это она может давать такие проблемы, но лично я с подобным не сталкивался.
Мне непонятен такой момент. Если с памятью проблемы, то данные по идее должны всё же биться и теряться. А тут восстанавливаешь глючащую виртуалку в другом месте и с ней вдруг всё становится в порядке, данные на месте. СУБД обычно чувствительна к таким сбоям, база теряет свою целостность. А тут всё в порядке.
У кого-то есть ещё идеи по этой ошибке? Может кто-то сталкивался с подобным. А то сервер сдам и больше не узнаю, что с ним было. Особо нет времени и возможности полноценно тестировать чужой сервер, не имея к нему полного доступа.
#mysql #ошибка
Напомню, что в базе Mysql с движком InnoDB внезапно появляется ошибка такого вида:
[ERROR] InnoDB: Index corruption: rec offs 12361 next offs 0[page id: space=33355, page number=1250], index `PRIMARY` o
f table `dbname01`.`table_01`. Run CHECK TABLE. You may need to restore from a backup, or dump + drop + reimport the table.
[ERROR] InnoDB: We detected index corruption in an InnoDB type table. You have to dump + drop + reimport the table or,
in a case of widespread corruption, dump all InnoDB tables and recreate the whole tablespace.
[ERROR] Got error 126 when reading table './dbname01/table_01'
[ERROR] mariadbd: Index for table 'table_01' is corrupt; try to repair it
При этом сама база работает нормально, данные пишутся, читаются. Просто спотыкается чтение определённых строк в проблемной таблице. Это становится заметно при снятии дампа, так как он останавливается на этих строках.
Никакие рекомендованные процедуры лично мне не помогли восстановить таблицу. Пришлось восстанавливать из бэкапа.
А странность тут вот в чём. Ещё когда первый раз я с этим столкнулся, то восстановил всю виртуалку из бэкапа на другой сервер. Запустил её там и спокойно всё прочитал в таблицах, снял дамп. Никаких повреждений данных, всё на месте. То есть данные на самом деле не пострадали.
И вот эта история повторилась на том же сервере спустя более чем полгода. Опять побилась таблица. Развернул ночной бэкап виртуалки – там всё в порядке. Все данные на месте. Делают тут же без остановки ещё один бэкап проблемной виртуалки с помощью PBS, восстанавливаю на другом сервере, снимаю дамп. Опять всё в порядке, все данные на месте.
Не понимаю, что происходит, и как такое возможно. Идея только одна – какие-то проблемы с железом. Так как это уже не первый случай, принял решение отказаться от аренды этого сервера. Перед окончанием оплаченного периода закажу другой и перееду туда, а этот сервер сдам с тикетом в поддержку с предложением проверить хорошенько память. По идее это она может давать такие проблемы, но лично я с подобным не сталкивался.
Мне непонятен такой момент. Если с памятью проблемы, то данные по идее должны всё же биться и теряться. А тут восстанавливаешь глючащую виртуалку в другом месте и с ней вдруг всё становится в порядке, данные на месте. СУБД обычно чувствительна к таким сбоям, база теряет свою целостность. А тут всё в порядке.
У кого-то есть ещё идеи по этой ошибке? Может кто-то сталкивался с подобным. А то сервер сдам и больше не узнаю, что с ним было. Особо нет времени и возможности полноценно тестировать чужой сервер, не имея к нему полного доступа.
#mysql #ошибка
Telegram
ServerAdmin.ru
Недавно была заметка про знание СУБД. Видел комментарии, мол пусть DBA разбираются в нюансах СУБД, а админам это ни к чему. Расскажу про один случай, который со мной на днях случился. Сразу скажу, что это не будет рекомендацией к действиям, так как сам я…
2👍40👎1
На днях увидел новость, что в Windows появилась утилита sudo 😳, как в Linux, для повышения пользовательских привилегий до административных. Было очень удивительно это увидеть и организационно, и по идентичному названию, которое в Windows выглядит инородно. Назвали бы PrivAdm, AdminUp, RunAsAdmin или что-то в этом роде. А тут линуксовое
Я особо не слежу за обновлениями Windows. У меня 11-я версия. Обновляется сама, когда ей вздумается. Открыл cmd, набрал sudo и увидел:
Sudo отключен на этом компьютере. Чтобы включить его, перейдите в раздел Developer Settings page в приложении "Параметры".
Сходил в раздел Система ⇨ Для разработчиков, переключил галочку для Включить sudo. Снова вернулся в терминал, набрал sudo и увидел ключи запуска.
Теперь для запуска чего-либо с правами администратора не надо открывать новую консоль от администратора. Можно в этой же использовать sudo. На самом деле удобно.
Открывается новый терминал с выполненной командой. Кстати, команда полезная, показывает открытые соединения.
Любопытно, что у утилиты для Windows открыт исходных код, который лежит на github:
⇨ https://github.com/microsoft/sudo
Не знаю, что там Microsoft мелочится. Выкладывали бы уже весь код системы Windows в open source, как RedHat. Вот это был бы номер 😁 Представляю, сколько бы новых вирусов появилось на основе анализа исходников системы.
❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#windows
sudo
.Я особо не слежу за обновлениями Windows. У меня 11-я версия. Обновляется сама, когда ей вздумается. Открыл cmd, набрал sudo и увидел:
Sudo отключен на этом компьютере. Чтобы включить его, перейдите в раздел Developer Settings page в приложении "Параметры".
Сходил в раздел Система ⇨ Для разработчиков, переключил галочку для Включить sudo. Снова вернулся в терминал, набрал sudo и увидел ключи запуска.
Теперь для запуска чего-либо с правами администратора не надо открывать новую консоль от администратора. Можно в этой же использовать sudo. На самом деле удобно.
> netstat -ab
Запрошенная операция требует повышения.
> sudo netstat -ab
Открывается новый терминал с выполненной командой. Кстати, команда полезная, показывает открытые соединения.
Любопытно, что у утилиты для Windows открыт исходных код, который лежит на github:
⇨ https://github.com/microsoft/sudo
Не знаю, что там Microsoft мелочится. Выкладывали бы уже весь код системы Windows в open source, как RedHat. Вот это был бы номер 😁 Представляю, сколько бы новых вирусов появилось на основе анализа исходников системы.
❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#windows
2👍149👎3
🔐 Хостинг, который справляется с задачами, а не создаёт новые проблемы
В IHC вы получаете выгодные условия, стабильную работу и поддержку, которая действительно помогает. Без лишних слов — только то, что нужно для сайта.
Что важно при выборе хостинга?
✔️ Надёжность — защита от DDoS входит во все тарифы
✔️ Скорость — только SSD NVMe диски
✔️ Удобство — CMS в 1 клик, автоматический SSL, оплата картами всех стран, вебмани, юмани
✔️ Поддержка — опытные эксперты 24/7 на русском языке
✔️ Гибкие тарифы — от 123 ₽ в месяц и тест 7 дней бесплатно
Для тех, кому нужно больше — VPS в Европе и России, а также новая услуга — облачный хостинг 1С с доступом из любой точки мира.
Если вам важно качество, стабильность и вежливый подход — будем рады видеть вас в числе наших клиентов🤝🏻
👉 Перейти на ihc.ru
Реклама, ООО «Интернет-Хостинг», ИНН 7701838266.
В IHC вы получаете выгодные условия, стабильную работу и поддержку, которая действительно помогает. Без лишних слов — только то, что нужно для сайта.
Что важно при выборе хостинга?
✔️ Надёжность — защита от DDoS входит во все тарифы
✔️ Скорость — только SSD NVMe диски
✔️ Удобство — CMS в 1 клик, автоматический SSL, оплата картами всех стран, вебмани, юмани
✔️ Поддержка — опытные эксперты 24/7 на русском языке
✔️ Гибкие тарифы — от 123 ₽ в месяц и тест 7 дней бесплатно
Для тех, кому нужно больше — VPS в Европе и России, а также новая услуга — облачный хостинг 1С с доступом из любой точки мира.
Если вам важно качество, стабильность и вежливый подход — будем рады видеть вас в числе наших клиентов🤝🏻
👉 Перейти на ihc.ru
Реклама, ООО «Интернет-Хостинг», ИНН 7701838266.
👍34👎13
Ранее я упоминал про утилиту Lynis, а также то, как я её использую в связке с Zabbix для предупреждения о каких-то проблемах на хостах. С момента написания статьи я немного поменял подход к сбору данных. Расскажу кратко, как это у меня сейчас работает. Я с тех пор постоянно использую эту связку. Мне нравится, как она работает.
Кратко поясню суть того, что делаю и для чего. Утилита Lynis есть в стандартных репах. Она делает некоторый набор проверок системы и пишет отчёт в лог. Конкретно меня от неё интересуют две вещи:
◽️Вывод предупреждений. Например, о том, что систему надо перезагрузить после обновления ядра, либо о том, что есть уязвимые пакеты.
◽️Список пакетов с уязвимостями, для которых доступны обновления.
С помощью Zabbix я анализирую лог Lynis и прямо на почту отправляю текст замечаний и уязвимых пакетов, если они есть. Реализую это следующим образом:
1️⃣ Делаю простой скрипт, который запускает Lynis и анализирует код завершения работы. У этой программы он ненулевой, если есть какие-то замечания. Завожу эти замечания в переменную и отправляю данные с помощью zabbix_sender на Zabbix Server. Если код выхода 0, то отправляю строку All is OK.
Сам скрипт очень простой:
Ставлю скрипт в cron или timers на выполнение раз в 2-3 часа. Чаще большого смысла нет.
2️⃣ В Zabbix Server делаю простой шаблон с одним элементом данных типа Zabbix траппер. Его настройки есть на скриншоте снизу. К айтему делаю два триггера. Один на поиск строки All is OK. Если в последнем полученном значении её нет, то срабатывает триггер. И второй - проверка, что данные приходят. Если в течении дня ничего не приходило, то он срабатывает. Настройки триггера тоже ниже.
3️⃣ В итоге если Lynis что-то находит, отправляет информацию в Zabbix Server. Срабатывает триггер, в описании которого будет текст из айтема со всеми замечаниями и списками уязвимых пакетов, которые надо обновить. Пример письма с информацией тоже есть ниже на картинке.
Всё это настраивается относительно просто. Не нужны никакие отдельные системы и сторонние пакеты. Всё ставится из базовых репозиториев, а система мониторинга скорее всего уже есть. Мне для базовых проверок такой информации достаточно.
Сам шаблон не прикрепляю, так как там всего один айтем и два триггера, содержимое которых и так есть на скринах. Воспроизвести нетрудно. Работать будет на любых версиях Zabbix сервера. Если не устанавливали на хосты zabbix_sender, то поставьте его. Он идёт в отдельном пакете:
Такая вот простая и функциональная система с предупреждениями об обновлениях и некоторых других вещах. Lynis делает много проверок, можно почитать о нём отдельно. В рамках этой заметки не стал на этом делать акцент.
❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#zabbix #security
Кратко поясню суть того, что делаю и для чего. Утилита Lynis есть в стандартных репах. Она делает некоторый набор проверок системы и пишет отчёт в лог. Конкретно меня от неё интересуют две вещи:
◽️Вывод предупреждений. Например, о том, что систему надо перезагрузить после обновления ядра, либо о том, что есть уязвимые пакеты.
◽️Список пакетов с уязвимостями, для которых доступны обновления.
С помощью Zabbix я анализирую лог Lynis и прямо на почту отправляю текст замечаний и уязвимых пакетов, если они есть. Реализую это следующим образом:
Сам скрипт очень простой:
#!/bin/bash
/usr/sbin/lynis audit system -q
exitcode=$?
result="0"
if [ $exitcode != 0 ]; then
result=$(/usr/bin/grep "Warning:\|Found vulnerable package" /var/log/lynis.log)
else
result="All is OK"
fi
zabbix_sender -c /etc/zabbix/zabbix_agentd.conf -k "lynis.check" -o "$result"
Ставлю скрипт в cron или timers на выполнение раз в 2-3 часа. Чаще большого смысла нет.
Всё это настраивается относительно просто. Не нужны никакие отдельные системы и сторонние пакеты. Всё ставится из базовых репозиториев, а система мониторинга скорее всего уже есть. Мне для базовых проверок такой информации достаточно.
Сам шаблон не прикрепляю, так как там всего один айтем и два триггера, содержимое которых и так есть на скринах. Воспроизвести нетрудно. Работать будет на любых версиях Zabbix сервера. Если не устанавливали на хосты zabbix_sender, то поставьте его. Он идёт в отдельном пакете:
# apt install zabbix-sender
Такая вот простая и функциональная система с предупреждениями об обновлениях и некоторых других вещах. Lynis делает много проверок, можно почитать о нём отдельно. В рамках этой заметки не стал на этом делать акцент.
❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#zabbix #security
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍66