현재 위치 - 중국 분류 정보 발표 플랫폼 - 비즈니스 서비스 정보 - SQL Server 2005에서 로그 파일을 삭제하는 여러 가지 방법 요약

SQL Server 2005에서 로그 파일을 삭제하는 여러 가지 방법 요약

SQL Server 데이터베이스에는 모두 로그 파일이 있으며 로그 파일에는 데이터베이스 수정에 대한 사용자 작업이 기록됩니다. 로그 파일을 직접 삭제하고 로그를 지워서 데이터베이스 로그를 지울 수 있습니다. MS 데이터베이스를 사용하는 친구는 C 드라이브의 공간이 쉽게 채워질 수 있다는 것을 알고 있습니다. 시스템 디스크의 파티션이 비교적 작기 때문에 데이터베이스는 사용 중에 로그 파일을 생성하기 때문입니다.

SQL Server 데이터베이스에는 로그 파일이 있고 로그 파일에는 데이터베이스 수정에 대한 사용자 작업이 기록됩니다. 로그 파일을 직접 삭제하고 로그를 지워서 데이터베이스 로그를 지울 수 있습니다.

MS 데이터베이스를 사용하는 친구들은 C 드라이브의 공간이 쉽게 채워질 수 있다는 점을 알고 있을 것입니다. 시스템 디스크는 원래 상대적으로 작은 파티션을 가지고 있기 때문에 데이터베이스를 사용하는 동안 로그 파일이 계속 증가하여 데이터베이스 성능이 저하되고 많은 디스크 공간을 차지하게 되기 때문입니다. SQL Server 데이터베이스에는 모두 로그 파일이 있으며 로그 파일에는 데이터베이스 수정에 대한 사용자 작업이 기록됩니다. 로그 파일을 직접 삭제하고 로그를 지워 데이터베이스 로그를 지울 수 있습니다.

1. 로그 삭제

1. 데이터베이스를 분리하기 전에 반드시 데이터베이스 전체 백업을 수행하고 데이터베이스를 마우스 오른쪽 버튼으로 클릭하여 작업 분리를 선택하세요.

연결 삭제 확인

분리 후에는 데이터베이스 목록에서 분리된 데이터베이스를 볼 수 없습니다.

2. 로그 파일 삭제

3. 데이터베이스를 첨부하면 로그 파일을 찾을 수 없다는 알림이 표시됩니다.

데이터베이스 정보의 ldf 파일 삭제:

데이터베이스를 연결한 후 새 로그 파일이 생성되며 새 로그 파일의 크기는 504K입니다.

다음 명령을 통해 위 작업을 완료할 수도 있습니다:

use master;

exec sp_detach_db @dbname='TestDB';

exec sp_attach_single_file_db @dbname='TestDB',@physname='D:Program FilesMicrosoft SQL ServerM

SSQL10.SQL2008MSSQLDATATestDB.mdf'

로그 지우기

이 명령은 SQL Server 2005 및 2000에서는 지원되지만 SQL Server 2008에서는 지원되지 않습니다.

NO_LOG로 TestDB 트랜잭션 덤프

3. 데이터베이스 파일을 축소합니다.

DBCC SHRINKFILE ('TestDB_log',1)

4. Truncate Transaction log

BACKUP LOG TestDB WITH NO_LOG

이 명령은 SQL Server 2008에서는 지원되지 않지만 SQL Server 2005 및 2000에서는 사용할 수 있습니다.

SQLServer2005의 LOG 파일을 삭제하세요.

--로그는 백업해두시는 것이 가장 좋으며, 추후 로그를 통해 데이터를 복원하실 수 있습니다. .

다음은 로그 처리 방법입니다. 4단계와 6단계는 일반적으로 권장되지 않습니다. 4단계는 안전하지 않으며 데이터베이스가 손상되거나 데이터가 손실될 수 있습니다. 6단계. 로그가 상한에 도달하면 후속 데이터베이스 처리가 실패합니다. 로그를 삭제한 후 복구할 수 있습니다.--*/--아래 라이브러리 이름은 모두 처리하려는 데이터베이스의 라이브러리 이름을 나타냅니다.

1. 로그를 삭제합니다 DUMP TRANSACTION 라이브러리 이름 WITH NO_LOG2 . 트랜잭션 로그 자르기: BACKUP LOG 라이브러리 이름 WITH

NO_LOG3. 데이터베이스 파일 축소(압축하지 않으면 데이터베이스 파일이 줄어들지 않음) Enterprise Manager - 압축하려는 데이터베이스를 마우스 오른쪽 버튼으로 클릭 - 모두 작업 - 데이터 축소

라이브러리--파일 축소--로그 파일 선택-축소 모드에서 XXM으로 축소를 선택합니다. 축소할 수 있는 최소 M 수는 여기에 직접 입력합니다. 확인

p>

확실히 확인하세요. 데이터 파일을 선택하세요. 축소 모드에서 XXM으로 축소를 선택하세요. 여기에는 축소할 수 있는 최소 M 수가 제공됩니다. 이 숫자를 직접 입력하고 확인하세요.

< p>예, SQL 문을 사용하여 완료할 수도 있습니다. - 데이터베이스 축소 DBCC SHRINKDATABASE(라이브러리 이름) - 지정된 데이터 파일 축소. 1은 파일 번호이며 다음 문을 통해 쿼리할 수 있습니다. select * from sysfilesDBCC SHRINKFILE(1)4. 로그 파일 크기를 최소화하기 위해(sql 7.0의 경우 이 단계는 쿼리 분석기에서만 수행 가능) 별도의 데이터베이스: Enterprise Manager-- Server--Database--Right -클릭--데이터베이스 분리 b. 내 컴퓨터에서 로그 파일 삭제 c. 데이터베이스 연결: Enterprise

관리자--서버--데이터베이스--오른쪽 클릭--데이터베이스 연결 이 방법을 사용하면 새 로그가 생성됩니다. 크기가 500K를 초과하는 LOG 또는 코드 사용: 다음 예에서는 pubs를 분리한 다음 현재 서버에 pubs의 파일을 첨부합니다. a. EXEC sp_detach_db @dbname = 로그 파일을 삭제합니다. c. EXEC sp_attach_single_file_db @dbname = '라이브러리 이름', @physname = 'c:Program FilesMicrosoft SQL Server

MSSQLData 라이브러리 이름 .mdf'5를 나중에 자동으로 축소하려면 다음을 수행하십시오. 설정: Enterprise Manager--서버--데이터베이스 마우스 오른쪽 버튼 클릭--속성--옵션--"자동 축소 선택

"--SQL 문 설정 방법: EXEC sp_dboption '라이브러리 이름', 'autoshrink ', 'TRUE'6. 향후 로그가 너무 커지는 것을 방지하려면 Enterprise Manager--서버

-데이터베이스 마우스 오른쪽 버튼 클릭--속성--트랜잭션 로그--제한 xM까지 파일 증가(x는 허용하는 최대 데이터 파일 크기)--SQL 문 설정 방법: 데이터 변경

기본 라이브러리 이름 수정 파일(이름=논리 파일 이름, maxsize=20)

SQL Server 데이터베이스를 장기간 사용하다 보면 로그 파일의 용량이 점차 커질 것입니다. 데이터베이스를 백업하여 누구에게나 보내기가 매우 어렵습니다.

다음 명령문을 실행해 보세요. 약 1M 공간만 남을 때까지 로그 파일을 지웁니다.

DUMP TRANSACTION 데이터베이스 이름 WITH NO_LOG

DBCC SHRINKDATABASE('database name', TRUNCATEONLY)< /p>

SQL 서비스를 재시작하지 않고 SQLServer 시스템 로그 삭제

SQLServer 시스템 로그가 너무 크면 SQLServer 서버가 시작되지 않는 등 일련의 문제가 발생합니다.

오늘 이 문제가 발생해서 인터넷으로 검색해 보니 해결 방법이 있네요. 그런데 현재 ErrorLog가 SQL에서 사용되고 있어서 삭제가 안 되네요. 삭제하려면 SQL 서버를 정지시키는 수밖에 없나요? ?

대답은 '예'입니다. 다음 저장 프로시저를 사용하십시오. EXEC sp_cycle_errorlog

설명

SQL Server를 시작할 때마다 현재 오류 로그의 이름이 errorlog로 변경됩니다. 1 ;errorlog.1은 errorlog.2가 되고, errorlog.2는 errorlog.3이 됩니다. sp_cycle_errorlog를 사용하면 서버를 중지했다가 시작할 필요 없이 오류 로그 파일을 순환할 수 있습니다.