URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 89193
[ Назад ]

Исходное сообщение
"Как отключить MySQL 5,0 некоторые типы таблиц?"

Отправлено zeiter , 21-Июн-10 16:25 
Приветствую.

Установлен MySQL 5.0 из rpm пакетов:

MySQL-client-5.0.91-1.glibc23.x86_64.rpm
MySQL-devel-5.0.91-1.glibc23.x86_64.rpm
MySQL-server-5.0.91-1.glibc23.x86_64.rpm
MySQL-shared-5.0.91-1.glibc23.x86_64.rpm

Так вот он собран с поддержкой лишних для нас типов таблиц:

mysql> SHOW ENGINES;
+------------+----------+----------------------------------------------------------------+
| Engine     | Support  | Comment                                                        |
+------------+----------+----------------------------------------------------------------+
| MyISAM     | DEFAULT  | Default engine as of MySQL 3.23 with great performance         |
| MEMORY     | YES      | Hash based, stored in memory, useful for temporary tables      |
| InnoDB     | DISABLED | Supports transactions, row-level locking, and foreign keys     |
| BerkeleyDB | NO       | Supports transactions and page-level locking                   |
| BLACKHOLE  | YES      | /dev/null storage engine (anything you write to it disappears) |
| EXAMPLE    | YES      | Example storage engine                                         |
| ARCHIVE    | YES      | Archive storage engine                                         |
| CSV        | YES      | CSV storage engine                                             |
| ndbcluster | DISABLED | Clustered, fault-tolerant, memory-based tables                 |
| FEDERATED  | DISABLED | Federated MySQL storage engine                                 |
| MRG_MYISAM | YES      | Collection of identical MyISAM tables                          |
| ISAM       | NO       | Obsolete storage engine                                        |
+------------+----------+----------------------------------------------------------------+
12 rows in set (0.00 sec)

InnoDB, BerkeleyDB и FEDERATED отключили, указав а /etc/my.cnf:

# grep skip /etc/my.cnf
...
skip-bdb
skip-innodb
skip-federated
...

Если добавить skip-csv, skip-archive и т.д. то в логах ругань и MySQL не стартует.
Т.е. эти опции не поддерживаются. Отсюда вопросы, как можноотключить ненужные типы таблиц, без пересборки MySQL из исходников?


Содержание

Сообщения в этом обсуждении
"Как отключить MySQL 5,0 некоторые типы таблиц?"
Отправлено SubGun , 23-Июн-10 11:24 
Онанизм - занятие конечно приятное, но бесперспективное. Быстрей у вас все равно ничего работать не будет.

"Как отключить MySQL 5,0 некоторые типы таблиц?"
Отправлено zeiter , 23-Июн-10 11:31 
>Онанизм - занятие конечно приятное, но бесперспективное. Быстрей у вас все равно
>ничего работать не будет.

Вопрос не совсем в быстродействии ;)

В версии 5.1 "лишние" типы отключились с "пол-пинка"... правда пришлось немного подкрутить my.cnf из-за переименования некоторых переменных.

Но как это сделать в 5.0 - вопрос открытый.


"Как отключить MySQL 5,0 некоторые типы таблиц?"
Отправлено SubGun , 23-Июн-10 11:40 
>>Онанизм - занятие конечно приятное, но бесперспективное. Быстрей у вас все равно
>>ничего работать не будет.
>
>Вопрос не совсем в быстродействии ;)
>
>В версии 5.1 "лишние" типы отключились с "пол-пинка"... правда пришлось немного подкрутить
>my.cnf из-за переименования некоторых переменных.
>
>Но как это сделать в 5.0 - вопрос открытый.

Если вам это для самообразования - это одно дело, но если у вас зреет коварный план по захвату мира через отключение типов...тут я не помощник.


"Как отключить MySQL 5,0 некоторые типы таблиц?"
Отправлено zeiter , 23-Июн-10 11:46 
>Если вам это для самообразования - это одно дело, но если у
>вас зреет коварный план по захвату мира через отключение типов...тут я
>не помощник.

Мускул крутится на одном публичном хосте, а стало бы все, что не разрешено должно быть запрещено))) Поэтому задача оставить только MyISAM, а все остальное отрубить в рамках установки через rpm.


"Как отключить MySQL 5,0 некоторые типы таблиц?"
Отправлено LSTemp , 13-Июл-10 03:11 
>Онанизм - занятие конечно приятное, но бесперспективное. Быстрей у вас все равно
>ничего работать не будет.

Онанизм занятие приятное и полезное. иногда надо понимать чем и как ты управляешь :). компиляция исходников  - самое то ). я наверно онанист :)



"Как отключить MySQL 5,0 некоторые типы таблиц?"
Отправлено LSTemp , 13-Июл-10 03:28 
упрощенно:

1) движок (engine) отруби и все, если уж на то пошло. смотри доки на сайте производителя софта.
2) если движок не используешь, то загрузки от него 0
3) движки (используемые) собсно задаются при создании БД (если они есть в сборке) - их можно даже явно указать для каждой таблицы (и не только).

PS ты забыл сказать в первом посте на какой OS эти пакеты ставились.


"Как отключить MySQL 5,0 некоторые типы таблиц?"
Отправлено zeiter , 13-Июл-10 12:58 
Стоит CentOS 5.

Ага, исходники - это хорошо. Еще можно свои RPM собирать и свой репозиторий держать. Только в данном случае это крайний вариант, к которому не хотелось бы пока прибегать.


"Как отключить MySQL 5,0 некоторые типы таблиц?"
Отправлено LSTemp , 13-Июл-10 19:26 
>Стоит CentOS 5.
>
>Ага, исходники - это хорошо. Еще можно свои RPM собирать и свой
>репозиторий держать. Только в данном случае это крайний вариант, к которому
>не хотелось бы пока прибегать.

1) а rpm - это компиляция тех же исходников. и тут только автор rpm решает что нужно, а что нет. на этом уровне выруб определенного функционала от тебя зависит слабо (ставь/не_ставь rpm над содержимым которого у тебя контроля нет)

2) иногда действительно проще свою сборку сырцов в rpm оформить. время экономит иной раз.

3) по существу вопроса: все конечно зависит от сборки пакета, но обычно движки мускула идут отдельной темой (rpm просто добавляет движок и реализуется как дополнительный so). поэтому если в БД они явно не задействованы (явно не указаны при создании табиц), то можно считать, что их и нет


"Как отключить MySQL 5,0 некоторые типы таблиц?"
Отправлено zeiter , 13-Июл-10 20:39 
Создание и поддержка своего репозитория ради только «правильно» собранного MySQL - слишком обременительно на данном этапе. Хоть при этом и не отказываюсь от такого)))

Поиском не нашел близких по названию к движкам .so.

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