Résoudre les problèmes des pools SQL dédiés (anciennement SQL DW) dans Azure Synapse Analytics
Article
Cet article répertorie les problèmes courants liés au pool SQL dédié (anciennement SQL DW) dans Azure Synapse Analytics.
Se connecter
Problème
Résolution
Échec de connexion pour l’utilisateur 'NT AUTHORITY\ANONYMOUS LOGON'. (Microsoft SQL Server, erreur : 18456)
Cette erreur se produit quand un utilisateur Microsoft Entra tente de se connecter à la base de données master, alors qu’il n’est pas dans master. Pour corriger ce problème, spécifiez lors de la connexion le pool SQL dédié (anciennement SQL DW) auquel vous souhaitez vous connecter ou ajoutez l’utilisateur à la base de données master. Pour plus d’informations, consultez Vue d’ensemble de la sécurité.
Le serveur principal « MyUserName » n’est pas en mesure d’accéder à la base de données master dans le contexte de sécurité actuel. La base de données utilisateur par défaut ne peut pas être ouverte. Échec de la connexion. Échec de la connexion pour l'utilisateur 'MyUserName'. (Microsoft SQL Server, erreur : 916)
Cette erreur se produit quand un utilisateur Microsoft Entra tente de se connecter à la base de données master, alors qu’il n’est pas dans master. Pour corriger ce problème, spécifiez lors de la connexion le pool SQL dédié (anciennement SQL DW) auquel vous souhaitez vous connecter ou ajoutez l’utilisateur à la base de données master. Pour plus d’informations, consultez Vue d’ensemble de la sécurité.
Erreur CTAIP
Cette erreur peut se produire quand un identifiant de connexion a été créé sur la base de données master SQL Database, mais pas dans la base de données SQL spécifique. Si vous rencontrez cette erreur, consultez l’article Vue d’ensemble de la sécurité . Cet article explique comment créer un identifiant de connexion et un utilisateur dans la base de données master, puis comment créer un utilisateur dans une base de données SQL.
Bloqué par le pare-feu
Les pools SQL dédiés (anciennement SQL DW) sont protégés par des pare-feu pour que seules les adresses IP connues aient accès à une base de données. Les pare-feu sont sécurisés par défaut, ce qui signifie que vous devez activer explicitement une adresse IP ou une plage d’adresses avant de vous connecter. Pour configurer votre pare-feu pour l’accès, suivez les étapes décrites dans la section Configuration de l’accès au pare-feu du serveur pour l’adresse IP de votre client dans les Instructions d’approvisionnement.
L’explorateur d’objets Visual Studio manque aux utilisateurs Microsoft Entra
Il s'agit d'un problème connu. Comme solution de contournement, vous pouvez afficher les utilisateurs dans sys.database_principals. Pour plus d’informations sur l’utilisation de Microsoft Entra ID avec le pool SQL dédié (anciennement SQL DW), consultez Authentification auprès d’Azure Synapse.
Les scripts manuels, l’utilisation de l’Assistant Création de scripts ou la connexion via SSMS sont lents, ne répondent pas ou produisent des erreurs
Vérifiez que les utilisateurs ont été créés dans la base de données master. Dans les options de script, vérifiez aussi que l’édition du moteur est définie en tant que « Édition Microsoft Azure Synapse Analytics » et que le type de moteur est « Microsoft Azure SQL Database ».
La génération de scripts échoue dans SSMS
la génération d’un script pour le pool de SQL dédié (anciennement SQL DW) échoue si l’option « générer un script pour les objets dépendants » est définie sur « True ». en guise de solution de contournement, les utilisateurs doivent accéder manuellement à Outils -> Options ->SQL Server l’explorateur d’objets -> Générer un script pour les options dépendantes et définir sur false
Ingestion et préparation des données
Problème
Résolution
L’exportation de chaînes vides à l’aide de CETAS donnera des valeurs NULL dans les fichiers Parquet et ORC. Si vous exportez des chaînes vides à partir de colonnes avec des contraintes NOT NULL, CETAS entraîne le rejet d’enregistrements, et l’exportation risque d’échouer.
Supprimez les chaînes vides ou la colonne incriminée dans l’instruction SELECT de votre CETAS.
Le chargement d’une valeur en dehors de la plage 0-127 dans une colonne tinyint pour le format de fichier ORC et Parquet n’est pas pris en charge.
Spécifiez un plus grand type de données pour la colonne cible.
Msg 105208, Niveau 16, État 1, Ligne 1 L’instruction COPY a échoué avec l’erreur suivante lors de la validation de la valeur de l’option 'FROM' : « 105200 ; L’instruction COPY a échoué car la valeur de l’option 'FROM' n’est pas valide. »
Actuellement, l’ingestion de données à l’aide de la commande COPY dans un compte de stockage Azure qui utilise la nouvelle fonctionnalité de partitionnement DNS entraîne une erreur. La fonctionnalité de partition DNS permet aux clients de créer jusqu’à 5 000 comptes de stockage par abonnement. Pour résoudre ce problème, approvisionnez un compte de stockage dans un abonnement qui n’utilise pas la nouvelle fonctionnalité de partition DNS de Stockage Azure (actuellement en préversion publique).
Performances
Problème
Résolution
Résolution des problèmes de performances des requêtes
Si vous tentez de dépanner une requête spécifique, commencez avec l’article relatif à la surveillance de vos requêtes.
Des performances des requêtes et des plans médiocres sont souvent le résultat de statistiques manquantes
La cause la plus courante de la médiocrité des performances est le manque de statistiques concernant vos tables. Consultez la sectionMaintenance des statistiques de table pour plus d’informations sur la création de statistiques et les raisons pour lesquelles elles sont essentielles à vos performances.
Concurrence faible / requêtes en file d’attente
Comprendre la gestion des charges de travail est important pour comprendre comment équilibrer l’allocation de mémoire avec l’accès concurrentiel.
Msg 40847 : Impossible d’effectuer l’opération car le serveur risque de dépasser le quota d’unité de transaction de base de données autorisé de 45 000.
Les fonctions définies par l’utilisateur ne prennent pas en charge les instructions SELECT
Il s’agit d’une limitation actuelle de nos fonctions définies par l’utilisateur. Consultez CREATE FUNCTION pour connaître la syntaxe que nous prenons en charge.
Étapes suivantes
Pour obtenir une aide supplémentaire lors de la recherche d’une solution à votre problème, voici d’autres ressources auxquelles vous pouvez recourir.