sys.sp_rda_test_connection (Transact-SQL)
S’applique à : SQL Server 2016 (13.x) et versions ultérieures
Teste la connexion de SQL Server au serveur Azure distant et signale des problèmes susceptibles d’empêcher la migration des données.
Syntaxe
EXECUTE sys.sp_rda_test_connection
@database_name = N'db_name'
, @server_address = N'azure_server_fully_qualified_address'
, @azure_username = N'azure_username'
, @azure_password = N'azure_password'
, @credential_name = N'credential_name'
[ ; ]
Arguments
@database_name= N’db_name'
Nom de la base de données SQL Server avec Stretch. Ce paramètre est facultatif.
Important
Stretch Database est déprécié dans SQL Server 2022 (16.x) et Azure SQL Database. Cette fonctionnalité sera supprimée dans une version future de moteur de base de données. Évitez d'utiliser cette fonctionnalité dans de nouveaux travaux de développement, et prévoyez de modifier les applications qui utilisent actuellement cette fonctionnalité.
@server_address= N’azure_server_fully_qualified_address'
Adresse complète du serveur Azure.
Si vous fournissez une valeur pour @database_name, mais que la base de données spécifiée n’est pas activée sur Stretch, vous devez fournir une valeur pour @server_address.
Si vous fournissez une valeur pour @database_name et que la base de données spécifiée est activée sur Stretch, vous n’avez pas besoin de fournir de valeur pour @server_address. Si vous fournissez une valeur pour @server_address, la procédure stockée l’ignore et utilise le serveur Azure existant déjà associé à la base de données Stretch.
@azure_username= N’azure_username'
Nom d’utilisateur du serveur Azure distant.
@azure_password= N’azure_password'
Mot de passe du serveur Azure distant.
@credential_name= N’credential_name'
Au lieu de fournir un nom d’utilisateur et un mot de passe, vous pouvez fournir le nom d’informations d’identification stockées dans la base de données Stretch.
Valeurs des codes de retour
En cas de réussite, sp_rda_test_connection
retourne l’erreur 14855 (STRETCH_MAJOR, STRETCH_CONNECTION_TEST_PROC_SUCCEEDED
) avec gravité EX_INFO
et un code de retour de réussite.
En cas d’échec, sp_rda_test_connection
retourne l’erreur 14856 (STRETCH_MAJOR, STRETCH_CONNECTION_TEST_PROC_FAILED
) avec gravité EX_USER
et un code de retour d’erreur.
Jeu de résultats
Nom de la colonne | Type de données | Description |
---|---|---|
link_state |
int | Une des valeurs suivantes, qui correspondent aux valeurs pour link_state_desc .- 0 - 1 - 2 - 3 4 |
link_state_desc |
varchar(32) | Une des valeurs suivantes, qui correspondent aux valeurs précédentes pour link_state .-SAIN Le serveur SQL Server et le serveur Azure distant est sain. - ERROR_AZURE_FIREWALL Le pare-feu Azure empêche le lien entre SQL Server et le serveur Azure distant. - ERROR_NO_CONNECTION SQL Server ne peut pas établir de connexion au serveur Azure distant. - ERROR_AUTH_FAILURE Une défaillance d’authentification empêche le lien entre SQL Server et le serveur Azure distant. -ERREUR Une erreur qui n’est pas un problème d’authentification, un problème de connectivité ou un problème de pare-feu empêche le lien entre SQL Server et le serveur Azure distant. |
error_number |
int | Nombre de l’erreur. S’il n’y a pas d’erreur, ce champ a la valeur NULL. |
error_message |
nvarchar(1024) | Message d’erreur. S’il n’y a pas d’erreur, ce champ a la valeur NULL. |
autorisations
Requiert les autorisations db_owner.
Exemples
Vérifier la connexion de SQL Server au serveur Azure distant
EXEC sys.sp_rda_test_connection @database_name = N'<Stretch-enabled database>';
GO
Les résultats montrent que SQL Server ne peut pas se connecter au serveur Azure distant.
link_state | link_state_desc | error_number | error_message |
---|---|---|---|
2 | ERROR_NO_CONNECTION | <numéro d’erreur lié à la connexion> | <Message d’erreur lié à la connexion> |
Vérifier le pare-feu Azure
USE <Stretch-enabled database>
GO
EXECUTE sys.sp_rda_test_connection;
GO
Les résultats montrent que le pare-feu Azure empêche le lien entre SQL Server et le serveur Azure distant.
link_state | link_state_desc | error_number | error_message |
---|---|---|---|
1 | ERROR_AZURE_FIREWALL | <numéro d’erreur lié au pare-feu> | <Message d’erreur lié au pare-feu> |
Vérifier les informations d’identification d’authentification
USE <Stretch-enabled database>
GO
EXECUTE sys.sp_rda_test_connection;
GO
Les résultats montrent qu’une défaillance d’authentification empêche le lien entre SQL Server et le serveur Azure distant.
link_state | link_state_desc | error_number | error_message |
---|---|---|---|
3 | ERROR_AUTH_FAILURE | <numéro d’erreur lié à l’authentification> | <Message d’erreur lié à l’authentification> |
Vérifier l’état du serveur Azure distant
USE <SQL Server database>
GO
EXECUTE sys.sp_rda_test_connection
@server_address = N'<server name>.database.windows.net',
@azure_username = N'<user name>',
@azure_password = N'<password>';
GO
Les résultats montrent que la connexion est saine et que vous pouvez activer Stretch Database pour la base de données spécifiée.
link_state | link_state_desc | error_number | error_message |
---|---|---|---|
0 | HEALTHY | NULL | NULL |