如何使用 T-SQL 更改 Azure SQL 边缘中数据库的恢复模式
发布于
默认情况下,使用 Azure SQL Edge 创建的数据库使用简单恢复模式。这意味着无法对这些数据库执行日志备份。
如果需要对使用 SQL Edge 创建的数据库执行日志备份,则需要将数据库的恢复模式更改为完整或批量记录。
这可以通过带有语句的 T-SQL 来完成。ALTER DATABASE
用于设置恢复模式时的可用选项包括:ALTER DATABASE
SIMPLEFULLBULK_LOGGED
示例
假设我们有一个名为 的数据库。KrankyKranes
我们可以通过查询目录视图来检查它的当前恢复模式:sys.databases
SELECT
name,
recovery_model_desc
FROM sys.databases
WHERE name = 'KrankyKranes';
输出:
+--------------+-----------------------+
| name | recovery_model_desc |
|--------------+-----------------------|
| KrankyKranes | SIMPLE |
+--------------+-----------------------+它当前使用简单恢复模式。
让我们将其更改为完整恢复模式:
USE master;
ALTER DATABASE KrankyKranes
SET RECOVERY FULL;
做。
现在让我们检查结果:
SELECT
name,
recovery_model_desc
FROM sys.databases
WHERE name = 'KrankyKranes';
输出:
+--------------+-----------------------+
| name | recovery_model_desc |
|--------------+-----------------------|
| KrankyKranes | FULL |
+--------------+-----------------------+已成功按指定更改恢复模式。
请注意,您需要对数据库具有权限才能进行此更改。ALTER
重要的下一步
切换到完整或大容量日志恢复模式仅在第一次数据备份后生效。
因此,一旦从简单恢复模式切换到完整或大容量日志恢复模式,就应执行完整或差异数据库备份来启动日志链。
数据库model
默认情况下,在 SQL Edge 中创建的数据库使用简单恢复模式的原因是数据库使用该模式。model
如果发现此问题,则始终可以将数据库的恢复模式更改为 。这样做将导致创建后续数据库以使用完整恢复模式:model``FULL
USE master;
ALTER DATABASE model
SET RECOVERY FULL;