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

   Á¶È¸ 1382   Ãßõ 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 565/5686
2015-12   1509299   ¹é¸Þ°¡
2014-05   4972988   Á¤ÀºÁØ1
2017-07   10393   ºÐ³ëÀÇ´Ù¿îÈú
2018-01   10393   °¼¾Æ¾Ç
2003-04   10393   ¹ÚÁ¾´ë
2012-08   10393   º´¸ÀÆù
2014-11   10392   ³ªÆÄÀÌ°­½ÂÈÆ
2003-10   10392   Á¤ÁØ
2003-06   10391   ¿ì½Â¿±
2015-02   10391   hayoung
2003-04   10391   ¹é¼ºÁÖ
2003-07   10390   õÈñ½Â
2003-07   10390   ÀÌ»ó·æ
2014-10   10390   ÀÌâÁØ
2009-11   10390   À嵿°Ç2014
2002-10   10390   ¹ÚÇü±Ô
2010-08   10389   Á¶¿µ¹Î
2010-05   10389   °¡ºü·Î±¸³ª
2002-12   10389   ±èÁÖÀº
2003-10   10388   Â÷Æò¼®
2003-12   10387   À̳²¼®
2003-09   10387   ¿°¼ºÀÏ