====== SQL Server Recovery/User Mapping ======
===== 목적 =====
- 물리적인 서버를 새로 설치 후, SQL Server에 백업 파일 복구 후, 사용자 계정을 매핑하는 방법을 설명한다.
==== 예정정보 ====
^ TDE Cert File | d:\mssql_cert\tde_cert.cert |
^ TDE Private Key | d:\mssql_cert\tde_private.key |
^ TDE Encryption Password | abcde1 |
^ Backup File | d:\backup\admin_20160923.bak |
^ Recovery Directory | d:\MSSQL\ADMIN\ |
^ Database Name | **admindb** |
^ Database User | **db_manager** |
^ Database Password | **12345a** |
===== 백업파일 복구 =====
==== TDE 적용 ====
- SQL Server에 TDE 가 적용되어 있다면,
- HOWTO
-- Restoring the certificate, but without the private key.
CREATE CERTIFICATE TDECert
FROM FILE = 'D:\mssql_cert\tde_cert.cert'
WITH PRIVATE KEY (
FILE = N'D:\mssql_cert\admin_private.key',
DECRYPTION BY PASSWORD = 'abcde1'
);
GO
==== 복구 ====
- HOWTO
-- We have the correct certificate and we've also restored the
-- private key. Now everything should work. Finally!
restore DATABASE [admindb]
FROM disk= N'D:\backup\admindb_20160923.bak'
WITH move 'admindb' TO N'D:\MSSQL\ADMIN\admindb_data.mdf',
move 'admindb_log' TO N'D:\MSSQL\ADMIN\admindb_data_log.ldf';
GO
===== 사용자 계정 생성 =====
- 계정 생성하는 방법은 2가지 명령어로 가능한다.
- 계정생성 HOWTO 1
sp_addlogin 'db_manager','12345a','admindb';
- 계정생성 HOWTO 2
create login db_manager
with password='12345a',
default_database=admindb;
===== 사용자 계정과 데이타베이스 매핑 =====
- 계정 매핑
USE admindb
go
EXEC sp_change_users_login 'Update_One', 'db_manager', 'db_manager'