📅  最后修改于: 2020-11-20 05:04:48             🧑  作者: Mango
高可用性(HA)是一种解决方案\流程\技术,可在计划内或计划外中断下使应用程序\数据库24×7全天候可用。
在MS SQL Server中,主要有五个选项可以实现\设置数据库的高可用性解决方案。
源数据将通过复制代理(作业)复制到目标。对象级技术。
源数据将通过事务日志备份作业复制到目标。数据库级技术。
借助镜像端点和端口号,主要数据将通过网络事务复制到辅助数据。数据库级技术。
数据将存储在共享位置,该位置将根据服务器的可用性由主服务器和辅助服务器使用。实例级技术。共享存储需要Windows群集设置。
主要数据将通过网络事务复制到辅助数据。数据库级技术组。 Windows群集安装程序是必需的,没有共享存储。
除了群集,AlwaysON可用性组和复制外,以下是配置HA技术(镜像和日志传送)的步骤。
步骤1-对源数据库进行一个完整备份和一个T-log备份。
要将“ TESTINSTANCE”中的数据库“ TestDB”配置为主服务器,将“ DEVINSTANCE”作为辅助SQL Server配置镜像\日志传送,请编写以下查询以在源(TESTINSTANCE)服务器上进行完整和T日志备份。
连接到“ TESTINSTANCE” SQL Server并打开新查询并编写以下代码,然后执行以下屏幕截图所示的代码。
Backup database TestDB to disk = 'D:\testdb_full.bak'
GO
Backup log TestDB to disk = 'D:\testdb_log.trn'
步骤2-将备份文件复制到目标服务器。
在这种情况下,我们仅安装了一个物理服务器和两个SQL Server实例,因此无需复制,但是如果两个SQL Server实例位于不同的物理服务器中,则需要将以下两个文件复制到该物理服务器的任何位置。安装了“ DEVINSTANCE”实例的辅助服务器。
步骤3-使用“ norecovery”选项在目标服务器中使用备份文件还原数据库。
连接到“ DEVINSTANCE” SQL Server并打开“新建查询”。编写以下代码来还原名称为“ TestDB”的数据库,该名称与用于数据库镜像的主数据库(“ TestDB”)的名称相同。但是,我们可以为日志传送配置提供其他名称。在这种情况下,让我们使用“ TestDB”数据库名称。对两个(完整和t-log备份文件)还原使用’norecovery’选项。
Restore database TestDB from disk = 'D:\TestDB_full.bak'
with move 'TestDB' to 'D:\DATA\TestDB_DR.mdf',
move 'TestDB_log' to 'D:\DATA\TestDB_log_DR.ldf',
norecovery
GO
Restore database TestDB from disk = 'D:\TestDB_log.trn' with norecovery
刷新“ DEVINSTANCE”服务器中的数据库文件夹,以查看具有还原状态的已还原数据库“ TestDB”,如以下快照所示。
步骤4-根据您的要求配置HA(日志传送,镜像),如以下快照所示。
右键单击主要的“ TESTINSTANCE” SQL Server的“ TestDB”数据库,然后单击“属性”。将出现以下屏幕。
步骤5-根据您的要求,选择名为“ Mirroring”或“ Transaction Log Shipping”的选项,该选项位于上图所示的红色框中,并按照系统本身的向导步骤完成配置。