MS SQL Server 2000 сожрала все место на диске

vitality

Member
Joined
Apr 16, 2005
Messages
10
Reaction score
0
Age
25
База(SQL) с логами ISA сожрала все место на диске

Народ помогите
Достался в наследство проксик на ISA Server 2000
логи пишутся в sql-базу
и эта база так разрослась что сожрала все место на диске

помогите пожалуйста, как ее уменьшить и что предпринять чтоб такого в дальнейшем не случилось
 
Last edited by a moderator:

vitality

Member
Joined
Apr 16, 2005
Messages
10
Reaction score
0
Age
25
эт понятно
я так и сделал, но эта мера временная
да и както логи вести всетаки нужно

Что можете посоветовать чтоб и логи вести и база не особо разросталась
на anonymous стоит тригер
а что еще можно предпринять

и как уже существующую базу уменьщить в размерах
 

vitality

Member
Joined
Apr 16, 2005
Messages
10
Reaction score
0
Age
25
я это сделал
а можешь объяснить что это дает
т.к. никаких результатов не заметил (хотя сейчас ниче в базу не пишется)

базу просмотреть не могу, ошибку выдает(видимо памяти не хвататет)

а как насчет уменьшения размеров существующей базы?
я вижу один вариант: убить базу и создать заново
но не хотелось бы этого делать
 

Leksa

Member
Joined
Jan 18, 2005
Messages
29
Reaction score
8
Age
47
Location
SPb
подключаешься к SQL Server с помощью Query Analyzer
и делаешь бэкап лога базы:

USE имя_БД
GO
BACKUP LOG имя_БД with truncate_only
GO


затем с помощью Enterprise Manager смотришь какой размер лога используется (Used), а какой свободен (Free)
и опять же в Query Analyzer делаешь shrink лога

USE имя_БД
GO
DBCC SHRINKFILE(имя_БД_Log,<здесь указать округленный до наибольшего целого числа размер Used>)
GO


например:
USE Base_LaLa
GO
DBCC SHRINKFILE(Base_LaLa_Log,15)
GO
 

vitality

Member
Joined
Apr 16, 2005
Messages
10
Reaction score
0
Age
25
ведь все это можно сделать через Enterprise Manager
я через него делал уже backup и shrink тоже

и кстати говоря лог-файл занимает всего 1.5мб
а вот дата-файл 36гигов
 
Last edited by a moderator:

Leksa

Member
Joined
Jan 18, 2005
Messages
29
Reaction score
8
Age
47
Location
SPb
если база не запускается именно из-за нехватки места на диске, то можно перенести её (файл данных и лог) на диск большего размера, т.е.
сначала sp_detach_db, скопировать файлы на новое место и sp_attach_db с указанием нового размещения
 

Leksa

Member
Joined
Jan 18, 2005
Messages
29
Reaction score
8
Age
47
Location
SPb
а вообще, советую задать свой вопрос на sql.ru
может там найдется кто-нить, кто сталкивался конкретно с работой SQL Server в связке с ISA
 

vitality

Member
Joined
Apr 16, 2005
Messages
10
Reaction score
0
Age
25
cспасибо за помошь и совет
попробую
 

vitality

Member
Joined
Apr 16, 2005
Messages
10
Reaction score
0
Age
25
а есть команда для обнуления БД?
т.е. чтоб затереть все данные в БД

потом z сделаю shrink
А потом просто включить лог ISA в БД

ведь должно так сработать
 
Last edited by a moderator:

newmind74

Member
Joined
Mar 2, 2005
Messages
11
Reaction score
0
Age
50
Принципиально вылечить ситуацию с логами в базу окончательно это не удастся, но можно попробовать оптимизировать. Для начало хотелось бы знать - а для чего логи эти используются в дальнейшем? На основе этого можно отключить в конфигурации логов не нужные поля. Далее, можно написать хранимую процедуру которая скажем суммирует активность по пользователю, сайту или другим выбранным параметрам и запускать её раз в час или 15 минут, а всё, что она просуммировала стирать и т.д.

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

vitality

Member
Joined
Apr 16, 2005
Messages
10
Reaction score
0
Age
25
проблему решил с помощью команды TRUNCATE TABLE
база не чистилась 2 года и чесно говоря непонятно зачем вообще велась
можно написать хранимую процедуру
я думал об этом, но сделать не могу так как не знаю языка... по крайней мере пока
 

newmind74

Member
Joined
Mar 2, 2005
Messages
11
Reaction score
0
Age
50
Ну или так....

Хотя это всё равно временная мера, потому что по опыту лог растет очень быстро, а если его всё время удалять, так зачем его вообще вести?:p
 
Top