09 Март, 2017

Полезности по MySQL

Пишу сюда некоторые запросы чтобы быстро скопипастить их в случае чего:

Получить 10 таблиц из всех БД на сервере с самым большим количеством записей

SELECT TABLE_SCHEMA, TABLE_NAME, TABLE_ROWS FROM information_schema.TABLES ORDER BY TABLE_ROWS DESC LIMIT 10;

Получить 10 самых объемных таблиц из всех БД на сервере в мегабайтах

SELECT TABLE_SCHEMA, TABLE_NAME, TABLE_ROWS, round(((DATA_LENGTH + INDEX_LENGTH) / 1024 / 1024), 2) `Size in MB` FROM information_schema.TABLES ORDER BY (DATA_LENGTH + INDEX_LENGTH) DESC LIMIT 10;

Получить 10 таблиц из БД dbname с самым большим количеством записей

SELECT TABLE_NAME, TABLE_ROWS FROM information_schema.TABLES WHERE TABLE_SCHEMA='dbname' ORDER BY TABLE_ROWS DESC LIMIT 10;

Получить 10 самых объемных таблиц из БД dbname в мегабайтах

SELECT TABLE_NAME, TABLE_ROWS, round(((DATA_LENGTH + INDEX_LENGTH) / 1024 / 1024), 2) `Size in MB` FROM information_schema.TABLES WHERE TABLE_SCHEMA='dbname' ORDER BY (DATA_LENGTH + INDEX_LENGTH) DESC LIMIT 10;
02 Сентябрь, 2014

Если есть права на запись, но демон не может туда писать

Возникла такая проблема - в конфиге MySQL выставил путь для записи временных таблиц отличный от стандартного /tmp и выставил соответствующие права на запись в новый каталог. Но MySQL не стартовал ругаясь на отсутствие прав на запись. Долго думал пока не вспомнил про Apparmor.

И правда - в конфиге apparmor был профиль для демона MySQL. Проблема решилась дописыванием в конфиг нового каталога и service apparmor reload.

В Ubuntu 14.04 конфиг лежит тут: /etc/apparmor.d/usr.sbin.mysqld

Home