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

   Á¶È¸ 2726   Ãßõ 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 616/5728
2015-12   1781154   ¹é¸Þ°¡
2014-05   5256186   Á¤ÀºÁØ1
2017-04   10302   â¿øÀÚ°ÔÀÌ
2015-04   10302   catstyle
2013-11   10302   Ãʷϸ¶À»
2003-03   10302   ÀÌÁØÈ£
2013-05   10301   ¾Æ¹Ì»ó
2004-01   10301   Á¤Ä¡¹Î
2003-12   10301   ±èÅÂÈÆ
2013-07   10300   ±è°Ç¿ì
2003-09   10300   ÀåÇö¸ð
2003-05   10300   À¯ÇöÁ¶
2002-11   10299   À±ÂùÈñ
2003-05   10299   È«¼®Áø
2003-02   10299   ¹è¿øÆÈ
2003-09   10298   ÀÌ´ë·Î
2010-03   10298   ÀϹÝÀ¯Àú
2002-10   10298   ½É±Ô»ó
2013-10   10298   Çà¾Æ¹ü
2003-03   10297   ¼­¹ÎÈ£
2014-09   10296   ºñ´©±Í½Å
2014-05   10295   À©µµ¿ì10