반응형

10. 데이터베이스 옵션 로그 전달

 

데이터베이스 안의 데이터 변경뿐만 아니라 데이터베이스 옵션 변경도 전달되는지 아래와 같이 확인하였습니다. 예제 스크립트에서는 특정 옵션 한 가지에 대해서 테스트하였습니다.

 

-- 주 서버

USE master

GO

 

SELECT DATABASEPROPERTY('LSTest', 'IsAutoUpdateStatistics')

GO

--1

 

ALTER DATABASE LSTest SET AUTO_UPDATE_STATISTICS OFF

GO

 

SELECT DATABASEPROPERTY('LSTest', 'IsAutoUpdateStatistics')

GO

--0

 

-- 보조 서버

USE master

GO

 

-- 로그 전달 이전

SELECT DATABASEPROPERTY('LSTest', 'IsAutoUpdateStatistics')

GO

--1

 

-- 로그 전달 이후 데이터베이스 옵션 변경

SELECT DATABASEPROPERTY('LSTest', 'IsAutoUpdateStatistics')

GO

--0

 

11. 데이터베이스 파일 추가 로그 전달

 

데이터베이스 크기가 증가함에 따라 특정 폴더 안에서 데이터베이스 파일 증가가 한계 상황에 도달하였을 경우 다른 폴더에 데이터베이스 파일을 추가해야 합니다. 이때, 로그 전달에 문제가 없는지 아래와 같이 확인하였습니다.

 

11.1 보조 서버에 동일 폴더 경로가 있을 경우

 

주 서버에 추가되는 데이터베이스 파일이 위치하는 폴더 경로가 보조 서버에도 존재하는 경우는 로그 전달 작업이 정상적으로 진행됩니다. 아래는 주 서버 및 보조 서버에서 로그 전달 정상 여부를 확인하는 스크립트입니다.

 

-- 주 서버

USE LSTest

GO

 

sp_helpfile

GO

/*

LSTest   1            C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\LSTest.mdf           PRIMARY             10240 KB Unlimited             10240 KB data only

LSTest_log           2            C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\LSTest_log.ldf        NULL      10240 KB 2147483648 KB       10240 KB         log only

*/

 

ALTER DATABASE LSTest ADD FILE

(

    NAME = LSTest_Data2 

    , FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\LSTest_Data2.mdf'

    , SIZE = 10MB

    , FILEGROWTH = 10MB

)

GO

 

sp_helpfile

GO

/*

LSTest   1            C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\LSTest.mdf           PRIMARY             10240 KB Unlimited             10240 KB data only

LSTest_log           2            C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\LSTest_log.ldf        NULL      10240 KB 2147483648 KB       10240 KB         log only

LSTest_Data2       3            C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\LSTest_Data2.mdf  PRIMARY             10240 KB Unlimited             10240 KB data only

*/

 

-- 보조 서버

-- 로그 전달 이전

USE LSTest

GO

 

sp_helpfile

GO

/*

LSTest   1            C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\LSTest.mdf           PRIMARY             10240 KB Unlimited             10240 KB data only

LSTest_log           2            C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\LSTest_log.ldf        NULL      10240 KB 2147483648 KB       10240 KB         log only

*/

 

USE master

GO

 

-- 로그 전달 이후

USE LSTest

GO

 

sp_helpfile

GO

/*

LSTest   1            C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\LSTest.mdf           PRIMARY             10240 KB Unlimited             10240 KB data only

LSTest_log           2            C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\LSTest_log.ldf        NULL      10240 KB 2147483648 KB       10240 KB         log only

LSTest_Data2       3            C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\LSTest_Data2.mdf  PRIMARY             10240 KB Unlimited             10240 KB data only

*/

 

USE master

GO

 

11.2 보조 서버에 동일 폴더 경로가 없을 경우

 

주 서버에 추가되는 데이터베이스 파일이 위치하는 폴더 경로가 보조 서버에 존재하지 않는 경우는 로그 전달 작업이 실패합니다. 아래 화면은 보조 서버의 트랜잭션 로그 복원 작업의 작업 이력을 확인한 것입니다. 따라서 주 서버에서 로그 전달 대상 데이터베이스의 파일을 추가하는 경우 보조 서버에도 동일한 폴더 경로가 존재하는지 확인하고 존재하지 않으면 동일한 경로의 폴더를 생성하고 충분한 여유 공간이 있는지 확인하여야 합니다.

 

 

 

이로써 SQL Server 2005 로그 전달 구축 가이드 강좌를 마칩니다. 지금까지 이 강좌를 읽어 주셔서 감사 드립니다.

반응형

+ Recent posts