本文列出了专用 SQL 池(前 SQL DW)Azure Synapse Analytics中的常见故障排除问题。
连接
| 問题 |
解决方案 |
| 用户 “NT AUTHORITY\ANONYMOUS LOGON” 登录失败。 (Microsoft SQL Server,错误:18456) |
当 Microsoft Entra 用户尝试连接到 master 数据库但在 master 中没有相应用户时,将发生此错误。 要更正此问题,请在连接时指定要连接到的专用 SQL 池(以前称为 SQL DW),或将用户添加到 master 数据库。 有关详细信息,请参阅安全概述。 |
服务器主体“MyUserName”无法在当前的安全性上下文下访问数据库 master。 无法打开用户默认数据库。 登录失败。 用户“MyUserName”的登录失败。 (Microsoft SQL Server,错误: 916) |
当 Microsoft Entra 用户尝试连接到 master 数据库但在 master 中没有相应用户时,将发生此错误。 要更正此问题,请在连接时指定要连接到的专用 SQL 池(以前称为 SQL DW),或将用户添加到 master 数据库。 有关详细信息,请参阅安全概述。 |
| CTAIP 错误 |
当在 SQL Database master 数据库中创建了登录名,但未在特定的 SQL 数据库中创建时,可能会出现此错误。 如果遇到此错误,请参阅安全性概述一文。 本文介绍如何在 master 中创建登录名和用户,以及如何在 SQL 数据库中创建用户。 |
| 被防火墙阻止 |
专用 SQL 池(以前称为 SQL DW)由防火墙提供保护,确保只有已知 IP 地址可访问数据库。 默认情况下,防火墙是安全的,这意味着,您必须显式地启用某个 IP 地址或地址段,然后才能进行连接。 若要配置防火墙的访问权限,请遵循预配说明中的为客户端 IP 配置服务器防火墙访问权限中所述的步骤。 |
| 无法使用工具或驱动程序进行连接 |
专用 SQL 池(前 SQL DW)建议使用 SQL Server Management Studio (SSMS)、SSSDT for Visual Studio 或 sqlcmd 查询数据。 有关驱动程序和连接到Azure Synapse的详细信息,请参阅 Drivers for Azure Synapse 和 Connect 到 Azure Synapse 文章。 |
| 問题 |
解决方案 |
| Visual Studio对象资源管理器缺少Microsoft Entra用户 |
这是已知问题。 解决方法是在 sys.database_principals 中查看这些用户。 请参阅 在 Azure Synapse 中进行身份验证了解有关 Microsoft Entra ID 与专用 SQL 池(以前称为 SQL DW)的结合使用的详细信息。 |
| 使用脚本向导进行手动脚本编写或通过 SSMS 进行连接时出现缓慢、未响应或产生错误的情况 |
请确保已在 master 数据库中创建用户。 在脚本选项中,还要确保引擎版本设置为“Microsoft Azure Synapse Analytics Edition”,并且引擎类型为“Microsoft Azure SQL Database”。 |
| 在 SSMS 中生成脚本失败 |
如果选项“为依赖对象生成脚本”选项设置为“True”,则为专用 SQL 池(以前为 SQL DW)生成脚本失败。作为一种解决方法, 用户必须手动转到 Tools -> 选项 ->SQL Server Object Explorer -> 为依赖选项生成脚本并将其设置为 false |
数据引入和准备
| 問题 |
解决方案 |
| 使用 CETAS 导出空字符串会导致 Parquet 和 ORC 文件中出现 NULL 值。 请注意,如果从具有 NOT NULL 约束的列中导出空字符串,CETAS 会导致记录被拒绝,并且导出可能会失败。 |
删除 CETAS 的 SELECT 语句中的空字符串或有问题的列。 |
| 不支持将 0-127 范围外的值加载到 Parquet 和 ORC 文件格式的 tinyint 列中。 |
为目标列指定较大的数据类型。 |
| Msg 105208,级别 16,状态 1,第 1 行 COPY 语句失败,在验证选项“FROM”的值时出现以下错误:“105200;COPY 语句失败,因为选项‘FROM’的值无效”。 |
目前,使用 COPY 命令将数据引入到使用新 DNS 分区功能的Azure Storage帐户中会导致错误。 DNS 分区功能使客户能够为每个订阅创建最多 5000 个存储帐户。 若要解决此问题,请在订阅中预配存储帐户,该订阅不使用新的 Azure Storage DNS 分区功能(当前为公共预览版)。 |
系统管理
与 SQL 数据库的差异