|
|
|
Правильно обнулить поля в большой таблице
|
|||
|---|---|---|---|
|
#18+
Имеется innodb таблица в MySQL (конкретно, кластер MariaDB 10.3.23): Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. Есть необходимость обнулить все post_id, которые not null. Как это сделать? Интересует, помимо порционности: Код: sql 1. как быть с тем, что таблица "распухает"? Нужно потом делать анализ/оптимизацию? Или сама со временем устаканится? Как это потом по кластеру разойдётся? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2021, 15:37 |
|
||
|
Правильно обнулить поля в большой таблице
|
|||
|---|---|---|---|
|
#18+
flycat Есть необходимость обнулить все post_id, которые not null. Как это сделать? А тут нет иного варианта как UPDATE: Код: sql 1. 2. 3. Остальное, мягко говоря, не очень понятно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2021, 15:57 |
|
||
|
Правильно обнулить поля в большой таблице
|
|||
|---|---|---|---|
|
#18+
Akina, Вариант, как минимум, тот, что я написал: делать апдейты не разом, а интервалами по времени - чтобы не положить базу нагрузкой по вводу-выводу. Что именно Вам не понятно - мне тоже непонятно :) - вроде же очевидно, что при замене значений поля на NULL таблица будет фрагментироваться. С этим надо как-то бороться. Вот я и спрашиваю совета, как именно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2021, 17:02 |
|
||
|
Правильно обнулить поля в большой таблице
|
|||
|---|---|---|---|
|
#18+
flycatкак быть с тем, что таблица "распухает"? так может нужен delete? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2021, 17:06 |
|
||
|
Правильно обнулить поля в большой таблице
|
|||
|---|---|---|---|
|
#18+
Alex_Ustinov, Имеете в виду, удалить поле целиком? Боюсь, сделать это без блокировки таблицы на работающей базе не получится. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2021, 17:10 |
|
||
|
Правильно обнулить поля в большой таблице
|
|||
|---|---|---|---|
|
#18+
flycat, речь о записях смысл то какой ставить NULL? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2021, 17:56 |
|
||
|
Правильно обнулить поля в большой таблице
|
|||
|---|---|---|---|
|
#18+
flycat Вариант, как минимум, тот, что я написал: делать апдейты не разом, а интервалами по времени - чтобы не положить базу нагрузкой по вводу-выводу. flycat при замене значений поля на NULL таблица будет фрагментироваться. С какого это перепугу? поле NULLable, значит, в ПК не входит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2021, 21:56 |
|
||
|
|

start [/forum/topic.php?fid=47&tid=1828024]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
172ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
36ms |
get tp. blocked users: |
1ms |
| others: | 11ms |
| total: | 259ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...