Как складировать данные, которые не нужны от SQL-сервера MS

Если существует операция каждую ночь, это растет, она затем определенно не уменьшает его. Они, очевидно, должны быть то, что размер и просто вырастет снова.

0
задан 24 November 2011 в 06:00
3 ответа

Как вы планируете получить доступ к данным таблицы?

Если вы используете что-то немного гибкое (ваш собственный код или просто запросы SQl), то простой выход - скопировать нужную таблицу в другую базу данных и отсоединить ее от сервера. После этого обрежьте таблицу (или удалите ненужные строки, хотя вы, возможно, захотите проверить размер своего T-журнала, если вы это сделаете).

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

Если вы используете программное обеспечение, которое не позволяет вам настраивать способ доступа к этой таблице, вы все равно можете скопировать таблицу в другую базу данных самостоятельно, но восстановление этой резервной копии может быть проблематичным, потому что вы Мне нужно будет объединить существующий контекст (другие состояния таблицы) со старыми данными. Кроме того, структура данных могла измениться, что сделало восстановление практически невозможным.

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

3
ответ дан 4 December 2019 в 11:33

3 миллиона строк - это немного, особенно для sql server. Кроме того, вы не можете усечь таблицу и сохранить строки. Truncate полностью опустошается.

Также удаление происходит медленно, даже если у вас есть время.

Я бы щелкнул правой кнопкой мыши по вашей таблице, скрипт как, создайте новую таблицу. Переименуйте его, как Table_Backup11232011, не забудьте также переименовать ваши первичные ключи ...

insert into Table_Backup11232011 select * from oldtable

truncate table oldtable

Теперь у вас есть резервная копия и новая таблица. 3 миллиона строк, вероятно, обойдутся вам всего в несколько сотен мегабайт, а это еще ничего.

1
ответ дан 4 December 2019 в 11:33

Архивирование / доступность: Вот мысль ... 1) Выполните удаление ваших данных 2) Поместите таблицу tyhat в отдельную группу файлов SQL 3) Записать файл на устройство только для чтения (свободное пространство) 4) Используйте ALTER TABLE, чтобы переопределить, где находится файл, и определить его как доступный только для чтения. 5) Вечеринка, Гарт!

Теперь данные с ваших жестких дисков не подлежат изменению, но по-прежнему доступны при необходимости.

1
ответ дан 4 December 2019 в 11:33

Теги

Похожие вопросы