配置 Azure SQL 数据库
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
以下步骤介绍了如何配置 Azure SQL 数据库以与 Datastream 搭配使用。
如需配置 Azure SQL 数据库,请执行以下操作:
为源 Azure SQL 数据库启用变更数据捕获 (CDC)。为此,
使用 Azure Data Studio 或 SQL Server Management Studio 连接到数据库
然后运行以下命令:
EXEC sys.sp_cdc_enable_db;
GO
在需要捕获更改的表上启用 CDC:
EXEC sys.sp_cdc_enable_table
@source_schema = N'SCHEMA_NAME',
@source_name = N'TABLE_NAME',
@role_name = NULL
GO
替换以下内容:
SCHEMA_NAME
:表所属的架构的名称
TABLE_NAME
:要为其启用 CDC 的表的名称
启动 SQL Server Agent 并确保其始终运行。如果 SQL Server 代理长时间处于停机状态,日志可能会被截断,导致 Datastream 未读取的更改数据永久丢失。
如需了解如何运行 SQL Server 代理,请参阅
启动、停止或重启 SQL Server Agent 实例。
启用快照隔离。
从 SQL Server 数据库回填数据时,请务必确保快照一致。如果您不应用本部分中所述的设置,在回填过程中对数据库所做的更改可能会导致重复或错误的结果,尤其是对于没有主键的表。
启用快照隔离后,系统会在回填流程开始时创建数据库的临时视图。这样可以确保正在复制的数据保持一致
即使其他用户同时更改实时表格也是如此。
启用快照隔离功能可能会对性能产生轻微影响,但对于可靠的数据提取至关重要。
如需启用快照隔离,请执行以下操作:
- 使用 SQL Server 客户端连接到您的数据库。
- 运行以下命令:
ALTER DATABASE DATABASE_NAME SET ALLOW_SNAPSHOT_ISOLATION ON;
将 DATABASE_NAME 替换为数据库的名称。
创建 Datastream 用户:
连接到 master
数据库并创建登录:
USE master;
CREATE LOGIN YOUR_LOGIN WITH PASSWORD = 'PASSWORD';
连接到源数据库并为您的登录账号创建用户:
USE DATABASE_NAME
CREATE USER USER_NAME FOR LOGIN YOUR_LOGIN;
向用户分配 db_owner
和 db_denydatawriter
角色:
EXEC sp_addrolemember 'db_owner', 'USER_NAME';
EXEC sp_addrolemember 'db_denydatawriter', 'USER_NAME';
后续步骤
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2024-10-08。
[{
"type": "thumb-down",
"id": "hardToUnderstand",
"label":"Hard to understand"
},{
"type": "thumb-down",
"id": "incorrectInformationOrSampleCode",
"label":"Incorrect information or sample code"
},{
"type": "thumb-down",
"id": "missingTheInformationSamplesINeed",
"label":"Missing the information/samples I need"
},{
"type": "thumb-down",
"id": "translationIssue",
"label":"翻译问题"
},{
"type": "thumb-down",
"id": "otherDown",
"label":"其他"
}]
[{
"type": "thumb-up",
"id": "easyToUnderstand",
"label":"易于理解"
},{
"type": "thumb-up",
"id": "solvedMyProblem",
"label":"解决了我的问题"
},{
"type": "thumb-up",
"id": "otherUp",
"label":"其他"
}]
{"lastModified": "\u6700\u540e\u66f4\u65b0\u65f6\u95f4 (UTC)\uff1a2024-10-08\u3002"}
[[["易于理解","easyToUnderstand","thumb-up"],["解决了我的问题","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["翻译问题","translationIssue","thumb-down"],["其他","otherDown","thumb-down"]],["最后更新时间 (UTC):2024-10-08。"]]