2014. április 25., péntek

SSRS és MySQL



Feladat: 64 bites windows-os gépen szeretnénk egy távoli szerveren található MySQL adatbázishoz csatlakozni a Report Builder-rel.

Probléma: A Report Builder 32 bites alkalmazás, ezért nem jó a 64 bites MySQL driver.
Egy angol nyelvű cikk az esetről: http://blogs.msdn.com/b/sqlcat/archive/2011/03/31/32-and-64-bit-connectivity-from-the-same-machine.aspx

Megoldás: A 32 bites és 64 bites mysql odbc drivert is fel kell telepíteni az SSRS-t futtató gépre! A 32 bites a Report Builder-hez, a 64 bites drivert pedig a 64 bites adatkapcsolatot igénylő alkalmazásokhoz, amelyek lehetnek pl. SQL Server Management Studio, MS Excel, MS Access, stb.

  1. Driverek letöltése

    A driver-eket innen lehet letölteni: https://dev.mysql.com/downloads/connector/odbc/

  2. Driver-ek telepítése

    Célszerű rendszergazdai jogosultsággal telepíteni, mert - én legalábbis így jártam- ennek hiányában nem teszi fel a driver-eket.
     
  3. ODBC kapcsolatok létrehozása

    Szintén rendszergazdai jogosultsággal biztos ami biztos alapon odbc kapcsolatokat létrehozni (32 és 64 bit, teljesen ugyanazon beállításokkal). A 32 és 64 bites ODBC kapcsolatokról egy Microsoft tudástár bejegyzés: https://support.microsoft.com/en-us/kb/942976
     
  4. SSRS új Data Source létrehozása

    Az SSRS oldalon hozzuk létre az új adatforrást, amit ezután már használhatunk a Report Builder-ben, mint megosztott adatforrást. (Shared Data Source)


Linked server létrehozása:

Ha az SQL szerverhez szeretnénk csatolni egy külső, esetünkben MySQL adatbázist, akkor az 1-3 pont elvégzése után az alábbi cikkben leírtak alapján a művelet elvégezhető: http://www.packtpub.com/article/mysql-linked-server-on-sql-server-2008

Provider String mezőbe a következőt írni: DSN=OdbcKapcsolatNeve;
A többi a cikkben leírtak szerint.