-- Database 분리하기
/*
EXEC sp_detach_db glonets
*/

-- Database 연결하기
/*
EXEC sp_attach_db @dbname = N'GLONETS',
   @filename1 = N'C:\uniLITE5\DataBase\GLONETS.MDF',
   @filename2 = N'C:\uniLITE5\DataBase\GLONETS_LOG.LDF'
*/

-- 응급복구모드를 통하여 복원하기
/*
CREATE DATABASE GLONETS
go
sp_configure 'allow updates', 1
go
reconfigure with override
go
UPDATE SYSDATABASES SET STATUS=STATUS|32768 WHERE NAME ='GLONETS'
go
DBCC REBUILD_LOG('GLONETS', 'C:\Program Files\Microsoft SQL Server\MSSQL\data\GLONETS_LOG.LDF')
go
UPDATE SYSDATABASES SET STATUS=24 WHERE NAME ='GLONETS'
go
sp_configure 'allow updates', 0 
go
reconfigure with override
go
*/

-- 자세한 내용은 아래에서 확인해주세요
-- http://faq.hostway.co.kr/zbxe/698

   - Enterprise Manager
     1) 자료를 백업해둡니다. 만일의 사태에 대비해서...
     2) truncate log 해서 자료를 정리해줍니다.

   - Query Analyzer
     1)sp_detach_db pub
       : pub를 데이터베이서에서 분리 시킵니다. drop과는 완전히 다르지요
         drop은 데이터와 로그파일을 모두 지는데 반해 sp_detach_db는
         데이터와 로그파일은 살려둔 상태에서 등록된 DB만 분리시킵니다.

     2)이 상태에서 자료가있는 폴더로 가서 pub.ldf파일을 지웁니다.

     3)sp_attach_single_file_db 'pub', 'c:\mssql7\data\pub.mdf'
       : 이렇게하시면 작업은 다하신거네요.
         Enterprise Manager에 가서 리프래쉬 시키시면 pub database가
         다시 올라와있는 것이 보이실겁니다.
         탐색기로 가셔서 log 파일의 용량을 확인해 보시면..
         최초의 log 상태 크기로 돌아가 있을 겁니다.

- 아마도 로그파일이 너무 커졌을때, 대처방법에 대해서 찾다가 알아낸듯...

출처는 까먹었습니다. 알려주시면 바로 올릴게요.
죄송합니다.

+ Recent posts