共用方式為


針對 Azure Synapse Analytics 中的專用 SQL 集區 (先前稱為 SQL DW) 進行疑難解答

本文列出 Azure Synapse Analytics 中專用 SQL 集區(先前稱為 SQL DW)中的常見疑難解答問題。

連線

問題 解決方案
使用者 '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 資料庫 master 資料庫上建立登入,但未在特定 SQL 資料庫中建立登入時,就會發生此錯誤。 如果您遇到此錯誤,請參閱 安全性概觀 一文。 本文說明如何在資料庫中建立登入和使用者 master ,以及如何在 SQL 資料庫中建立使用者。
遭到防火牆封鎖 專用 SQL 集區(先前稱為 SQL DW)會受到防火牆的保護,以確保只有已知的 IP 位址可以存取資料庫。 防火牆預設是安全的,這表示您必須先明確啟用和IP位址或位址範圍,才能連線。 若要設定防火牆以進行存取,請遵循布建指示中的設定用戶端IP的伺服器防火牆存取中的步驟。
無法與工具或驅動程式連線 專用 SQL 集區(先前稱為 SQL DW)建議使用 SQL Server Management Studio (SSMS)適用於 Visual Studio 的 SSDT 或 sqlcmd 來查詢您的數據。 如需驅動程式和連線至 Azure Synapse 的詳細資訊,請參閱適用於 Azure Synapse 的驅動程式和 連線 至 Azure Synapse 文章。

工具

問題 解決方案
Visual Studio 物件總管遺漏 Microsoft Entra 使用者 這是已知的問題。 解決方法是在 sys.database_principals 中檢視使用者。 請參閱 向 Azure Synapse 驗證,以深入瞭解如何搭配專用 SQL 集區使用 Microsoft Entra ID(先前稱為 SQL DW)。
使用腳本精靈或透過 SSMS 連線的手動腳本速度很慢、沒有回應或產生錯誤 確定已在資料庫中建立 master 使用者。 在腳本選項中,也請確定引擎版本設定為 「Microsoft Azure Synapse Analytics Edition」,且引擎類型為 「Microsoft Azure SQL 資料庫」。
在 SSMS 中產生文稿失敗 如果 [產生相依物件的腳本] 選項設定為 “True”,則為專用 SQL 集區產生腳本(先前稱為 SQL DW)的腳本會失敗。因應措施是,用戶必須手動移至 [工具-> 選項 -> SQL Server 物件總管 -> 產生相依選項的腳本,並將 設定為 false

資料內嵌和準備

問題 解決方案
使用 CETAS 匯出空字串會導致 Parquet 和 ORC 檔案中的 NULL 值。 請注意,如果您要從具有NOT NULL 條件約束的數據行匯出空字串,CETAS 將會導致拒絕的記錄,而且匯出可能會失敗。 拿掉 CETAS SELECT 語句中的空字串或違規數據行。
不支援將超出 0-127 範圍的值載入 Parquet 和 ORC 檔案格式的 tinyint 資料行。 指定目標數據行的較大數據類型。
訊息105208,層級 16,狀態 1,第 1 行 COPY 語句失敗,在驗證選項 'FROM' 的值時發生下列錯誤: '105200;COPY 語句失敗,因為選項 'FROM' 的值無效。 目前,使用 COPY 命令將資料擷取至使用新 DNS 分割功能的 Azure 儲存體 帳戶,會導致錯誤。 DNS 分割區功能可讓客戶為每個訂用帳戶建立最多 5000 個記憶體帳戶。 若要解決,請在未使用新 Azure 儲存體 DNS 磁碟分區功能的訂用帳戶中布建記憶體帳戶(目前為公開預覽版)。

效能

問題 解決方案
查詢效能疑難解答 如果您嘗試針對特定查詢進行疑難解答,請從瞭解如何監視查詢開始
tempdb 空間問題 監視 TempDB 空間使用量。 空間不足 tempdb 的常見原因是:
- 設定給查詢的資源不足,導致資料溢出至 tempdb。 請參閱 工作負載管理
- 統計數據遺失或過期,導致數據過多移動。 如需如何建立統計數據的詳細資訊,請參閱維護數據表統計數據
- tempdb 每個服務層級會配置空間。 將專用 SQL 集區 (先前稱為 SQL DW) 調整為較高的 DWU 設定會配置更多 tempdb 空間。
查詢效能不佳和計劃通常是遺漏統計數據的結果 效能不佳最常見的原因是數據表上缺少統計數據。 如需如何建立統計數據及其對效能至關重要的詳細資訊,請參閱 維護數據表統計數據
低並行/已排入佇列的查詢 瞭解 工作負載管理 很重要,以便瞭解如何平衡記憶體配置與並行。
如何實作最佳做法 學習改善查詢效能的最佳方式是 專用 SQL 集區(先前稱為 SQL DW)最佳做法 一文。
如何使用調整來改善效能 有時候改善效能的解決方案,就是藉由調整 專用 SQL 集區(先前稱為 SQL DW)來增加查詢的計算能力。
由於索引品質不佳,查詢效能不佳 有時候,查詢可能會因為數據行存放區索引品質不佳而變慢。 如需詳細資訊,請參閱 重建索引以改善區段品質

系統管理

問題 解決方案
Msg 40847:無法執行作業,因為伺服器會超過允許的資料庫交易單位配額 45000。 請減少 您嘗試建立的資料庫 DWU ,或 要求增加配額。
調查空間使用率 請參閱 數據表大小 以了解系統的空間使用率。
管理數據表的說明 如需管理數據表的說明,請參閱數據表概觀一文。 如需詳細資訊,請參閱數據表數據類型散發數據表、編製數據表的索引、分割數據表維護數據表統計數據和臨時表
透明數據加密 (TDE) 進度列不會在 Azure 入口網站 中更新 您可以透過 PowerShell檢視 TDE 的狀態。

與 SQL 資料庫的差異

問題 解決方案
不支援的 SQL 資料庫 功能 請參閱 不支持的數據表功能
不支援的 SQL 資料庫 數據類型 請參閱 不支持的數據類型
預存程式限制 請參閱 預存程式限制 ,以瞭解預存程式的一些限制。
UDF 不支援 SELECT 語句 這是我們 UDF 的目前限制。 如需我們支持的語法,請參閱 CREATE FUNCTION

下一步

如需尋找問題解決方案的更多協助,以下是您可以嘗試的其他一些資源。