Process를 kill하는 방법 대신 아래의 command를 사용합니다.

지정한 초 수가 경과한 후 롤백할 것인지 또는 즉시 롤백할 것인지를 지정할 수 있습니다.

예>
-- 10초 후에 single_user 모드로 변경하는 alter database를 수행한 프로세스를 제외한
-- 다른 프로세스(DB명에 연결되어 있는)는 rollback 됩니다.
alter database DB명 set single_user with ROLLBACK AFTER 10

-- 다른 프로세스는 즉시 rollback 됩니다.
alter database DB명 set single_user with ROLLBACK IMMEDIATE

-- 멀티 유저로 데이터베이스 변경
alter database DB명
set multi_user with rollback immediate
go
2005/06/15 13:06 2005/06/15 13:06
1. 로컬하드디스크에 먼저 백업한 후 그 파일을 테잎장치로 옮긴다.

여러분이 백업을 수행할때 몇몇 SQL 명령어는 작동하지 않는다. 예로 백업을 수행하고있는 동안에는 Add File이나 Remove File과 함께 Alter Database를 사용할 수 없고 데이터베이스를 축소시킬수도 없다. 또한 Create Index문등 여러가지 명령어는 사용 불가능하다. 따라서 백업 수행시간을 줄이기 위해서 로컬 하드디스크에 먼저 백업을 한 후 이를 테잎장치로 옮기는 것이 좋다. 테잎 장치는 일반적으로 하드디스크보다 굉장히 느리기 때문이다. 가능한한 백업 수행시간을 줄여서 그 여파를 줄이는 것이 좋다.


2. 여러 백업 디바이스에 백업을 수행한다.

SQL Server는 각각의 백업 디바이스에 대해서 개별의 백업 스레드를 할당하기 때문에 백업을 병렬로 처리할 수 있다.
여러 물리적 디스크로 배열이된 곳에 백업을 수행한다.
역시 각각 개별 디스크의 개별 백업 디바이스에 스레드가 할당된다.


3. 데이터베이스 사용이 적을때 백업을 수행한다.

백업작업은 확보된 리소스가 많을수록 좋은 성능을 내기 때문에 CPU 사용이 적은 시간대에 작동하도록 스케쥴 작업으로 만드는 것이 좋다.


4. 복원시간의 축소가 중요할 경우 전체 백업을 사용한다.

전체 백업은 차등 백업이나 트랜잭션 로그 백업에 비해 시간이 더 오래걸리나 복원시는 가장 빠르다.


5. 백업시간의 축소가 중요할 경우 트랜잭션 로그 백업을 사용한다.

트랜잭션 로그 백업은 전체 백업이나 차등 백업에 비해 백업속도는 빠르나 복원시 가장 오래 걸린다.


6. 사용자가 정기적으로 동일한 데이터를 업데이트한다면 트랜잭션 로그 백업 대신 차등 백업을 사용한다.

차등 백업은 마지막 데이터베이스 백업 이후의 변경된 데이터 페이지만 백업하기 때문에 트랜잭션 로그 백업으로부터 트랜잭션 로그를 복원할시 처음 로그부터 롤포워드되는 시간을 절약할 수 있다.


7. 데이터베이스가 개별 파일이나 파일그룹에 나누어져 있다면 파일/파일그룹 백업을 고려한다.

각 개별 파일/파일그룹 백업의 경우 백업작업을 빨리 끝낼수 있기 때문에 백업 때문에 서버에 주는 영향을 줄일 수 있다.


8. 성능모니터를 사용하여 백업에 전체 시스템에 미치는 영향을 측정한다.

다음과 같은 측정치를 확인한다.
1. SQL Server Backup Device: Device Throughput Bytes/sec - 특정 백업 디바이스의 작업량을 나타낸다.
2. SQL Server Databases: Backup/Restore Throughput/sec - 전체 데이터베이스의 백업, 복원 작업량을 나타낸다.
3. Physical Disk: %Disk Time - 읽기쓰기 작업에 의해 디스크가 얼마나 작동하는지 퍼센티지로 알려준다.
4. Physical Disk Object: Avg.Disk Queue Length - 디스크 액세스를 위해서 평균적으로 시스템이 얼마나 요청하는지 알려준다.


9. 백업작업에 소요되는 시간을 줄이기 위해서 자주 백업하는 것을 고려해본다.

자주 백업을 할수록 그 크기는 작기 때문에 서버에 적은 영향을 미친다. 또 다른 이점으로는 데이터베이스에 장애가 일어났을시 손실될 수 있는 데이터의 양도 작아진다.


10. 테잎 장치는 다른 디스크나 CD롬 드라이브와 다른 SCSI버스에 위치시킨다.

테잎 장치의 SCSI버스를 독립적으로 두면 다른 드라이브와의 액세스 충돌을 피할 수 있기 때문에 최상의 백업 성능을 낼 수 있다. 마이크로소프트에서는 개별 SCSI버스에 테잎 장치를 위치시킬 경우 전송율이 원래 SCSI버스 속도의 50% 이상을 낸다고 한다.


11. 매우 큰 데이터베이스의 경우 SQL Server 2000 스냅샷 백업을 사용한다.

SQL Server 2000 스냅샷 백업과 복원 기술은 서드파티 하드웨어 또는 소프트웨어 공급업체를 필요로 한다. 스냅샷 백업/복원의 가장 큰 장점은 매우 짧은 시간안에 이를 수행할 수 있기 때문에(일반적으로 초단위로 수행된다.) 서버에 주는 영향을 극소화시킬 수 있다. 스냅샷 백업은 미러된 디스크를 짤라내던가 디스크의 블럭을 복사하는 방식으로 이루어지며 특정한 하드웨어와 소프트웨어를 필요로 한다
2005/06/15 13:05 2005/06/15 13:05
SQL Server 2000에서는 서버 단위 라이센스 모드가 사라지고, 프로세서 단위 라이센스 모드가 추가되었습니다. SQL Server 2000에서 허용되는 라이센스 모드는 다음과 같습니다.
사용자 단위 라이센스

1. 사용자 단위 모드에서는 SQL Server 2000 Server에 액세스할 각 장치마다 클라이언트 액세스 라이센스가 필요합니다. 사용자 단위는 클라이언트가 두 대 이상의 서버에 연결하는 네트워크에서 더 경제적입니다.


프로세서 라이센스

1. 프로세서 라이센스 모드에서는 SQL Server를 실행하는 각 컴퓨터의 프로세서마다 라이센스가 필요합니다. 프로세서 라이센스를 사용하면 장치 수에 관계 없이 인터넷이나 인트라넷을 통해 서버에 액세스할 수 있습니다.

2. 프로세서 라이센스를 사용할 때는 SQL Server 2000이 설치된 각 프로세서를 사용할 수 있으며 클라이언트 장치를 수에 제한 없이 지원합니다. 인터넷을 통해 SQL Server 데이터베이스에 대한 액세스를 제공하거나 많은 사용자가 있는 고객은 일반적으로 프로세서 라이센스를 선택합니다.
2005/06/15 13:02 2005/06/15 13:02