Sqlserver 2012 for windows 2012ミラーライブラリ構築と読み取り操作
目次
1.テスト検証環境
2、相互信頼の確立
2.1、メインライブラリの操作
2.2、ミラーライブラリ操作
3、メインライブラリデータの同期
3.1、メインライブラリ
3.2、ミラーライブラリ
4、ミラーmap関係を確立する
4.1、ミラーライブラリ
4.2、メインライブラリ
5、スナップショットを使用してデータベースを読む
6、ミラーライブラリの取り外し
サーバーの役割
マシン名
IP
SQL Server Ver(select @@VERSION)
db
WIN-82QUK19NNLH
192.168.68.137
Microsoft SQL Server 2012 (SP1) - 11.0.3128.0 (X64)
mirror db
Winbak
192.168.68.139
Microsoft SQL Server 2012 (SP1) - 11.0.3128.0 (X64)
スナップショット・ライブラリは、作成された時点のデータのみを読み込むことができます.
1.テスト検証環境
2、相互信頼の確立
2.1、メインライブラリの操作
2.2、ミラーライブラリ操作
3、メインライブラリデータの同期
3.1、メインライブラリ
3.2、ミラーライブラリ
4、ミラーmap関係を確立する
4.1、ミラーライブラリ
4.2、メインライブラリ
5、スナップショットを使用してデータベースを読む
6、ミラーライブラリの取り外し
1.テスト検証環境
サーバーの役割
マシン名
IP
SQL Server Ver(select @@VERSION)
db
WIN-82QUK19NNLH
192.168.68.137
Microsoft SQL Server 2012 (SP1) - 11.0.3128.0 (X64)
mirror db
Winbak
192.168.68.139
Microsoft SQL Server 2012 (SP1) - 11.0.3128.0 (X64)
2、相互信頼の確立
2.1、メインライブラリの操作
--
USE master
GO
CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'Pa$$w0rd';
select top 100 is_master_key_encrypted_by_server,* from sys.databases;
-- ,
USE master
GO
CREATE CERTIFICATE Host_A_Cert
WITH Subject = 'Host_P Certificate',
Expiry_Date = '2050-1-1'; --
-- ,
IF NOT EXISTS ( SELECT 1
FROM sys.database_mirroring_endpoints )
BEGIN
CREATE ENDPOINT [DatabaseMirroring] STATE = STARTED AS TCP ( LISTENER_PORT = 5022,
LISTENER_IP = ALL ) FOR DATABASE_MIRRORING ( AUTHENTICATION =
CERTIFICATE Host_A_Cert, ENCRYPTION = REQUIRED Algorithm AES, ROLE =
ALL );
END
--
BACKUP CERTIFICATE Host_A_Cert
TO FILE = 'C:\mirror\Host_A_Cert.cer';
--
CREATE LOGIN Host_B_Login WITH PASSWORD = 'Pa$$w0rd';
-- , Step 5
CREATE USER Host_B_User For Login Host_B_Login;
--
CREATE CERTIFICATE Host_B_Cert
AUTHORIZATION Host_B_User
FROM FILE = 'C:\mirror\Host_S_Cert.cer';
select * from sys.certificates;
-- Step 5
GRANT CONNECT ON ENDPOINT::[DatabaseMirroring] TO [Host_B_Login];
2.2、ミラーライブラリ操作
--
USE master
GO
CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'Pa$$w0rd';
select top 100 is_master_key_encrypted_by_server,* from sys.databases;
-- ,
USE master
GO
CREATE CERTIFICATE Host_S_Cert
WITH Subject = 'Host_S Certificate',
Expiry_Date = '2050-1-1'; --
--
IF NOT EXISTS ( SELECT 1
FROM sys.database_mirroring_endpoints )
BEGIN
CREATE ENDPOINT [DatabaseMirroring] STATE = STARTED AS TCP ( LISTENER_PORT = 5022,
LISTENER_IP = ALL ) FOR DATABASE_MIRRORING ( AUTHENTICATION =
CERTIFICATE Host_S_Cert, ENCRYPTION = REQUIRED Algorithm AES, ROLE =
ALL );
END
-- ,
BACKUP CERTIFICATE Host_A_Cert
TO FILE = 'C:\miroor\Host_S_Cert.cer';
--
CREATE LOGIN Host_A_Login WITH PASSWORD = 'Pa$$w0rd';
-- , Step 5
CREATE USER Host_A_User For Login Host_A_Login;
--
CREATE CERTIFICATE Host_A_Cert
AUTHORIZATION Host_A_User
FROM FILE = 'C:\miroor\Host_A_Cert.cer';
-- Step 5
GRANT CONNECT ON ENDPOINT::[DatabaseMirroring] TO [Host_A_Login];
3、メインライブラリデータの同期
3.1、メインライブラリ
BACKUP DATABASE test TO DISK='c:\bak\db.bak' WITH FORMAT
GO
CREATE TABLE test.dbo.TB_test(ID int)
GO
BACKUP LOG test TO DISK='c:\bak\db_log.bak' WITH FORMAT
GO
3.2、ミラーライブラリ
RESTORE DATABASE test FROM DISK='c:\bak\db.bak' WITH REPLACE,NORECOVERY
GO
-- ( ,
RESTORE LOG test FROM DISK='c:\bak\db_log.bak' WITH NORECOVERY
GO
4、ミラーmap関係を確立する
4.1、ミラーライブラリ
ALTER DATABASE [test]
SET PARTNER = 'TCP://192.168.68.137:5022';
GO
4.2、メインライブラリ
ALTER DATABASE [test]
SET PARTNER = 'TCP://192.168.68.138:5022';
GO
5、スナップショットを使用してデータベースを読む
スナップショット・ライブラリは、作成された時点のデータのみを読み込むことができます.
create database snap_test2
on ( name = test ,filename = 'C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA\test_data_1902.ss')
AS SNAPSHOT OF test;
go
6、ミラーライブラリの取り外し
alter database test set partner off;
restore database test with recovery;