Так что же такое AccessExclusiveLock? При выполнении какого-либо действия, например изменения типа данных столбца, PostgreSQL блокирует все остальные действия с этой таблицей. Администратор сталкивается с этим, когда производит какие-либо действия типа alter table. Он обнаруживает, что запрос выполняется гораздо дольше, чем ожидалось. В такой момент администратора охватывает паника: «Неужели таблица больше, чем я думал? Сколько же мне придется ждать?» Да, лучше было бы узнать об этом заранее, но такие запоздалые мысли уже не спасут положение. Так что нужен способ для оценки размера таблицы без необходимости ее блокировать. Наиболее верное решение — обратиться к системным файлам, которые PostgreSQL использует для хранения данных, и оценить их размеры. Тут возникает другая трудность: если таблица заблокирована, то над ней производятся какие-либо операции. Таким образом, обращение к системным файлам может быть либо безрезультатным, либо дающим неверный результат. Тем не менее можно предпринять следующие шаги. Во-первых, некоторую информацию можно взять и
Размер каждого файла должен быть 1 ГБ. Кроме того, следует кое-что уточнить: Для выполнения подсчета можно создать SQL-функцию, чтобы каждый раз не печатать все команды вручную. В большинстве СУБД существуют зависимости между объектами баз данных. Иногда для выполнения определенных действий необходимо понимать эти зависимости. Рассмотрим их подробнее. Будьте осторожны! Последовав совету, вы можете случайно удалить все объекты, зависящие от таблицы orders. Кому-то это может показаться удобным, однако такие действия — признак лени и недальновидности. Возможно, это и сработает, но сначала нужно убедиться, что это сработает как надо. Итак, необходимо узнать, какими зависимостями связана таблица Orders, И изучить их. А Потом можно будет принять решение, стоит ли использовать cascade или целесообразнее все сделать вручную.
Рубрика: Женский интерес