Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Переполнение tempdb! Как с этим боротся ? / 11 сообщений из 11, страница 1 из 1
01.08.2001, 11:20:21
    #32010846
Дмитрий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Переполнение tempdb! Как с этим боротся ?
Помогите ПЛЗ!
Как боротся с переполнением базы tempdb? Можно ли ее очистить вручную,без перезагрузки сервера!
...
Рейтинг: 0 / 0
01.08.2001, 11:45:19
    #32010858
Александр Гладченко
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Переполнение tempdb! Как с этим боротся ?
Версия? И почему нельзя просто увеличить её размер?
...
Рейтинг: 0 / 0
01.08.2001, 12:24:33
    #32010869
Дмитрий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Переполнение tempdb! Как с этим боротся ?
Размер увеличен до 1 ГВ, но это нопомогает. После переполнения база тормозит в связи с этим вопрос можно ли очистить ее в ручную!
...
Рейтинг: 0 / 0
29.08.2001, 06:50:38
    #32013086
Сергей
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Переполнение tempdb! Как с этим боротся ?
нужно поставить на Tempdb опцию Truncate on checkpoint, сделать сам Trancate..
...
Рейтинг: 0 / 0
03.09.2001, 15:18:16
    #32013389
Александр Гладченко
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Переполнение tempdb! Как с этим боротся ?
Скорее всего, у Вас много долгоживущих временных таблиц. Поговорите с разработчиками, возможно они пересмотрят свои взгляды относительно бесконечности ресурсов сервера...
...
Рейтинг: 0 / 0
03.09.2001, 21:22:51
    #32013397
Alexey
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Переполнение tempdb! Как с этим боротся ?
1) Truncate Log On Checkpoint ВСЕГДА включен для Tempdb. Независимо от того, что установлено в интерфейсе.
2) Что именно переполняется - Data или Log ?
Если Data, то значит кто-то исполняет "плохой" запрос, который генерирует много данных. Ну, например
insert #table
select * from A,B
(ну забыли where, с кем не бывает. Если в таблицах по 10 000 записей, запрос дает 100 000 000 записей)
Если Log - то кто-то может оставить открытую транзакцию.

Можно использовать Profiler чтобы отловить "плохой" запрос. Только нужно выбрать счетчики SQL:StmtStarting, SQL:StmtCompleted и раздел Errors And Warnings.
...
Рейтинг: 0 / 0
19.08.2002, 10:31:38
    #32044179
crot
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Переполнение tempdb! Как с этим боротся ?
Izvinite, chto vopros povtoriau, prosto interesno otvetil li kto-nibud na vopros Dmitria "KAK MOZNO VRUCHNUU OCHISTIT TempDB", grubo govoria udalit vse tablici?
...
Рейтинг: 0 / 0
19.08.2002, 13:09:18
    #32044234
sFx
sFx
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Переполнение tempdb! Как с этим боротся ?
А удаление таблиц может и не привести к уменьшению размера базы, файл, то не сократится. в ручную удалить таблицы навреное можно с помощью DROP TABLE
...
Рейтинг: 0 / 0
20.08.2002, 02:25:43
    #32044390
crot
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Переполнение tempdb! Как с этим боротся ?
V komande "Drop Table" nuzno ukazivat nazvanie tablici, a ono ne izvestno v tempDB.
NNu est vse taki sposob kak ne ostanavlivaia SQL server mozno ochishat TEMPDB???
...
Рейтинг: 0 / 0
20.08.2002, 12:43:15
    #32044509
Nickolay
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Переполнение tempdb! Как с этим боротся ?
Была как-то и у меня БД temp размером 1 ГБ сделал ей shrink, осталось 8 Мегов...
...
Рейтинг: 0 / 0
20.08.2002, 12:57:46
    #32044520
Jimmy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Переполнение tempdb! Как с этим боротся ?
Удаление временных таблиц из tempdb. Проверено на MS SQL 7 с правами sa .

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
CREATE PROCEDURE usp_TempCleanUp
	AS
BEGIN
	SET NOCOUNT ON
	DECLARE @Table varchar( 1024 )

	DECLARE Tables_cursor CURSOR FOR 
		SELECT name 
			FROM tempdb..sysobjects
			WHERE xtype =  "U" 

	OPEN Tables_cursor

	FETCH NEXT FROM Tables_cursor 
	INTO @Table

	WHILE @@FETCH_STATUS =  0 
	BEGIN
		 /* Удаление таблицы */ 
		EXEC( 'DROP TABLE ' + @Table ) 
		IF @@ERROR <>  0 
			PRINT 'Cannot drop the table: ' + @Table
		ELSE
			PRINT 'Table is dropped: ' + @Table

		FETCH NEXT FROM Tables_cursor 
		INTO @Table
	END
	CLOSE Tables_cursor
	DEALLOCATE Tables_cursor
	SET NOCOUNT OFF
END



ЗЫ Ну а следом:
Код: plaintext
1.
EXEC usp_TempCleanUp
DBCC SHRINKDATABASE('tempdb')

Правда, можно "опрокинуть" пару другую пользовательских приложений.
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Переполнение tempdb! Как с этим боротся ? / 11 сообщений из 11, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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