Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
 Очистка TempDb  [new]
Shark
Member

Откуда:
Сообщений: 2365
Можно ли удалить старые больные таблички из TempDB без рестарта сервера? Если да, то как?
26 мар 19, 15:19    [21843891]     Ответить | Цитировать Сообщить модератору
 Re: Очистка TempDb  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 36887
Чем у вас болеют таблички в tempdb?
26 мар 19, 15:27    [21843913]     Ответить | Цитировать Сообщить модератору
 Re: Очистка TempDb  [new]
Shark
Member

Откуда:
Сообщений: 2365
По моему они могут остаться при аварийном завершении сеанса, и как их тогда удалять?
26 мар 19, 15:31    [21843921]     Ответить | Цитировать Сообщить модератору
 Re: Очистка TempDb  [new]
Shark
Member

Откуда:
Сообщений: 2365
Если табличка в TempDB старше 6 часов- она не нужна, у нас нет таких запросов.
26 мар 19, 15:33    [21843923]     Ответить | Цитировать Сообщить модератору
 Re: Очистка TempDb  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 36887
Shark
По моему они могут остаться при аварийном завершении сеанса, и как их тогда удалять?
Не могут. Потому что tempdb полностью пересоздается после старта инстанса.
26 мар 19, 15:33    [21843925]     Ответить | Цитировать Сообщить модератору
 Re: Очистка TempDb  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 36887
Shark
Если табличка в TempDB старше 6 часов- она не нужна, у нас нет таких запросов.
Временные таблицы удаляются автоматически при выходе за скоуп, в котором они определены.

Сообщение было отредактировано: 26 мар 19, 15:40
26 мар 19, 15:35    [21843929]     Ответить | Цитировать Сообщить модератору
 Re: Очистка TempDb  [new]
komrad
Member

Откуда: Msk -> Utrecht
Сообщений: 5224
Shark
Можно ли удалить старые больные таблички из TempDB без рестарта сервера? Если да, то как?

отстрелить все пользовательские сессии - это избавит от временных таблиц и от версионности
если таблицы были созданы не как временные, то их надо удалять явно (drop table...)
26 мар 19, 16:40    [21844007]     Ответить | Цитировать Сообщить модератору
 Re: Очистка TempDb  [new]
Shark
Member

Откуда:
Сообщений: 2365
1. Я в заглавном посту написал, что интересует методика КРОМЕ рестарта. То, что рестарт службы помогает- понятно.
2. То, что для удаления таблицы нужно сделать дроп- понятно тоже. Думал, не только у меня эта проблема, и посоветуют скрипт дропа старых табличек.
27 мар 19, 03:16    [21844436]     Ответить | Цитировать Сообщить модератору
 Re: Очистка TempDb  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 36887
Shark
1. Я в заглавном посту написал, что интересует методика КРОМЕ рестарта. То, что рестарт службы помогает- понятно.
2. То, что для удаления таблицы нужно сделать дроп- понятно тоже. Думал, не только у меня эта проблема, и посоветуют скрипт дропа старых табличек.
Вы какую-то дичь написали, и не только КРОМЕ заглавного поста, да и в нем тоже.
Может быть вы озвучите вашу проблему, а не то, что вы там себе напридумывали?

Сообщение было отредактировано: 27 мар 19, 03:36
27 мар 19, 03:35    [21844439]     Ответить | Цитировать Сообщить модератору
 Re: Очистка TempDb  [new]
Relic Hunter
Member

Откуда: AB
Сообщений: 7306
Shark
Думал, не только у меня эта проблема, и посоветуют скрипт дропа старых табличек.
Мысль интересная. Но "каг" залезть в чужую сессию? Хотелось-бы посмотреть на такой скрипт))
27 мар 19, 03:38    [21844440]     Ответить | Цитировать Сообщить модератору
 Re: Очистка TempDb  [new]
StarikNavy
Member

Откуда: Москва
Сообщений: 2393
Shark
По моему они могут остаться при аварийном завершении сеанса, и как их тогда удалять?

вы ошибаетесь. не надо их удалять
27 мар 19, 09:41    [21844592]     Ответить | Цитировать Сообщить модератору
 Re: Очистка TempDb  [new]
komrad
Member

Откуда: Msk -> Utrecht
Сообщений: 5224
Relic Hunter
Shark
Думал, не только у меня эта проблема, и посоветуют скрипт дропа старых табличек.
Мысль интересная. Но "каг" залезть в чужую сессию? Хотелось-бы посмотреть на такой скрипт))


tempdb.sys.objects
только с некоторыми именами будет проблема :)
27 мар 19, 09:50    [21844604]     Ответить | Цитировать Сообщить модератору
 Re: Очистка TempDb  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31326
Shark
2. То, что для удаления таблицы нужно сделать дроп- понятно тоже. Думал, не только у меня эта проблема, и посоветуют скрипт дропа старых табличек.
В чужой сессии сделать дроп нельзя.

Если сессия аварийно завершается, то все временные объекты сервер удалит самостоятельно. Следовательно, в tempdb из временных таблиц будут только нужные, которые кем то используются.

В tempdb есть ещё постоянные таблицы, они автоматически не удаляются, вот их вы можете смотреть, как любые другие, и дропать, если надо, ну и искать баги в вашем приложении, которые привели к проявлению "мусора".
27 мар 19, 10:16    [21844657]     Ответить | Цитировать Сообщить модератору
 Re: Очистка TempDb  [new]
Shark
Member

Откуда:
Сообщений: 2365
У меня поприетарное закрытое приложение, 1с 8.2.19. Искать в нем баги я не могу, к сожалению. Кроме текста запросов на языке 1с, постараюсь добавить туда явные дропы временных таблиц как можно раньше по тексту запроса.
Вопрос возник из-за того, что я получил предупреждение что темпдб сожрал весь диск, хотя не должен был. Рестарт помогает конечно, но это дорогая операция, приложение не 24*7, но около того. Поэтому и возникло желание получить какую то альтернативу по ремонту темпдб кроме рестарта. Спасибо за высказанные идеи, буду изучать, буду благодарен если еще то-то посоветуете.

Отдельное спасибо за высказанное замечание, что поскольку рестарт службы пересоздает темпдб, никаких проблем с темпдб быть не может. За версту видно эксперта))
28 мар 19, 05:28    [21845622]     Ответить | Цитировать Сообщить модератору
 Re: Очистка TempDb  [new]
StarikNavy
Member

Откуда: Москва
Сообщений: 2393
Shark
темпдб сожрал весь диск, хотя не должен был.

ручной дроп времянок вам в этом не поможет
28 мар 19, 09:59    [21845769]     Ответить | Цитировать Сообщить модератору
 Re: Очистка TempDb  [new]
Deff
Member

Откуда: Пермь
Сообщений: 18323
Shark
У меня поприетарное закрытое приложение, 1с 8.2.19. Искать в нем баги я не могу, к сожалению. Кроме текста запросов на языке 1с, постараюсь добавить туда явные дропы временных таблиц как можно раньше по тексту запроса.
Вопрос возник из-за того, что я получил предупреждение что темпдб сожрал весь диск, хотя не должен был. Рестарт помогает конечно, но это дорогая операция, приложение не 24*7, но около того. Поэтому и возникло желание получить какую то альтернативу по ремонту темпдб кроме рестарта. Спасибо за высказанные идеи, буду изучать, буду благодарен если еще то-то посоветуете.
Если это постоянные таблицы, так они и после рестарта останутся.
Если временные, то они не исчезают только если сессия осталась открыта. Т.е. 1Ска не отключилась от сервера.
Поэтому либо много подвисшых сессий будет, либо 1Ска использует пулл коннектов(что вероятнее). И отключений не будет, пока 1С сервер не будет перезапущен.
Скачайте sp_WhoIsActive, и посмотрите что у вас с сессиями. Поиграйтесь с Kill
28 мар 19, 10:31    [21845810]     Ответить | Цитировать Сообщить модератору
 Re: Очистка TempDb  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 36887
Shark
Отдельное спасибо за высказанное замечание, что поскольку рестарт службы пересоздает темпдб, никаких проблем с темпдб быть не может. За версту видно эксперта))
За версту видно читателя. Не проблем быть не может, а описанной вами изначально проблемы быть не может. Другие - да пожалуйста. Но вы же партизаните, про какие-то поломанные таблицы несете.

Сообщение было отредактировано: 28 мар 19, 11:19
28 мар 19, 11:10    [21845862]     Ответить | Цитировать Сообщить модератору
 Re: Очистка TempDb  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31326
Shark
Вопрос возник из-за того, что я получил предупреждение что темпдб сожрал весь диск, хотя не должен был. Рестарт помогает конечно, но это дорогая операция, приложение не 24*7, но около того
Ищите конкретные причины именно этой, конкретной, проблемы.

Добавление дропов в случайные места либо принципиально не поможет (что скорее всего), либо поможет, когда вы поставите дроп после каждого использования временной таблицы, что, конечно, очень трудозатратно. И, главное, эти дропы скорее всего не помогут никак.
28 мар 19, 11:14    [21845871]     Ответить | Цитировать Сообщить модератору
 Re: Очистка TempDb  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 36887
Shark
Вопрос возник из-за того, что я получил предупреждение что темпдб сожрал весь диск, хотя не должен был.
http://www.sqlservercentral.com/scripts/tempdb/72007/

Ну и в целом: https://www.google.com/search?q=tempdb usage by spid&rlz=1C1CHZL_ruRU758RU758&oq=tempdb usage&aqs=chrome.1.69i57j0l5.4406j0j4&sourceid=chrome&ie=UTF-8

Сообщение было отредактировано: 28 мар 19, 11:24
28 мар 19, 11:23    [21845878]     Ответить | Цитировать Сообщить модератору
 Re: Очистка TempDb  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6801
alexeyvg,

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

либо MS сейчас вообще не рекомендует делать drop временных таблиц
28 мар 19, 11:26    [21845885]     Ответить | Цитировать Сообщить модератору
 Re: Очистка TempDb  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31326
TaPaK
alexeyvg,

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

либо MS сейчас вообще не рекомендует делать drop временных таблиц
Это само собой. Ну, если используется цепочка огромных временных таблиц, то можно и дропать...

Но в данном случае, конечно, этого не нужно, кроме понижения скорости ничего не будет, да ещё и багов можно наделать.

Надо просто найти и устранить причину.
28 мар 19, 11:29    [21845892]     Ответить | Цитировать Сообщить модератору
 Re: Очистка TempDb  [new]
komrad
Member

Откуда: Msk -> Utrecht
Сообщений: 5224
Deff
Shark
У меня поприетарное закрытое приложение, 1с 8.2.19. Искать в нем баги я не могу, к сожалению. Кроме текста запросов на языке 1с, постараюсь добавить туда явные дропы временных таблиц как можно раньше по тексту запроса.
Вопрос возник из-за того, что я получил предупреждение что темпдб сожрал весь диск, хотя не должен был. Рестарт помогает конечно, но это дорогая операция, приложение не 24*7, но около того. Поэтому и возникло желание получить какую то альтернативу по ремонту темпдб кроме рестарта. Спасибо за высказанные идеи, буду изучать, буду благодарен если еще то-то посоветуете.
Если это постоянные таблицы, так они и после рестарта останутся.

вы заблуждаетесь
tempdb пересоздается при старте сервера по образу model
сторонние объекты там могут существовать после рестарта только в том случае, если они созданы в базе model
28 мар 19, 11:39    [21845908]     Ответить | Цитировать Сообщить модератору
 Re: Очистка TempDb  [new]
Deff
Member

Откуда: Пермь
Сообщений: 18323
komrad
Deff
пропущено...
Если это постоянные таблицы, так они и после рестарта останутся.

вы заблуждаетесь
tempdb пересоздается при старте сервера по образу model
сторонние объекты там могут существовать после рестарта только в том случае, если они созданы в базе model
Да, вы правы.
28 мар 19, 11:47    [21845920]     Ответить | Цитировать Сообщить модератору
 Re: Очистка TempDb  [new]
Shark
Member

Откуда:
Сообщений: 2365
Гавриленко Сергей Алексеевич
Shark
Вопрос возник из-за того, что я получил предупреждение что темпдб сожрал весь диск, хотя не должен был.
http://www.sqlservercentral.com/scripts/tempdb/72007/

Ну и в целом: https://www.google.com/search?q=tempdb usage by spid&rlz=1C1CHZL_ruRU758RU758&oq=tempdb usage&aqs=chrome.1.69i57j0l5.4406j0j4&sourceid=chrome&ie=UTF-8


Огромное спасибо, буду изучать.
28 мар 19, 15:23    [21846219]     Ответить | Цитировать Сообщить модератору
 Re: Очистка TempDb  [new]
Shark
Member

Откуда:
Сообщений: 2365
Получается, что ответ на вопрос сабжа
DBCC FREESYSTEMCACHE('ALL')
У нас, кстати, есть в ночном регламенте. Еще раз спасибо за ссылку.
28 мар 19, 15:37    [21846238]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить