Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

SQL Server 2000 - Serveur lié

J'ai dû faire quelques choses pour que ça marche. Utilisation également d'un serveur SQL Win2K et importation de données depuis MySql.

Une chose que nous avons faite a été d'installer le 3.51.22 version du pilote ODBC MySql (mysql-connector-odbc-3.51.22-win32.msi).

Ensuite, l'article suivant a été très utile :http://www.sqlservercentral.com/Forums/Topic340912-146-1.aspx

L'essentiel était de désactiver les transactions ainsi que de se référer à la DSN lors de la création d'un serveur lié. Pour plus de commodité, je vais copier et coller les instructions de l'article SQLServerCentral dans cet article ci-dessous :

Création d'un serveur lié dans SSMS pour une base de données MySQL

  1. Téléchargez le pilote MySQL ODBC depuis mysql.com
  2. Installez le pilote MySQL ODBC sur le serveur où réside SQL Server - Double-cliquez sur le fichier Windows Installer et suivez les instructions.

  3. Créez un DSN à l'aide du pilote MySQL ODBC Démarrer-> Paramètres -> Panneau de configuration -> Outils d'administration -> Sources de données (ODBC) -Cliquez sur l'onglet DSN système -Cliquez sur Ajouter -Sélectionnez le pilote MySQL ODBC-Cliquez sur Terminer Dans l'onglet Connexion :- Tapez un nom descriptif pour votre DSN. -Tapez le nom du serveur ou l'adresse IP dans la zone de texte du serveur.-Tapez le nom d'utilisateur nécessaire pour se connecter à la base de données MySQL dans la zone de texte de l'utilisateur. -Tapez le mot de passe nécessaire pour vous connecter à la base de données MySQL dans la zone de texte du mot de passe. -Sélectionnez la base de données dans laquelle vous souhaitez commencer. Dans l'onglet Avancé :Sous Indicateurs 1 :-Cochez Ne pas optimiser la largeur de la colonne. -Cochez Renvoyer les lignes correspondantes -Cochez Autoriser les résultats volumineux -Cochez Utiliser le protocole compressé -Cochez les colonnes BIGINT sur INT -Cochez Sûr sous les drapeaux 2 :-Cochez Ne pas demander lors de la connexion -Cochez Ignorer # dans le nom de la table sous les drapeaux 3 :-Cochez Retour Noms de table pourSQLDescribeCol -Check Disable Transactions Now Testez votre DSN en cliquant sur le bouton Test

  4. Créez un serveur lié dans SSMS pour la base de données MySQL SSMS (SQL Server Management Studio -> Développez les objets du serveur -Cliquez avec le bouton droit sur LinkedServers -> Sélectionnez un nouveau serveur lié sur la page générale :-LinkedServer :saisissez le nom de votre serveur lié -Type de serveur :Sélectionnez une autre source de données - Fournisseur :sélectionnez le fournisseur Microsoft OLE DB pour les pilotes ODBC - Nom du produit :saisissez MySQLDatabase - Source de données :saisissez le nom du DSN que vous avez créé sur la page de sécurité - Mappez une connexion à l'utilisateur distant et indiquez le mot de passe de l'utilisateur distant - Cliquez sur Ajouter sous Mappages de connexion au serveur local et de connexion au serveur distant :-Sélectionnez une connexion locale dans la liste déroulante -Saisissez le nom de l'utilisateur distant -Saisissez le mot de passe de l'utilisateur distant

  5. Modifiez les propriétés du fournisseur MSDASQL Développez les fournisseurs -> Cliquez avec le bouton droit sur MSDASQL -> Sélectionnez Propriétés -Activer les requêtes imbriquées -Activer le niveau zéro uniquement (celui-ci est le kicker) -Activer Autoriser inprocess -Activer Prend en charge l'opérateur 'Like'

  6. Modifier les paramètres dans la configuration de la surface d'exposition de SQL Server pour les fonctionnalités - Activer la prise en charge OPENROWSET et OPENDATASOURCE.

  7. Modifier les paramètres dans la configuration de la surface d'exposition de SQL Server pour les services et les connexions - Activer les connexions locales et distantes via TCP/IP et les canaux nommés

  8. Arrêtez SQL Server et SQL Server Agent

  9. Démarrer SQL Server et l'agent SQL Server

Je n'ai pas trouvé que j'avais besoin de redémarrer le serveur SQL.