Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Connect Microsoft SQL Servers avec AWS Schema Conversion Tool
Vous pouvez les utiliser AWS SCT pour convertir les schémas, les objets de code de base de données et le code d'application du SQL serveur vers les cibles suivantes :
Amazon RDS pour moi SQL
Édition SQL compatible Amazon Aurora My
Amazon RDS pour Postgrer SQL
Édition compatible avec Amazon Aurora Postgre SQL
Amazon RDS pour SQL serveur
Amazon RDS pour MariaDB
Note
AWS SCT ne prend pas en charge l'utilisation RDS d'Amazon pour le SQL serveur comme source.
Vous pouvez l'utiliser AWS SCT pour créer un rapport d'évaluation pour la migration de schémas, d'objets de code de base de données et de code d'application du SQL serveur vers Babelfish pour Aurora PostgreSQL, comme décrit ci-dessous.
Rubriques
- Privilèges pour Microsoft SQL Server en tant que source
- Utilisation de l'authentification Windows lors de l'utilisation SQL de Microsoft Server comme source
- Connexion au SQL serveur en tant que source
- Conversion SQL du serveur en mon SQL
- Migration du SQL serveur vers SQL Postgre avec AWS Schema Conversion Tool
- Migration de SQL Server vers Amazon RDS for SQL Server avec AWS Schema Conversion Tool
Privilèges pour Microsoft SQL Server en tant que source
Les privilèges requis pour Microsoft SQL Server en tant que source sont les suivants :
-
VIEW DEFINITION
-
VIEW DATABASE STATE
Ce VIEW DEFINITION
privilège permet aux utilisateurs disposant d'un accès public de consulter les définitions des objets. AWS SCT utilise le VIEW DATABASE STATE
privilège pour vérifier les fonctionnalités de l'édition SQL Server Enterprise.
Répétez l'octroi pour chaque base de données dont vous convertissez le schéma.
En outre, accordez les privilèges suivants sur la base de données master
:
-
VIEW SERVER STATE
-
VIEW ANY DEFINITION
AWS SCT utilise le VIEW SERVER STATE
privilège pour collecter les paramètres et la configuration du serveur. Assurez-vous d'accorder le VIEW ANY DEFINITION
privilège d'afficher les points de terminaison.
Pour lire des informations sur Microsoft Analysis Services, exécutez la commande suivante sur la base de données master
.
EXEC master..sp_addsrvrolemember @loginame = N'
<user_name>
', @rolename = N'sysadmin'
Dans l'exemple précédent, remplacez l'
espace réservé par le nom de l'utilisateur auquel vous avez accordé les privilèges précédents.<user_name>
Pour lire des informations sur l'agent SQL serveur, ajoutez votre utilisateur au SQLAgentUser
rôle. Exécutez la commande suivante sur la base de données msdb
.
EXEC sp_addrolemember
<SQLAgentRole>
,<user_name>
;
Dans l'exemple précédent, remplacez l'
espace réservé par le nom du rôle d'agent de SQL serveur. Remplacez ensuite l'<SQLAgentRole>
espace réservé par le nom de l'utilisateur auquel vous avez accordé les privilèges précédents. Pour plus d'informations, consultez la section Ajouter un utilisateur au SQLAgentUser rôle dans le guide de RDS l'utilisateur Amazon.<user_name>
Pour détecter l’expédition de journaux, accordez le privilège SELECT on dbo.log_shipping_primary_databases
sur la base de données msdb
.
Pour utiliser l'approche de notification de la DDL réplication, accordez le RECEIVE ON
privilège sur vos bases de données sources. Dans cet exemple, remplacez l’espace réservé <schema_name>
.<queue_name>
par le nom du schéma de la base de données. Remplacez ensuite l’espace réservé <schema_name>
par le nom d’une table de file d’attente.<queue_name>
Utilisation de l'authentification Windows lors de l'utilisation SQL de Microsoft Server comme source
Si votre application s'exécute sur un intranet Windows, vous pouvez utiliser l'authentification Windows pour accéder à la base de données. L'authentification Windows utilise l'identité Windows actuelle établie sur le thread du système d'exploitation pour accéder à la base de données SQL du serveur. Vous pouvez ensuite associer l'identité Windows à une base de données SQL serveur et à des autorisations. Pour vous connecter au SQL serveur à l'aide de l'authentification Windows, vous devez spécifier l'identité Windows utilisée par votre application. Vous devez également accorder à l'identité Windows l'accès à la base de données SQL du serveur.
SQLLe serveur dispose de deux modes d'accès : le mode d'authentification Windows et le mode mixte. Le mode d'authentification Windows active l'authentification Windows et désactive l'authentification SQL du serveur. Le mode mixte permet à la fois l'authentification Windows et l'authentification SQL serveur. L'authentification Windows est toujours disponible et ne peut pas être désactivée. Pour plus d'informations sur l'authentification Windows, consultez la documentation Microsoft Windows.
L'exemple possible de création d'un utilisateur dans TEST _DB est illustré ci-dessous.
USE [TEST_DB] CREATE USER [TestUser] FOR LOGIN [TestDomain\TestUser] GRANT VIEW DEFINITION TO [TestUser] GRANT VIEW DATABASE STATE TO [TestUser]
Utilisation de l'authentification Windows avec une JDBC connexion
Le JDBC pilote ne prend pas en charge l'authentification Windows lorsqu'il est utilisé sur des systèmes d'exploitation autres que Windows. Les informations d'authentification Windows, telles que le nom d'utilisateur et le mot de passe, ne sont pas spécifiées automatiquement lors de la connexion au SQL serveur à partir de systèmes d'exploitation autres que Windows. Dans de tels cas, les applications doivent plutôt utiliser l'authentification SQL du serveur.
Dans la chaîne de JDBC connexion, le paramètre integratedSecurity
doit être spécifié pour se connecter à l'aide de l'authentification Windows. Le JDBC pilote prend en charge l'authentification Windows intégrée sur les systèmes d'exploitation Windows via le paramètre de chaîne de integratedSecurity
connexion.
Pour utiliser l'authentification intégrée
-
Installez le JDBC pilote.
-
Copiez le
sqljdbc_auth.dll
fichier dans un répertoire situé sur le chemin du système Windows sur l'ordinateur sur lequel le JDBC pilote est installé.Les
sqljdbc_auth.dll
fichiers sont installés à l'emplacement suivant :<répertoire d'installation>\sqljdbc_<version>\<language>\auth\
Lorsque vous essayez d'établir une connexion à la base de données SQL du serveur à l'aide de l'authentification Windows, le message d'erreur suivant peut s'afficher : ce pilote n'est pas configuré pour l'authentification intégrée. Ce problème peut être résolu à l'aide des actions suivantes :
Déclarez deux variables qui pointent vers le chemin d'installation de votre JDBC :
variable name: SQLJDBC_HOME; variable value: D:\lib\JDBC4.1\enu
(où se trouve votre fichier sqljdbc4.jar) ;variable name: SQLJDBC_AUTH_HOME; variable value: D\lib\JDBC4.1\enu\auth\x86
(si vous utilisez un système d'exploitation 32 bits) ouD\lib\JDBC4.1\enu\auth\x64
(si vous utilisez un système d'exploitation 64 bits). C'est ici que sesqljdbc_auth.dll
trouve le vôtre.-
sqljdbc_auth.dll
Copiez dans le dossier où votreJDK/JREest en cours d'exécution. Vous pouvez effectuer la copie vers le dossier lib, dans le dossier Bin, etc. Par exemple, vous pouvez copier le fichier dans le dossier suivant.[JDK_INSTALLED_PATH]\bin; [JDK_INSTALLED_PATH]\jre\bin; [JDK_INSTALLED_PATH]\jre\lib; [JDK_INSTALLED_PATH]\lib;
Assurez-vous que seul le fichier SQLJDBC4 .jar se trouve dans le dossier de votre JDBC bibliothèque. Supprimez tous les autres fichiers sqljdbc*.jar de ce dossier (ou copiez-les dans un autre dossier). Si vous ajoutez le pilote dans le cadre de votre programme, assurez-vous d'ajouter uniquement SQLJDBC4 .jar comme pilote à utiliser.
Copie du fichier sqljdbc_auth.dll dans le dossier contenant votre application.
Note
Si vous utilisez une machine virtuelle Java 32 bits (JVM), utilisez le fichier sqljdbc_auth.dll dans le dossier x86, même si le système d'exploitation est une version x64. Si vous utilisez un processeur 64 bits JVM sur un processeur x64, utilisez le fichier sqljdbc_auth.dll dans le dossier x64.
Lorsque vous vous connectez à une base de données SQL serveur, vous pouvez choisir l'authentification Windows ou l'authentification SQL serveur pour l'option Authentification.
Connexion au SQL serveur en tant que source
Suivez la procédure ci-dessous pour vous connecter à votre base de données source Microsoft SQL Server à l'aide du AWS Schema Conversion Tool.
Pour vous connecter à une base de données source Microsoft SQL Server
-
Dans le AWS Schema Conversion Tool, choisissez Ajouter une source.
-
Choisissez Microsoft SQL Server, puis Next.
La boîte de dialogue Ajouter une source apparaît.
-
Dans Nom de connexion, entrez le nom de votre base de données. AWS SCT affiche ce nom dans l'arborescence du panneau de gauche.
-
Utilisez les informations d'identification de la base de données AWS Secrets Manager ou saisissez-les manuellement :
-
Pour utiliser les informations d'identification de base de données issues de Secrets Manager, suivez les instructions suivantes :
-
Pour AWSSecret, choisissez le nom du secret.
-
Choisissez Populer pour renseigner automatiquement toutes les valeurs dans la boîte de dialogue de connexion à la base de données depuis Secrets Manager.
Pour plus d'informations sur l'utilisation des informations d'identification de base de données depuis Secrets Manager, consultezConfiguration AWS Secrets Manager dans le AWS Schema Conversion Tool.
-
-
Pour saisir manuellement les informations de connexion à la base de données source Microsoft SQL Server, suivez les instructions suivantes :
Paramètre Action Server name Entrez le nom ou l'adresse IP du service de noms de domaine (DNS) de votre serveur de base de données source.
Vous pouvez vous connecter à la base de données de votre SQL serveur source à l'aide d'un protocole d'IPv6adresse. Pour ce faire, assurez-vous d'utiliser des crochets pour saisir l'adresse IP, comme indiqué dans l'exemple suivant.
[2001:db8:ffff:ffff:ffff:ffff:ffff:fffe]
Server port Indiquez le port utilisé pour vous connecter au serveur de la base de données source.
Instance name Entrez le nom de l'instance pour la base de données SQL du serveur. Pour trouver le nom de l'instance, exécutez la requête
SELECT @@servername;
sur la base de données de votre SQL serveur.Authentification Choisissez le type d'authentification dans Authentification Windows et Authentification SQL serveur.
User name et Password Entrez les informations d'identification de la base de données pour vous connecter à votre serveur de base de données source.
AWS SCT utilise le mot de passe pour se connecter à votre base de données source uniquement lorsque vous choisissez de vous connecter à votre base de données dans le cadre d'un projet. Pour éviter d'exposer le mot de passe de votre base de données source, le mot de passe AWS SCT n'est pas stocké par défaut. Si vous fermez votre AWS SCT projet et que vous le rouvrez, vous êtes invité à saisir le mot de passe pour vous connecter à votre base de données source selon vos besoins.
Utiliser SSL Choisissez cette option pour utiliser Secure Sockets Layer (SSL) pour vous connecter à votre base de données. Fournissez les informations supplémentaires suivantes, le cas échéant, dans l'SSLonglet :
-
Certificat de serveur de confiance : sélectionnez cette option pour approuver le certificat de serveur.
-
Trust store : emplacement d'un trust store contenant des certificats. Pour que cet emplacement apparaisse dans la section Paramètres généraux, assurez-vous de l'ajouter.
Enregistrer le mot de passe AWS SCT crée un coffre-fort sécurisé pour stocker les SSL certificats et les mots de passe de base de données. L'activation de cette option vous permet de stocker le mot de passe de la base de données et de vous connecter rapidement à la base de données sans avoir à saisir le mot de passe.
Sql Server Driver Path Entrez le chemin d'accès au pilote à utiliser pour vous connecter à la base de données source. Pour de plus amples informations, veuillez consulter Installation de JDBC pilotes pour AWS Schema Conversion Tool.
Si vous stockez le chemin d'accès au pilote dans les paramètres globaux du projet, il ne s'affiche pas dans la boîte de dialogue de connexion. Pour de plus amples informations, veuillez consulter Stockage des chemins des pilotes dans les paramètres globaux.
Bibliothèque d'authentification Windows Entrez le chemin d'accès au
sqljdbc_auth.dll
fichier. Par défaut, ce fichier est installé à l'emplacement suivant :<installation directory of the JDBC driver>
sqljdbc_<version>
\<language>
\auth\ -
-
-
Choisissez Tester la connexion pour vérifier que AWS SCT vous pouvez vous connecter à votre base de données source.
-
Choisissez Connect pour vous connecter à votre base de données source.