Гость
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Поделитесь скриптом по перестройки всех индексов в БД / 17 сообщений из 17, страница 1 из 1
29.10.2018, 12:56
    #39724441
К.К2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поделитесь скриптом по перестройки всех индексов в БД
в конкурентном режиме.



Добрый день.
...
Рейтинг: 0 / 0
29.10.2018, 14:00
    #39724482
vyegorov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поделитесь скриптом по перестройки всех индексов в БД
К.К2,

А скриптом все не получится :( Индексы под первичными/уникальными ключами на которые смотрят внешние ключи не перестроить конкурентно.
Посмотрите на pg_repack / pgcompacttable.
...
Рейтинг: 0 / 0
29.10.2018, 14:06
    #39724485
Melkij
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поделитесь скриптом по перестройки всех индексов в БД
vyegorovПосмотрите на pg_repack / pgcompacttable.
Что-то я уже глянул, только индексы, но по всей базе не умеют перестраивать ни тот ни другой =) У repack --only-indexes требует указать таблицу, у pgcompacttable есть no-reindex, но нет only reindex режима.
...
Рейтинг: 0 / 0
29.10.2018, 14:25
    #39724508
qwwq
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поделитесь скриптом по перестройки всех индексов в БД
К.К2в конкурентном режиме.



Добрый день.
основная хитрость, как щас помню, -- скрипт не должен запускаться из конкурентно индексируемой бд.
иначе конкурентли не закоммитится покеда скриптовая транза не финиширует.

я читал (plpgsql) индексы по дблинку в массив и оттуда дблинком из служебной бд дергал в лупе конкуррентли-автономии в рабочей.
с разгребанием уникъю и пк--индексов не заморачивался.
понятно, что то же можно дергать не из бд. а любым скриптовым. удобство служебнойй бд -- там же можно журналы вести.
...
Рейтинг: 0 / 0
29.10.2018, 15:29
    #39724578
К.К2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поделитесь скриптом по перестройки всех индексов в БД
qwwq...конкуррентли-автономии в рабочей.
с разгребанием уникъю и пк--индексов не заморачивался.



А можете подробнее написать что вы делали?

Вы создавали новые индексы конкурентно, а потом дропали старые?
уникальные и PK вы просто пропускали?


Пытаюсь разобраться с этой темой...
...
Рейтинг: 0 / 0
29.10.2018, 15:29
    #39724579
К.К2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поделитесь скриптом по перестройки всех индексов в БД
MelkijvyegorovПосмотрите на pg_repack / pgcompacttable.
Что-то я уже глянул, только индексы, но по всей базе не умеют перестраивать ни тот ни другой =) У repack --only-indexes требует указать таблицу, у pgcompacttable есть no-reindex, но нет only reindex режима.

Так и есть, все верно.
...
Рейтинг: 0 / 0
29.10.2018, 16:18
    #39724614
К.К2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поделитесь скриптом по перестройки всех индексов в БД
qwwq,

правильно ли я понял что для PK вы просто делали REINDEX INDEX, для остальных новый и дроп старого?
...
Рейтинг: 0 / 0
29.10.2018, 16:19
    #39724617
vyegorov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поделитесь скриптом по перестройки всех индексов в БД
К.К2,

Когда-то таким скриптом перестраивал, на 9.6+ не проверял его.
...
Рейтинг: 0 / 0
29.10.2018, 16:51
    #39724631
К.К2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поделитесь скриптом по перестройки всех индексов в БД
vyegorovК.К2,

Когда-то таким скриптом перестраивал, на 9.6+ не проверял его.


Благодарю, похоже на то что нужно!

... попытаюсь переписать под windows его...
...
Рейтинг: 0 / 0
29.10.2018, 16:52
    #39724633
К.К2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поделитесь скриптом по перестройки всех индексов в БД
Кстати, есть ли значение в каком порядке перестраивать индексы?

1) PK - остальные
2) остальные - PK


Результат будет одинаковый или разный?

В некотрых других СУБД это различие очень существенное...
...
Рейтинг: 0 / 0
29.10.2018, 17:35
    #39724660
Maxim Boguk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поделитесь скриптом по перестройки всех индексов в БД
К.К2Кстати, есть ли значение в каком порядке перестраивать индексы?

1) PK - остальные
2) остальные - PK


Результат будет одинаковый или разный?

В некотрых других СУБД это различие очень существенное...

Без разницы это не innodb :) Индексы тут всегда именно на таблицу ссылаются а не на значение primary key.

--
Maxim Boguk
лучшая поддержка PostgreSQL: dataegret.ru
...
Рейтинг: 0 / 0
29.10.2018, 17:43
    #39724662
К.К2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поделитесь скриптом по перестройки всех индексов в БД
Maxim BogukК.К2Кстати, есть ли значение в каком порядке перестраивать индексы?

1) PK - остальные
2) остальные - PK


Результат будет одинаковый или разный?

В некотрых других СУБД это различие очень существенное...

Без разницы это не innodb :) Индексы тут всегда именно на таблицу ссылаются а не на значение primary key.

--
Maxim Boguk
лучшая поддержка PostgreSQL: dataegret.ru


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

а если любой другой то только его и все...

Точно там на PK никакой привязки нет?
...
Рейтинг: 0 / 0
29.10.2018, 17:48
    #39724663
Maxim Boguk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поделитесь скриптом по перестройки всех индексов в БД
К.К2Maxim Bogukпропущено...


Без разницы это не innodb :) Индексы тут всегда именно на таблицу ссылаются а не на значение primary key.

--
Maxim Boguk
лучшая поддержка PostgreSQL: dataegret.ru


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

а если любой другой то только его и все...

Точно там на PK никакой привязки нет?

Нету. Вообще разрушение индексов это крайне редкая штука в 99% случаев связанная с аппаратными проблемами сервера.
Ну и иногда для текстовых полей с шутками libc вида https://postgresql.verite.pro/blog/2018/08/27/glibc-upgrade.html (но это только текстовых полей касается).

--
Maxim Boguk
лучшая поддержка PostgreSQL: dataegret.ru
...
Рейтинг: 0 / 0
12.11.2018, 14:25
    #39731763
DSKalugin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поделитесь скриптом по перестройки всех индексов в БД
К.К2qwwq,
правильно ли я понял что для PK вы просто делали REINDEX INDEX, для остальных новый и дроп старого?
А почему не REINDEX DATABASE ?
Перестраивает все индексы в текущей базе данных . При этом обрабатываются также индексы в общих системных каталогах. Эту форму REINDEX нельзя выполнить в блоке транзакции.
...
Рейтинг: 0 / 0
12.11.2018, 14:59
    #39731790
Alexius
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поделитесь скриптом по перестройки всех индексов в БД
DSKalugin,

потому что reindex будет блокировать таблицы во время работы.
...
Рейтинг: 0 / 0
12.11.2018, 16:47
    #39731881
DSKalugin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поделитесь скриптом по перестройки всех индексов в БД
AlexiusDSKalugin,

потому что reindex будет блокировать таблицы во время работы.
Можно сделать это в нерабочее время
...
Рейтинг: 0 / 0
13.11.2018, 10:42
    #39732253
К.К2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поделитесь скриптом по перестройки всех индексов в БД
DSKaluginAlexiusDSKalugin,

потому что reindex будет блокировать таблицы во время работы.
Можно сделать это в нерабочее время

Да, вы, уважаемый - юморист...
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Поделитесь скриптом по перестройки всех индексов в БД / 17 сообщений из 17, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]