1 证书部分;principle 和 secondary 端执行同样操作,更改相应name即可

USE master;

--1.1 Create the database Master Key, if needed.

CREATE MASTER KEY ENCRYPTION BY PASSWORD = '<Strong_Password_#2>';

GO

-- 1.2 Make a certificate on HOST_B server instance.

CREATE CERTIFICATE HOST_B_cert

WITH SUBJECT = 'HOST_B certificate for database mirroring',

EXPIRY_DATE = '11/30/2014';

GO

--1.3 Create a mirroring endpoint for the server instance on HOST_B.

CREATE ENDPOINT Endpoint_Mirroring

STATE = STARTED

AS TCP (

LISTENER_PORT=7024

, LISTENER_IP = ALL

)

FOR DATABASE_MIRRORING (

AUTHENTICATION = CERTIFICATE HOST_B_cert

, ENCRYPTION = REQUIRED ALGORITHM AES

, ROLE = ALL

);

GO

--1.4 Backup HOST_B certificate.

BACKUP CERTIFICATE HOST_B_cert TO FILE = 'C:\HOST_B_cert.cer';

GO

--1.5 Using any secure copy method, copy C:\HOST_B_cert.cer to HOST_A.

2 SQL中创建用户;principle 和 secondary 端执行同样操作,更改相应name即可

USE master;

--2.1 On HOST_B, create a login for HOST_A.

CREATE LOGIN HOST_A_login WITH PASSWORD = '1qaz2wsxE';

GO

--2.2 Create a user, HOST_A_user, for that login.

CREATE USER HOST_A_user FOR LOGIN HOST_A_login

GO

--2.3 Obtain HOST_A certificate. Associate this certificate with the user, HOST_A_user.

CREATE CERTIFICATE HOST_A_cert

AUTHORIZATION HOST_A_user

FROM FILE = 'C:\HOST_A_cert.cer';

GO

--2.4 Grant CONNECT permission for the server instance on HOST_A.

GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO HOST_A_login

GO

3 备份还原数据

在Host-A 机器上

--3.1 backup database

BACKUP DATABASE suzytest

TO DISK = 'C:\suzytest.bak'

WITH FORMAT

GO

--3.2 backup log

BACKUP LOG suzytest

TO DISK = 'C:\suzytest_log.bak'

GO

在 Host-B机器上

--3.3 restore database

RESTORE DATABASE suzytest

FROM DISK = 'C:\suzytest_log.bak'

WITH NORECOVERY

GO

--3.4 restore log

RESTORE log suzytest

FROM DISK = 'C:\suzytest_log.bak'

WITH FILE=1,NORECOVERY

GO

4 建立mirroing关系

--4.1 change the endpoint port(此处可省略,用上面的port7024)

Alter ENDPOINT endpoint_mirroring

STATE = STARTED

AS TCP ( LISTENER_PORT = 7022 )

FOR DATABASE_MIRRORING (ROLE=PARTNER);

GO

--4.2 On the mirror server instance(Host-B), set the server instance on Host-A as the partner (making it the initial principal server):

USE master;

GO

ALTER DATABASE suzytest

SET PARTNER =

'TCP://servername.silverstone.org:7022'

GO

--4.3 On the principal server instance, set the server instance on PARTNERHOST5 as the partner (making it the initial mirror server):

USE master;

GO

ALTER DATABASE  suzytest

SET PARTNER = 'TCP://servername.silverstone.org:7022'

GO

5 删除mirroring 关系

为任一镜像伙伴连接到数据库引擎。

在标准菜单栏上,单击“新建查询”。

发出以下 Transact-SQL 语句:

ALTER DATABASE database_name SET PARTNER OFF

其中,database_name 是要删除其会话的镜像数据库。

T-SQL 语句创建Database的SQL mirroring关系的更多相关文章

  1. SQL语句创建数据库,SQL语句删除数据库,SQL语句创建表,SQL语句删除表,SQL语句添加约束,SQL语句删除约束

    创建数据库: CREATE DATABASE Test --要创建的数据库名称 ON PRIMARY ( --数据库文件的具体描述 NAME='Test_data', --主数据文件的逻辑名称 FIL ...

  2. 2-05使用SQL语句创建数据库2

    使用SQL语句创建多个数据文件和日志文件: USE master--指向当前使用的数据库 GO--批处理的标志 CREATE DATABASE E_Market--创建E_market数据库 ON P ...

  3. 使用sql语句创建修改SQL Server标识列(即自动增长列)

    一.标识列的定义以及特点SQL Server中的标识列又称标识符列,习惯上又叫自增列.该种列具有以下三种特点:1.列的数据类型为不带小数的数值类型2.在进行插入(Insert)操作时,该列的值是由系统 ...

  4. 5-04用Sql语句创建表

    用Sql语句创建表的基本语法: USE E_Market--指向当前所操作的数据库 GO CREATE TABLE CommoditySort--创建表的名字 { sortID int IDENTIT ...

  5. (转载)用SQL语句创建Access表

    <来源网址:http://www.delphifans.com/infoview/Article_220.html>用SQL语句创建Access表 很久以前弄的,用了一天的时间,没有什么技 ...

  6. 用SQL语句创建和删除Access数据库中的表;添加列和删除列

    用SQL语句创建和删除Access数据库中的表;添加列和删除列 Posted on 2009-08-11 13:42 yunbo 阅读(1240) 评论(0) 编辑 收藏 用SQL语句创建和删除Acc ...

  7. SQL Server 创建唯一约束sql语句

    SQL Server 创建唯一约束sql语句   语句示例:   在创建表是时同时创建, 创建id,name,sex三个字段的唯一索引 create table t1( id int primary ...

  8. 使用sql语句创建和删除约束示例代码

    使用sql语句创建和删除约束  约束类型 主键约束(Primary Key constraint) --:要求主键列数据唯一,并且不允许为空.  唯一约束(Unique constraint) --: ...

  9. sql server 2008 数据库管理系统使用SQL语句创建登录用户步骤详解

    介绍了sql server 2008 数据库管理系统使用SQL语句创建登录用户步骤详解 --服务器角色: --固定服务器角色具有一组固定的权限,并且适用于整个服务器范围. 它们专门用于管理 SQL S ...

随机推荐

  1. Scala underscore的用途

    _ 的用途 // import all import scala.io._ // import all, but hide Codec import scala.io.{Codec => _, ...

  2. MyKTV项目总结

    今天和大伙分享一下我的KTV系统,我想大家都有自己独特的魅力,都有自己的风采,都有自己骄傲的一部分. 在这里我就抛砖引玉,聊聊我的KTV项目,希望大家能给出自己的建议.. 首先,我们先了解一下:当我们 ...

  3. Linux chmod命令详解

    Linux chmod命令详解 chmod----改变一个或多个文件的存取模式(mode)   chmod [options] mode files   只能文件属主或特权用户才能使用该功能来改变文件 ...

  4. [程序人生]前途无"亮‘’的大学

    转眼之间就到大四了,今天晚上很迷茫,很纠结,想了好多,好多,真的,长大之后,自从第一次失恋之后,第一次会想到这么的多.     嗯,先自我介绍哈吧,我是从云南的大山里走出来的孩子,什么样的大山,就是到 ...

  5. 关于ArcGIS10.0中的栅格计算中的函数

    版本升级确实很重要,在ArcGIS10.1中计算成功的,在10.0中出了问题. 问题 在进行栅格计算时,计算公式很简单,包括两个Ln函数: "-22.73 + 11.1 * Ln(5) + ...

  6. Microsoft Dynamics CRM 前瑞开发

    做CRM开发最大的感受就是其前瑞开发过程中,调试起来比较麻烦,需要做一些断点还要配制一些浏览器设置,对新手来说比较困难.还有就是对REST调试,经常为了调试一个正确的结果而花费大量的时间.现在推荐一个 ...

  7. SharePoint 2013 内容部署功能简介

    在之前的项目中,当客户有新的需求的时候,我们通常在测试环境上开发或者实施,然后手动在生产环境再弄一次.当发现内容部署这个东西,才知道这样是多么不合理的.我们可以创建两个网站集,一个用来修改,然后通过计 ...

  8. Centos 7: 打开Samba防火墙端口

    firewall-cmd --permanent --add-port=137/tcp firewall-cmd --permanent --add-port=138/tcp firewall-cmd ...

  9. CocoaPod出现-bash: pod: command not found 解决办法

    从过年来到公司  就不用自己电脑了    之前一直自己带电脑   昨天随便建了一个demo   使用cocoapods  发现     -bash: pod: command not found 刚开 ...

  10. SVN版本更新后,upData工程之后,Xcode 工程文件打不开解决办法

    svn更新代码后,打开xcode工程文件,会出现  xxx..xcodeproj  cannot be opened becausethe project file cannot be parsed. ...