mssql Äõ¸® °ü·Ã Áú¹®

   Á¶È¸ 1339   Ãßõ 0    

 

select name from sys.databases

except

select distinct database_name from msdb.dbo.backupset WHERE backup_start_date >= DATEADD(hh, -24, GETDATE())

AND backup_start_date < GETDATE()

AND Type = 'D'


이런식으로해서 백업이 안된 데이터베이스만 체크를 하려고 하는데, 데이터베이스 개수가 많을 경우에는

속도가 너무 느리네요.. 

except가 A - B이니, 순서를 바꿀 수도 없고.. 

혹시 좋은 방법이 있을까요? 

ªÀº±Û Àϼö·Ï ½ÅÁßÇÏ°Ô.
¾Æ¸¶µµ ÀÌ°ÍÀÌ ¼Óµµ°¡ Á¶±Ý ºü¸¦ µí
( ¾Æ´Ò ¼öµµ ÀÖ½À´Ï´Ù. ^^
bÁýÇÕÀÌ Å¬¶§´Â Á¸Àç üũÁ¶°ÇÀÌ º¸Åë ºü¸§)

select name from sys.databases a WITH(NOLOCK)
WHERE  NOT EXISTS (
SELECT TOP 1 1
from msdb.dbo.backupset  b WITH(NOLOCK)
WHERE b.database_name=a.name
AND backup_start_date >= DATEADD(hh, -24, GETDATE())
AND backup_start_date < GETDATE()
AND Type = 'D'
)
     
L2½ºÀ§Ä¡ 2022-02
´äº¯ °¨»çÇÕ´Ï´Ù~!

¤¾¤¾ ´ñ±Û Áֽñâ Àü¿¡ ´äÀ» ã¾Ò½À´Ï´Ù~! ´ñ±Ûµµ Âü°íÇÏ°Ú½À´Ï´Ù °¨»çÇÕ´Ï´Ù!


QnA
Á¦¸ñPage 558/5678
2015-12   1477317   ¹é¸Þ°¡
2014-05   4940439   Á¤ÀºÁØ1
2010-02   10402   ÄÚ»Ô»ç³É
2003-10   10402   ¿°È£Á¤
2003-05   10401   ±è¿µ±â
2004-03   10401   ÀÌÀºÁø
2011-07   10400   ½Ã³ªºê·Î
2003-04   10400   ±èÇö¼®
2011-11   10400   ÇÏÁ¤±¸
2003-10   10399   °­¹ÎÈ£
2003-06   10399   À±¿µ¼±
2002-10   10399   ¹ÚÇü±Ô
2005-08   10398   ¹ÚÁ¾ÀÍ
2017-02   10398   ĵÀ§µå
2002-12   10398   ÀÌ°ü¿õ
2003-06   10398   Àå½ÂÇö
2003-09   10397   ±è¿µ±â
2011-02   10397   ¹Ú³ë¼º
2009-11   10397   ¶Ñ¶Ñ±è´ë¿ø
2009-11   10397   Èû³»ÀÚ
2015-04   10397   Ä¿ÇÇ
2003-11   10397   ¹ÚÁÖÈ£