Sqlserver 2005 로그 파일 이 너무 크 면 어떻게 줄 입 니까?
6111 단어 sqlserver2005로그
다음 세 줄 dbName 을 데이터베이스 이름 으로 실행 합 니 다:
backup log dbNamewith NO_LOG
backup log dbNamewith TRUNCATE_ONLY
DBCC SHRINKDATABASE(dbName)
로그 파일 을 1MB 로 줄 이기
sql 서버 로그 파일 비우 기 2011-04-06 23:05
1:LOG 삭제
1:데이터베이스 기업 관리자->서버->데이터베이스->오른쪽 키->데이터 베 이 스 를 분리 합 니 다.
2:LOG 파일 삭제
3:추가 데이터베이스 기업 관리자->서버->데이터베이스->오른쪽 키->추가 데이터 베이스
이 방법 은 새로운 LOG 를 생 성 하 는데 크기 는 520 여 K 에 불과 하 다
이 데이터 베 이 스 를 자동 으로 축소 합 니 다.
또는 코드 사용:
다음 예제 에 서 는 77169 database 를 분리 한 후 77169 database 의 파일 을 현재 서버 에 추가 합 니 다.
EXEC sp_detach_db @dbname = "77169database"
EXEC sp_attach_single_file_db @dbname = "77169database",
@physname = "c:Program FilesMicrosoft SQL ServerMSSQLData77169database.mdf"
2:로그 비우 기
DUMP TRANSACTION 라 이브 러 리 이름 WITH NOLOG
다시:
기업 관리자-오른쪽 단 추 를 누 르 면 압축 할 데이터베이스-모든 작업-수축 데이터베이스-수축 파일-선택 로그 파일-수축 방식 에서 XXM 으로 수축 을 선택 합 니 다.여기 서 수축 을 허용 하 는 최소 M 수 를 드 립 니 다.이 수 를 직접 입력 하여 확인 하면 됩 니 다.
3:나중에 자라 지 못 하 게 하려 면
기업 관리자->서버->데이터베이스->속성->사무 로그->파일 증 가 를 2M 으로 제한 합 니 다.
자동 으로 로 그 를 줄 일 수도 있 고,아래 문장 을 사용 할 수도 있다
ALTER DATABASE 데이터베이스 이름
SET AUTO_SHRINK ON
고장 복원 모델 을 간단하게 바 꾸 었 습 니 다.
USE MASTER
GO
ALTER DATABASE 데이터베이스 이름 SET RECOVERY SIMPLE
GO
---------------------------------------------------------------------------------
트 랜 잭 션 로그 차단:
BACKUP LOG { database_name | @database_name_var }
{
[ WITH
{ NO_LOG | TRUNCATE_ONLY } ]
}
--hovertree.com 에 대해 묻 는 것 은 무엇 인가
--압축 로그 및 데이터베이스 파일 크기
특히 주의 하 다
절차 에 따라 진행 하 세 요.앞의 절 차 를 진행 하지 않 았 으 니 뒤의 절 차 를 하지 마 세 요.
그렇지 않 으 면 데이터 베 이 스 를 손상 시 킬 수 있 습 니 다.
--*/
1.로그 비우 기
DUMP TRANSACTION 라 이브 러 리 이름 WITH NOLOG
2.트 랜 잭 션 로그 차단:
BACKUP LOG 데이터베이스 이름 WITH NOLOG
3.데이터베이스 파일 축소(압축 하지 않 으 면 데이터베이스 파일 이 줄 어 들 지 않 습 니 다.
기업 관리자--오른쪽 단 추 를 누 르 면 압축 할 데이터베이스--모든 작업--수축 데이터베이스-수축 파일
--로그 파일 선택--수축 방식 에서 XXM 으로 수축 하 는 것 을 선택 하면 수축 이 가능 한 최소 M 수 를 주 고 이 수 를 직접 입력 하여 확인 하면 됩 니 다.
--데이터 파일 선택--수축 방식 에서 XXM 으로 수축 을 선택 하면 수축 을 허용 하 는 최소 M 수 를 주 고 이 수 를 직접 입력 해 확인 하면 된다
SQL 문장 으로 도 완성 할 수 있 습 니 다.
--수축 데이터베이스
DBCC SHRINKDATABASE(고객 자료)
--지 정 된 데이터 파일 을 줄 이 고 1 은 파일 번호 입 니 다.이 문 구 를 통 해 select*from sysfiles 를 조회 할 수 있 습 니 다.
DBCC SHRINKFILE(1)
4.로그 파일 을 최대 화하 기 위해 서(sql 7.0 이 라면 검색 분석 기 에서 만 진행 할 수 있 습 니 다)
a.데이터베이스 분리:
기업 관리자-서버-데이터베이스-우 클릭-분리 데이터베이스
b.내 컴퓨터 에서 LOG 파일 삭제
c.추가 데이터베이스:
기업 관리자-서버-데이터베이스-우 클릭-추가 데이터베이스
이 방법 은 새로운 LOG 를 생 성 할 것 이 며,크기 는 500 여 K 에 불과 하 다
또는 코드 사용:
다음 예제 에 서 는 77169 database 를 분리 한 후 77169 database 의 파일 을 현재 서버 에 추가 합 니 다.
헤어지다
EXEC sp_detach_db @dbname = "77169database"
b.로그 파일 삭제
c.추가
EXEC sp_attach_single_file_db @dbname = "77169database",
@physname = "c:Program FilesMicrosoft SQL ServerMSSQLData77169database.mdf"
5.나중에 자동 으로 줄 어 들 수 있 도록 다음 설정 을 합 니 다.
기업 관리자-서버-우 클릭 데이터베이스-속성-옵션-선택"자동 수축"
--SQL 구문 설정 방식:
EXEC sp_dboption"데이터베이스 이름","autoshrink","TRUE"
6.나중에 로 그 를 크게 늘 리 지 않 으 려 면
기업 관리자-서버-오른쪽 키 데이터베이스-속성-트 랜 잭 션 로그
--파일 증 가 를 xM(x 는 허용 하 는 최대 데이터 파일 크기)으로 제한한다
--SQL 문장의 설정 방식:
alter database 데이터베이스 이름 modify file(name=논리 파일 이름,maxsize=20)
-------------------------------------------------------------------------------------------
/*-압축 데이터베이스 의 유 니 버 설 저장 과정
압축 로그 및 데이터베이스 파일 크기
데이터 베 이 스 를 분리 처리 해 야 하기 때문이다.
그래서 저장 과정 은 압축 된 데이터 베 이 스 를 만 들 수 없습니다.
/*--
exec p_compdb "test"
--*/
use master -- , master
go
if exists (select * from dbo.sysobjects where id = object_id(N"[dbo].[p_compdb]") and OBJECTPROPERTY(id, N"IsProcedure") = 1)
drop procedure [dbo].[p_compdb]
GO
create proc p_compdb
@dbname sysname, --
@bkdatabase bit=1, -- , ,
@bkfname nvarchar(260)="" -- , , , : +
as
--1.
exec("DUMP TRANSACTION ["+@dbname+"] WITH NO_LOG")
--2. :
exec("BACKUP LOG ["+@dbname+"] WITH NO_LOG")
--3. ( ,
exec("DBCC SHRINKDATABASE(["+@dbname+"])")
--4.
exec("EXEC sp_dboption """+@dbname+""",""autoshrink"",""TRUE""")
-- ,
--5.
if @bkdatabase=1
begin
if isnull(@bkfname,"")=""
set @bkfname=@dbname+"_"+convert(varchar,getdate(),112)
+replace(convert(varchar,getdate(),108),":","")
select =" SQL , :"+@bkfname
exec("backup database ["+@dbname+"] to disk="""+@bkfname+"""")
end
--
create table #t(fname nvarchar(260),type int)
exec("insert into #t select filename,type=status&0x40 from ["+@dbname+"]..sysfiles")
exec("sp_detach_db """+@dbname+"""")
--
declare @fname nvarchar(260),@s varchar(8000)
declare tb cursor local for select fname from #t where type=64
open tb
fetch next from tb into @fname
while @@fetch_status=0
begin
set @s="del ""+rtrim(@fname)+"""
exec master..xp_cmdshell @s,no_output
fetch next from tb into @fname
end
close tb
deallocate tb
--
set @s=""
declare tb cursor local for select fname from #t where type=0
open tb
fetch next from tb into @fname
while @@fetch_status=0
begin
set @s=@s+","""+rtrim(@fname)+""""
fetch next from tb into @fname
end
close tb
deallocate tb
exec("sp_attach_single_file_db """+@dbname+""""+@s)
go
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
소샤게 CS 워크 플로우 개선 바람 관리 화면 12/16로 투고2020/02/08 구성과 설계를 기재 안녕하세요, 코로나입니다. 이번에는 업무에 가깝지만 가상 포트폴리오를 준비해 보았습니다. 신규 개발팀 백엔드 2명 프런트 x명 기획 2명 운영팀 백엔드 1명 문의 겸 기획 1명...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.