![]() |
|
Модераторы: skyboy |
![]()
|
|
| Artemon |
|
|||
|
а ты мне нравишься ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1771 Регистрация: 24.2.2004 Где: Челябинск Репутация: 1 Всего: 20 |
Использую MySql 5.*
В одной из таблиц определен индекс по числовому полю, но постепенно при вставках данных - этот индекс разбалтывается и разбалтывается на столько, что с БД невозможно работать - запросы занимают несколько минут (с индексом пару секунд), так вот как можно автоматически пересчитывать индексы к пимеру каждый день ? -------------------- Контроль топлива на топливозаправщиках, мониторинг автотранспорта, расчет зарплаты водителей www.rscat.ru |
|||
|
||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 41 Всего: 260 |
||||
|
||||
| Feldmarschall |
|
|||
|
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 3 Всего: 32 |
Artemon, твое понимание смысла индексов оставляет желать лучшего.
И твои предположения о причинах задержек неверны. поэтому задавая вопрос, как тебе ускорить тот или иной запрос, следует писать только две вещи: 1. сам запрос 2. вывод EXPLAIN с этим запросом. (если бы кто-нибудь когда-нибудь читал правила, то я бы предложил внести это в правила форума.) |
|||
|
||||
| Artemon |
|
||||
|
а ты мне нравишься ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1771 Регистрация: 24.2.2004 Где: Челябинск Репутация: 1 Всего: 20 |
Что я понимаю под словом "разболтался" - в таблицу были добавлены новые данные и индекс необходимо пересчитать.
Всетаки я думаю мои предположения верны, объясню. В бд постоянно добавляются новые записи (примерно 1 запись в секунду круглосуточно). Постепенно запросы к БД начинают выполняться медленнее, после того, как я сношу индекс и создаю его заново - все нормализуется, поэтому я и предположил что индекс нужно постоянно пересчитывать. А запросы большие и сложные, но если кто-то посмотрит на них и прокомментирует - буду рад.
-------------------- Контроль топлива на топливозаправщиках, мониторинг автотранспорта, расчет зарплаты водителей www.rscat.ru |
||||
|
|||||
| Feldmarschall |
|
|||
|
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 3 Всего: 32 |
Индекс так устроен, что он сам перестраивается. не "раз в день", а после каждой вставки, его затрагивающей.
А запрос и правда забавный. |
|||
|
||||
| MuToGeN |
|
|||
![]() Лесник ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 4379 Регистрация: 15.8.2002 Где: Москва Репутация: нет Всего: 32 |
Feldmarschall, есть исключение - mysqld любит рушить индексы, когда приходится работать с действительно объемными базами.
Из своей практики: ISPшная биллинговая система, таблица, хранящая в себе логи трафика, кто что скачал. Таблица обновляется раз в минуту. Без вырубания mysqld для оптимизации таблиц, myisamchk и прочего оно успешно кладется само по себе. -------------------- Three pings for the token rings, Five pings for the UNIX machines, Hundred pings for the broken links, One special ping to check them all Through Simple Network Management Protocol! |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | MySQL | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |