백업/복구

DB 2012. 4. 12. 21:44



백업 : export

backup database ${데이터베이스명} to disk ='d:\${파일이름}.bak'


복구 : import

RESTORE FILELISTONLY FROM DISK = 'D:\${파일이름}.bak' 

GO

RESTORE HEADERONLY FROM Disk='D:\${파일이름}.bak'


RESTORE DATABASE WISM FROM DISK = 'D:\${파일이름}.bak' 

WITH MOVE 'WISM' TO  'D:\MSSQL\DATA\${파일이름}_Data.mdf'  ,

  MOVE 'WISM_log' TO  'E:\MSSQL\LOG\${파일이름}_log\.ldf' 

GO


/*

sp_dboption mydb, single, false -- 테이블 옵션 확인?

DBCC CHECKDB('mydbcrack', REPAIR_FAST) -- DB 무결성 체크?

DBCC CHECKDB('mydbcrack', REPAIR_REBUILD)

DBCC CHECKDB('mydbcrack', REPAIR_ALLOW_DATA_LOSS)

DBCC CHECKDB('mydbcrack', noindex)

DBCC CHECKDB('mydbcrack') 

*/

SQL Server 에이전트에서 도는 스케쥴 잡은 직접 새로 등록했다.


복구 후 계정생성

sp_addlogin @loginame = '${계정명}', @passwd =  '${암호}', @defdb =  '${기본데이터베이스명}'

use ${데이터베이스명}

go


if not exists (select * from dbo.sysusers where name = N'${계정명}')

EXEC sp_grantdbaccess N'${계정명}', N'${db의 계정명}'

GO


복구 후 계정 매핑(매칭)

복원후 DB 에 로그인 정보가 매핑이 잘 안되어 있는 경우 로그인 문제 발생할때 사용

각 데이터베이스 별로 수행해줘야 한다.

sp_change_users_login 'update_one', '${계정명}', '${데이터베이스_계정명}'







'DB' 카테고리의 다른 글

플랜 캐시 (실행계획 캐시)  (0) 2012.10.30
WITH(NOLOCK)  (0) 2012.09.12
문자열 입력받아 split 하기..  (0) 2012.09.06
암호화 예제  (0) 2012.04.15
MSSQL SET 명령(옵션) 모음  (0) 2011.02.02
MSSQL  (0) 2011.01.29
RAID  (0) 2011.01.29
mysql  (0) 2010.12.13