Jeg var nødt til at gøre et par ting for at få det til at virke. Bruger også en Win2K SQL-server og importerer data fra MySql.
En ting, vi gjorde, var at installere 3.51.22 version af MySql ODBC-driveren (mysql-connector-odbc-3.51.22-win32.msi).
Så var følgende artikel meget nyttig:http://www.sqlservercentral.com/Forums/Topic340912-146-1.aspx
Det vigtigste var at deaktivere transaktioner samt at henvise til DSN når du opretter en sammenkædet server. For at lette referencen kopierer og indsætter jeg instruktionerne fra SQLServerCentral-artiklen i dette indlæg nedenfor:
Oprettelse af en sammenkædet server i SSMS til en MySQL-database
- Download MySQL ODBC-driveren fra mysql.com
-
Installer MySQL ODBC-driver på serveren, hvor SQL Server findes - Dobbeltklik på Windows Installer-fil og følg anvisningerne.
-
Opret et DSN ved hjælp af MySQL ODBC-driveren Start-> Indstillinger -> Kontrolpanel -> Administrative værktøjer -> Datakilder (ODBC) -Klik på fanen System DSN -Klik på Tilføj -Vælg MySQL ODBC-driveren-Klik Udfør på fanen Login:-Skriv et beskrivende navn til dit DSN. -Skriv servernavnet eller IP-adressen i servertekstboksen.-Skriv det brugernavn, der er nødvendigt for at oprette forbindelse til MySQL-databasen, i brugertekstfeltet. - Indtast adgangskoden, der er nødvendig for at oprette forbindelse til MySQL-databasen, i kodeordstekstboksen. -Vælg den database, du gerne vil starte i. På fanen Advance:Under Flag 1:-Markér Optimer ikke kolonnebredden. -Tjek Returmatchende rækker -Tjek Tillad store resultater -Tjek Brug komprimeret protokol -Tjek BIGINT-kolonner til INT -Tjek Sikker under Flag 2:-Tjek Spørg ikke ved tilslutning -Tjek Ignorer #i tabelnavn under Flag 3:-Tjek Retur Tabelnavne forSQLDescribeCol -Tjek Deaktiver transaktioner nu Test din DSN ved at klikke på knappen Test
-
Opret en sammenkædet server i SSMS til MySQL-databasen SSMS (SQL Server Management Studio -> Udvid serverobjekter -Højreklik på LinkedServers -> Vælg ny linket server på den generelle side:-LinkedServer:Indtast navnet på din sammenkædede server -Servertype:Vælg Anden datakilde - Udbyder:Vælg Microsoft OLE DB-udbyder til ODBC-drivere - Produktnavn:Skriv MySQLDatabase - Datakilde:Indtast navnet på det DSN, du oprettede på sikkerhedssiden - Kortlæg et login til fjernbrugeren og angiv adgangskoden til fjernbrugere - Klik på Tilføj under Lokal server login til ekstern server login mappings:-Vælg aLocal Login fra rullemenuen -Indtast navnet på den eksterne bruger - Indtast adgangskoden til den eksterne bruger
-
Skift egenskaberne for udbyderen MSDASQL Udvid udbydere -> Højreklik på MSDASQL -> Vælg egenskaber -Aktiver indlejrede forespørgsler-Aktiver kun niveau nul (denne er kickeren) -Aktiver Tillad igangværende -Aktiver Understøtter 'Like'-operator
-
Skift indstillinger i SQL Server Surface Area Configuration for Features - Aktiver OPENROWSET og OPENDATASOURCE support.
-
Skift indstillinger i SQL Server Surface Area Configuration for Services and Connections -Aktiver lokale og eksterne forbindelser via TCP/IP og navngivne rør
-
Stop SQL Server og SQL Server Agent
- Start SQL Server og SQL Server Agent
Jeg fandt ikke ud af, at jeg var nødt til at genstarte SQL-serveren.