3가지 구체적인 방법이 있습니다.
방법 1:
1단계:
no_log를 사용하여 데이터베이스 이름 백업 로그
또는 truncate_only를 사용하여 데이터베이스_이름 백업 로그
-- 여기서 no_log와 truncate_only는 동의어이므로 어떤 문장이라도 실행할 수 있습니다.
2단계:
1. 특정 데이터베이스의 모든 데이터와 로그 파일을 축소하고 다음을 실행합니다.
dbcc 축소데이터베이스(database_name,[,target_percent])
-- Database_name은 축소할 데이터베이스의 이름이고, target_percent는 데이터베이스를 축소한 후 데이터베이스 파일에 필요한 남은 여유 공간의 비율입니다.
2. 특정 데이터베이스의 데이터 또는 로그 파일을 한 번에 축소하고
를 실행합니다.dbcc 축소파일(file_id,[,target_size])
-- file_id는 축소할 파일의 식별(ID) 번호입니다. 파일 ID를 얻으려면 FILE_ID 함수를 사용하거나 현재 데이터베이스에서 sysfiles를 검색하세요. target_size는 원하는 파일 크기(MB)입니다(정수로 표시). . 지정하지 않으면 dbcc Shrinkfile은 파일 크기를 기본 파일 크기로 줄입니다. 두 dbcc 모두 notruncate 또는 truncateonly 매개변수를 전달할 수 있습니다. 구체적인 의미는 온라인 도움말을 참조하세요.
방법 2:
1단계:
긴급 상황에 대비하려면 먼저 전체 데이터베이스를 백업하세요.
2단계:
백업이 완료된 후 쿼리 분석기에서 다음 문을 실행합니다.
exec sp_detach_db yourDBName,true
--MSSQL
에서 이 DB의 등록 정보를 제거합니다.3단계:
물리적 로그 파일이 있는 디렉터리로 이동하여 로그 파일을 삭제하거나 해당 디렉터리 밖으로 로그 파일을 이동하세요
4단계:
쿼리 분석기에서 다음 문을 실행합니다.
exec sp_attach_single_file_db yourDBName,'
d:mssqldatayourDBName_data.mdf '
--DB를 단일 파일로 등록하면 MSSQL이 자동으로 이 DB에 대한 500K 로그 파일을 생성합니다.
방법 3:
1. 엔터프라이즈 관리자에 들어가서 데모 등의 데이터베이스를 선택하세요
2. 모든 업무 -> 별도의 데이터베이스
3. 데이터베이스 파일이 저장된 디렉토리로 이동하여 MuOnline_log.LDF 파일을 복사해두시면 됩니다.
4. Enterprise Manager -> 데이터베이스 연결, muonline을 선택하면 로그 파일 항목이 십자로 표시됩니다. 계속 진행하면 데이터베이스를 새로 생성할지 묻는 메시지가 표시됩니다. 데이터베이스에 로그가 없는 경우 하나입니다.5. 데이터베이스를 다시 연결한 후에는 사용자가 재설정해야 한다는 점을 기억하세요.
앞으로 더 커지는 것을 원하지 않는다면:
SQL2000에서 사용됨:
데이터베이스를 마우스 오른쪽 버튼으로 클릭->속성->옵션->실패 복구-모델-선택-단순 모델을 클릭합니다.
또는 SQL 문을 사용하세요:
데이터베이스 데이터베이스 이름 설정 복구 간단 변경
SQL 데이터베이스가 너무 큰 경우 대처 방법
--로그 및 데이터베이스 파일 크기 압축
/*--특별한 주의
이전 단계를 완료하지 않은 경우 다음 단계를 수행하지 마세요.
그렇지 않으면 데이터베이스가 손상될 수 있습니다.
--*/
1.로그 지우기
NO_LOG가 포함된 DUMP 트랜잭션 라이브러리 이름
2. 트랜잭션 로그 자르기:
NO_LOG가 포함된 백업 로그 데이터베이스 이름
3. 데이터베이스 파일을 축소합니다. (압축하지 않으면 데이터베이스 파일이 줄어들지 않습니다.
Enterprise Manager--압축하려는 데이터베이스를 마우스 오른쪽 버튼으로 클릭--모든 작업--데이터베이스 축소--파일 축소
--로그 파일 선택--축소 모드에서 축소가 허용되는 최소 개수는 M입니다. 이 숫자를 직접 입력하고 확인하세요.
--데이터 파일 선택--축소 모드에서 축소가 허용되는 최소 개수는 M입니다. 이 숫자를 직접 입력하고 확인하세요.
SQL 문을 사용해도 가능합니다--데이터베이스 축소
DBCC SHRINKDATABASE(고객 데이터)
--지정된 데이터 파일을 축소합니다. 1은 파일 번호이며 다음 문을 통해 쿼리할 수 있습니다. select * from sysfiles
DBCC 축소파일(1)
4. 로그 파일 크기를 최소화하기 위해(SQL 7.0의 경우 이 단계는 쿼리 분석기에서만 수행 가능)
a. 별도의 데이터베이스:
Enterprise Manager--서버--데이터베이스--마우스 오른쪽 버튼 클릭--데이터베이스 분리
b. 내 컴퓨터의 LOG 파일 삭제
c. 추가 데이터베이스:
Enterprise Manager--서버--데이터베이스--마우스 오른쪽 버튼 클릭--데이터베이스 연결
이 방법은 새 로그를 생성하며 크기는 500K를 넘습니다
또는 코드 사용:
아래 예에서는 pub를 분리한 다음 pub의 파일을 현재 서버에 추가합니다.
a.이별
EXEC sp_detach_db @dbname = 'pubs'
b. 로그 파일 삭제
c.다시 추가
EXEC sp_attach_single_file_db @dbname = 'pubs',
@physname = 'c:Program FilesMicrosoft SQL ServerMSSQLDatapubs.mdf'
5. 앞으로 자동으로 축소하려면 다음과 같이 설정하세요.
Enterprise Manager--서버--데이터베이스를 마우스 오른쪽 버튼으로 클릭-속성--옵션--"자동 축소" 선택
--SQL 문 설정 방법:
EXEC sp_dboption '데이터베이스 이름', 'autoshrink', 'TRUE'
6. 앞으로 로그가 너무 커지는 것을 방지하고 싶다면
Enterprise Manager--서버--데이터베이스 마우스 오른쪽 버튼 클릭--속성--트랜잭션 로그
--파일 증가를 xM으로 제한하세요(x는 허용하는 최대 데이터 파일 크기입니다)
--SQL 문 설정 방법:
데이터베이스 데이터베이스 이름 변경 파일 수정(이름=논리 파일 이름, 최대 크기=20)
위 내용은 데이터베이스 로그 파일을 압축하는 방법 및 단계의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!