-EM(Enterprise Manager)를 이용한 데이터베이스 분리

1.데이터베이스 위에서 마우스 오른쪽 번튼을 눌러 나타나는 단축메뉴에서 [모든작업(K)] - [데이터베이스 분리(H)] 를 선택합니다.

2.[데이터베이스 분리] 대화창이 표시됩니다. 이 화면에서 "분리 전에 통계 먼저 업데이트[S]"를 선택하시고 [확인] 버튼을 누르시면 데이터베이스가 분리됩니다.

-sp_detach_db 시스템 저장프로시져를 이용한 데이터베이스 분리

1.다음과 같이 sp_detach_db 시스템 저장프로시져를 이용하여 간단하게 데이터베이스를 분리 할 수 있습니다.

USE master
GO
EXEC sp_detach_db test




-EM(Enterprise Manager)를 이용한 데이터베이스 연결

1. 우선 연결할 대상이 되는 *.mdf, *.ldf 파일을 특정한 디렉토리에 위치를 시킵니다. 예로 test.mdf, test_log.ldf 파일을 E:\Data 폴더에 있다고 가정합니다.

2. "데이터베이스" 위에서 마우스 오른쪽 버튼을 눌러 단축메뉴를 표시하면 [모든작업(K)] - [ 데이터베이스 연결(A)]을 선택할 수 있습니다.

3. 데이터베이스 연결을 위한 대화창이 표시됩니다.

4. 찾기 버튼 [...] 을 누르면 연결할 데이터베이스 파일의 위치를 쉽게 찾을 수 있는 탐색창이 뜹니다. 이 화면에서 연결하고자 하는 데이터베이스 파일 *.mdf 을 선택하면 됩니다.

5. 데이터베이스 파일을 선택한 후의 화면입니다. 원하는 경우 "다음 이름으로 연결(A)" 부분에 다른 이름을 주어 기존의 데이터베이스와는 다른 이름을 갖는 데이터베이스로 연결을 할 수 있습니다.

6. [확인] 버튼을 누르면 데이터베이스 연결이 완료됩니다.


-sp_attach_db 또는 sp_attach_single_file_db 시스템 저장프로시져를 이용한 데이터베이스 연결

sp_attach_db의 경우는 데이터베이스 파일이 여러개인 경우(한개의 *.mdf 파일과 여러개의 *.ndf 파일들)에 사용을 하게 되며, sp_attach_single_file_db의데이터베이스 파일이 한개(한개의 *.mdf 파일)인 경우 사용하면 됩니다. 데이터베이스 파일이 한개인 경우는 두가지 방법중 아무거나 사용하시면 됩니다. 그리고 sp_attach_db의 경우는 16개의 데이터베이스 파일까지 한번에 지정이 가능합니다.

만일 위에서 연결했던 test.mdf 파일을 sp_attach_db를 이용해서 연결한다면 다음과 같이 하시면 됩니다.


USE master
GO
EXEC sp_attach_db 'test', 'E:\Data\test.mdf', 'E:\Data\test_log.ldf'


위 연결 방법은 정확히 한다면 다음과 같은 문법에 따라 사용하셔야 합니다. 하지만 변수명 생략이 가능하기 때문에 위와 같이 사용한 것입니다.


USE master
GO
EXEC sp_attach_db @dbname = 'test', @filename1 = 'E:\Data\test.mdf', @filename2 = 'E:\Data\test_log.ldf'


test.mdf 파일을 sp_attach_single_file_db를 이용해서 연결한다면 다음과 같이 하시면 됩니다.


USE master
GO
EXEC sp_attach_single_file_db 'sqlworld', 'E:\Data\sqlworld.mdf'

-- 또는

EXEC sp_attach_single_file_db @dbname = 'test',
@physname = 'E:\Data\test.mdf'

-- 또는

이전 서버와 문자셋 정보(sp_helpsort 명령으로 보실수 있습니다.)가 같고

이전에 사용하던 SQL서버가 정상적인 상태로 종료 되었을때(엔터프라이즈 관리자에서

SQL서버를 스탑 시켰거나.. 정상적으로 윈도우 시스템을 종료시킨 경우 - 해당

mdf 화일과 ldf 화일이 정상적으로 닫혔을 경우) 복구가 가능하며 이때 사용하는 명령은


EXEC sp_attach_db 'pubs'

, 'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs.mdf'

, 'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs_log.ldf'


명령으로 복구할 수 있습니다.
2005/06/15 14:45 2005/06/15 14:45

트랙백 주소 :: http://thinkit.or.kr/database/trackback/234