close

Trust Me!! Trust You!!


  • Blog
  • Local Log
  • Tag Cloud
  • Key Log
  • Guestbook
  • RSS Feed
  • Write a Post
  • Admin

혹시 블로그 스킨이 깨져 보이시나요? 최신버전의 Internet Explorer(Windows용), Opera, Firefox를 사용해보세요.

MSSQL 트랜젝션 로그 삭제

웹 프로그래밍
2008/07/15 10:10
 
*******실례
 
DBCC LOGINFO
EXEC SP_HELPFILE
select * from sysfiles
 
--로그 최소로 축소
BACKUP LOG mycompany_db WITH TRUNCATE_ONLY
--2M로 초기화
DBCC SHRINKFILE(mycompany_db_Log,2)




------------------ 배경설명

 

ms sql의 로그 파일인 ldf 파일은 db에 입/출력/엡데이트가 반복되는 경우, 계속하여 그 크기가 커진다. 특히, 어떤 오류가 발생하였을 경우에는 매우 갑작스럽게 그 크기가 커지기도 한다.

 

 





--------------------------------------------------------

--- 로그파일 크기 줄이기

--------------------------------------------------------

 

--로그파일 정보를 본다 (로우 수가 많을 수록 파일이 커진다)
DBCC LOGINFO

 

--실제 물리적 파일 크기 및 이름을 확인해본다.
EXEC SP_HELPFILE

 

--로그백업 또는 삭제

(파일로 백업)

BACKUP LOG Sample TO DISK='D:\DBBackup\Sample_Log.bak'

GO

 

(최소로 축소)

BACKUP LOG SAMPLE WITH TRUNCATE_ONLY

GO

 

(삭제)

BACKUP LOG Sample WITH NO_LOG

GO

 

--가능한 작은 크기로 생성
DBCC SHRINKFILE (SAMPLE, 2)

 

--로그파일 정보를 다시 본다 (로우 수가 많이 줄었다)
DBCC LOGINFO

 

--실제 물리적 파일 크기 및 이름을 확인해본다. (실제 크기는 줄었을 수도 있고 아닐수도 있다)
EXEC SP_HELPFILE

 

--[옵션]실제 최소 크기 및 최대치를 변경한다.

ALTER DATABASE SAMPLE
MODIFY FILE (
NAME = SAMPLE_LOG,
MAXSIZE = 25 MB )
GO

 

 

 

 

 

--------------------------------------------------------

--- 로그파일 완죠니 삭제해버리기

--------------------------------------------------------

 

 

SQL쿼리분석기에서 실행하기바랍니다.
네트웍도 끊고 처리하시구요.
1)db정보를 본다.
   exec sp_helpdb db명


2)사용db을 master 로 이동
   use master


 

3)sql서버와 db파일의 연결을 끊는다.
   sp_detach_db db명

 

4)실제로 끊겼는지를 체크한다.(테이블이 존재하지 않는다고 에러뜸)
   select top 1 칼럼 from db명..테이블

5)탐색기에서 db명_log.ldf파일은 삭제한다.(혹시모르니 이름만 변경시킴)

 

6)아래를 실행하면 데이터 파일을 가지고 로그파일을 살려낸다.
   SP_ATTACH_SINGLE_FILE_DB 'db명', 'C:\파일경로\db명.MDF'

 

이때 살아난 로그파일은 최소로 줄어있다-->504kb
이상과 같이 순서적으로 처리함.

 

**** 물리적 디비파일의 연결 해제가 안될때 ****

---> 사용중이라는 메세지가 나오며 해제가 불가능 할 때가 있다.

 

방법1) 해당 디비를 단일사용자 디비로 일시 변경 후 복귀시켜서 사용

ALTER DATABASE AMAS_TEST
SET SINGLE_USER
WITH ROLLBACK AFTER 30

--단일사용자로 변경을 한 후 롤백을 하므로 디비에 대해 변동사항 전혀 없지만

--연결된 사용자는 모두 세션이 끊긴 상태가 되므로 디비를 분리할 수 있다.

 

방법2)

이럴 때 디비 모든 SQL툴(EM/분석기)을 종료 한 후 재 접속하는데

이 때 해제하고자 하는 디비연결을 하지 말것.

 

 

 

 

 

--------------------------------------------------------

--- 로그파일 다른 경로로 복사하기

--------------------------------------------------------


 

제가 회사에서 스토리지 확장할때 썻던 DB migration 방법인데...

도움되시길 바랍니다...

1. 주 데이터베이스 파일이 어떤 것인지 Enterprise Manager 에서 확인합니다.
해당 SQL 서버의 데이터베이스를 선택하고 등록정보를 봅니다.

일반 탭에는 주 데이터베이스 파일 정보,
트랜잭션 로그 탭에는 로그 파일 정보가 있습니다.

예> pubs 데이터베이스를 옮기고자 할때

C:\MSSQL\Data\pubs.mdf <--- 'pubs' database 의 데이터파일
C:\MSSQL\Data\pubs.ldf <--- 'pubs' database 의 로그파일< /FONT >

다른 속성들도 잘 메모해 두셨다가 복구시 같은 속성으로 맞춰 주시면 됩니다.

2. Query Manager 에서 다음 명령을 수행합니다.

sp_detach_db pubs

3. 주 데이터베이스 C 드라이브의 mdf, ldf 파일을 D 드라이브에 원하는 곳으로
copy 합니다. 예제에서는 각각

D:\MSSQL\Data\pubs.mdf
D:\MSSQL\Data\pubs.ldf

에 옮기는 것으로 하겠습니다.

4. 파일 copy 가 끝나면, Query Manager 에서 다음 명령을 수행합니다.

sp_attach_db 'pubs','D:\MSSQL\Data\pubs.mdf','D:\MSSQL\Data\pubs.ldf'

5. Enterprise Manager를 기동하여 아까 1번에서 메모했던 속성과 비교합니다.

맞지 않는 부분은 수정해 주시면 됩니다.

 

도움이 되셨기를...

(출처 : 'sql에서 LDF파일경로변경방법' - 네이버 지식iN)

 

 

 

MSSQL 트랜젝션 로그 삭제

 

--1. 일단 로그파일을 삭제하고자 하는 db를 single user로 만들어 줍니다.
--단독모드로 열려있지 않으면 디비파일을 삭제할수 없습니다.
exec sp_dboption 'db명','single user','true'

 

--2. DB를 내립니다..
exec sp_detach_db 'db명'

 

--3. Db가 저장되어 있는 폴더에 가서 해당 DB의 ldf파일의 이름을 변경합니다..혹시 나중에 쓸지 모르니까요...

 

--4. DB를 올립니다. 이 프로시져를 실행하면 해당디비의 ldf파일이..500k정도의 크기로 재 생성됩니다.
exec sp_attach_single_file_db 'db명','C:\Program Files\Microsoft SQL Server\MSSQL\data\db명.mdf'

 

--5. 단독모드를 풀어줍니다..
exec sp_dboption 'db명','single user','false'

 

* 1번항목을 쿼리분석기에서 실행하면..
'다른 사용자가 'db명' 데이터베이스를 사용하는 중에는 데이터베이스 상태를 변경할 수 없습니다.'
이런 에러메세지가 출력되었다.

이 때 엔터프라이즈 관리자와 쿼리분석기를 모두 닫은 후 쿼리분석기로만 로그인해서 하니 실행이 잘 되었

이올린에 북마크하기
No received trackback. / No comment.

Trackback Address :: http://viper150.cafe24.com/trackback/64

You can also say.

Prev 1 ... 235 236 237 238 239 240 241 242 243 ... 298 Next
블로그 이미지
이것저것 불펌금지도 퍼다가 담습니다. 외부에 비공개된 페이지 입니다. By. 어른왕자

카테고리

  • 전체 (298)
    • 사는 이야기 (115)
    • 웹 프로그래밍 (102)
    • App 프로그래밍 (22)
    • IT 뉴스&기타 (22)
    • 박한별 (4)
    • 역사&기타지식 (9)

태그목록

  • getRealPath
  • 소녀시대
  • 보안
  • 만들기
  • MenuBar
  • api
  • BrowserHelperObjects
  • 수면부족
  • security
  • 피로
  • 전업남편
  • vga성능
  • 운동
  • 우리
  • 김혜수
  • CD케이스
  • 고전
  • Filter
  • C언어
  • 명품지갑
  • java doc
  • 최적화
  • hwpCtrl
  • 터키
  • 카라타 에리카
  • 고구려
  • 사진
  • POST
  • 스파이
  • 화형

최근에 올라온 글

  • 보험사의 조정신청 대응방법.
  • 어느 천재의 앞선 시선.
  • [병맛더빙] 누구게..... (1)
  • 韓경제 `회색 코뿔소` 상황...
  • SVN Connector 설치 URL.
  • 군대를 가지 않는 서울대생.
  • “운은 하늘의 귀여움 받는...
  • 목장에서 알바하다가 캐스...
  • [펌]믿고 거르는 관상.
  • 하루에 1세트씩 하면 좋다...

최근에 달린 댓글

  • <p><img src="https://i.imgur... 브레드 01/22
  • <p><img src="https://i.imgur... 브레드 01/22
  • <p><img src="https://i.imgur... 브레드 01/22
  • <p><img src="https://i.imgur... 브레드 01/22
  • <p><img src="https://i.imgur... 브레드 01/22

최근에 받은 트랙백

  • công ty may đồng phục. công ty may đồng phục 01/08
  • Israelnightclub`s recent blo... Israelnightclub`s recent blo.. 01/06
  • Suggested Browsing. Suggested Browsing 01/06
  • similar site. similar site 01/06
  • לאתר הבית שלנו. לאתר הבית שלנו 01/06

글 보관함

  • 2019/03 (1)
  • 2018/12 (1)
  • 2018/09 (1)
  • 2018/08 (1)
  • 2018/02 (1)

달력

«   2021/01   »
일 월 화 수 목 금 토
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31            

링크

  • Total : 262222
  • Today : 11
  • Yesterday : 45
Tattertools
Eolin
rss

어른왕자's blog is powered byTattertools1.1.2.2 : Animato