Key ‘x’ doesn’t exist in table ‘x’

Однажды после обновления биллинговой системы ABillS, при открытии меню Обслуживание>Оборудование>PON и выборе устройства возникала SQL ошибка:

Читать далее «Key ‘x’ doesn’t exist in table ‘x’»

Решение ошибки 21S01 Column count doesn’t match value count at row 1

Однажды понадобилось очень быстро внести запись в таблицу и я быстро написал SQL запрос, но после его выполнения получил ошибку:

Читать далее «Решение ошибки 21S01 Column count doesn’t match value count at row 1»

Решение: Specified key was too long; max key length is 767 bytes

Однажды в Ubuntu Server 18.04 я обновлял Zabbix 4.4 до 5.0 и обнаружил ошибку в логах во время обновления:

Читать далее «Решение: Specified key was too long; max key length is 767 bytes»

Перенос директории MySQL

Когда-то я создавал рейд, монтировал его как раздел дисковой системы и переносил каталог MySQL прямо на него, но в этом случае были минусы, могла появится директория lost+found, его нельзя было использовать для других данных и т.д., после этого я стал переносить директорию MySQL не прямо на раздел, а создавал на нем директорию и переносил в нее.

Читать далее «Перенос директории MySQL»

Изменение innodb_io_capacity в MySQL

innodb_io_capacity — определяет количество IOPS на запись для фоновых задач InnoDB, например очистка страниц из пула буферов и т.д. Если операция очистки отстает, то InnoDB может более агрессивно выполнять очистку с более высокой скоростью IOPS, значение которой определено в переменной innodb_io_capacity_max.

Читать далее «Изменение innodb_io_capacity в MySQL»

Партиционирование таблиц в MySQL

Партиционирование таблиц в MySQL — это разбиение большой таблицы на части по указанным критериям, что позволит ускорить чтение и запись в нее данных, если эта таблица содержит очень большое количество данных.

Читать далее «Партиционирование таблиц в MySQL»

Как изменить innodb_stats_on_metadata в MySQL

innodb_stats_on_metadata — позволяет собирать статистику при операциях метаданных, например SHOW TABLE STATUS при доступе к таблицам INFORMATION_SCHEMA.TABLES или INFORMATION_SCHEMA.STATISTICS.
В новых версиях MySQL параметр innodb_stats_on_metadata отключен по умолчанию, что позволяет ускорить работу с этими таблицами.

Читать далее «Как изменить innodb_stats_on_metadata в MySQL»

Как изменить default-storage-engine в MySQL

При создании таблицы используется опция ENGINE, которая указывает механизм хранения, если эта опция не указана в SQL запросе, то используется механизм хранения по умолчанию, который указан в файле конфигурации MySQL сервера либо при его запуске mysqld —default-storage-engine=InnoDB.

Читать далее «Как изменить default-storage-engine в MySQL»