La configuration des connexions

Généralités

Chaque Système de gestion de base de données (SGBD) a ses spécificités.

Pour réaliser le paramétrage de la connexion il faut se référer à la documentation du SGBD, du composant utilisé pour s'y connecter, et traduire ses informations pour MyReport Data.

Il peut être utile de connaitre les "ConnexionsString" génériques pour le SGBD utilisé : Voici un site qui référence plusieurs SGBD et leurs ConnexionString

Pour une meilleure performance lors de l'insertion des données durant un ETL, certaines connexions utilisent le mode "BulkCopy" (ou "BulkInsert") :

  • SQL Server
  • Oracle Natif
  • MariaDB

Le mode "Insertion Multiligne" permet aussi d'améliorer les performances pour d'autres connexions :

  • MySQL
  • PostGreSQL
  • La valeur par défaut du nombre de lignes par bloc d'insertion est de 10000

Note

Pour toutes les connexions

  • le Pooling est désactivé
  • Le niveau d'isolation est "ReadUncommited" (DirtyRead)

Note

La taille limite d'une requête SQL est fixée à 64Ko (65536 caractères) pour toutes les bases de données sauf MySQL qui n'a pas de limitation.

Important

Les modèles temps réels sont officiellement supportés uniquement sur les types de connexion configurables en DW.

exemple : il est déconseillé de faire un modèle temps réel sur une connexion ODBC.

ODBC / OleDB

Généralités

Points clés

  • Le driver ODBC/OleDB doit être installé sur la machine qui héberge MyReport Server
  • Pour les connexions OleDB, si le paramètre "ConnexionString" est renseigné, il est utilisé tel quel sans prendre en compte les autres paramètres.

Important

Pour se connecter avec un pilote ODBC 32 bits sur une machine 64 bits, il est nécessaire d'installer une version x86 de MyReport Server.

Une installation de MyReport Server sur une machine 32 bits ne permet que la connexion avec un pilote ODBC 32 bits.

Attention, il n'est pas possible d'installer une version x64 et une version x86 sur le même serveur. Si vous avez des connexions sources des 2 types, il faudra avoir deux serveurs distincts.

Cas particuliers

Temporisation sur connexion générique ODBC

  • Sur une connexion ODBC, il est possible de configurer une temporisation après la fermeture de la connexion (à la fin d'un ETL). Cela peut s'avérer utile sur une connexion ODBC limitée et sous licence).
  • Le temps de temporisation peut être configuré de 1 à 600 secondes.
  • Par défaut, la demande de déconnexion se fait de façon déliée à l'exécution, c'est à dire que nous lançons la déconnexion sans attendre le retour.
  • Pour que le paramétrage fonctionne correctement, il peut être nécessaire de passer l'ETL en séquentiel.

Access

Points clés

  • Le fichier Access doit être accessible par MyReport Server.
  • Un driver OleDB Access doit être installé sur la machine qui héberge MyReport Server, et nécessite l'installation du composant «Microsoft Access Database Engine 2010 Redistribuable».

Tableau 2.1. Traduction des différents paramètres

Connexion String

MyReport Data

Provider=<Microsoft.ACE.OLEDB.12.0>; Data Source=<C:\myFolder\myAccessFile.accdb>; Password=<MyDbPassword>;

Paramètres :

  • Provider : <Microsoft.ACE.OLEDB.12.0>
  • DataSource : <C:\myFolder\myAccessFile.accdb>
  • Password : <MyDbPassword>

Firebird

Points clés

  • Les accents dans le chemin d'accès à la base de données ne sont pas gérés par Firebird.

Tableau 2.2. Traduction des différents paramètres

Connexion String

MyReport Data

DataSource=<localhost>; Database=<SampleDatabase.mrd>; Port=<3050>; User=<SYSDBA>; Password=<masterkey>; Role=<MyRole>; Dialect=<3>; Charset=<NONE>;

Paramètres

  • DataSource : <localhost>
  • Database : <SampleDatabase.mrd>
  • Port : <3050>
  • User Id : <SYSDBA>
  • Password : <masterkey>
  • Dialect : <3>
  • Charset : <NONE>
  • Role : <MyRole>

MySQL

Points clés

  • Le connecteur utilisé permet de gérer les versions de MySQL 5.7 et supérieures.
  • Les élements ci dessous ne sont pas modifiables

    • SSLMode: None
    • AllowZeroDateTime·: True

Attention

Les mots de passe utilisateurs hachés selon la méthode utilisée dans les versions 4.1 et antérieures ne sont pas supportés par ce connecteur.

https://dev.mysql.com/doc/refman/5.7/en/password-hashing.html.

Les mots de passe des utilisateurs doivent alors être redéfinis dans la base MySQL :

SET SESSION old_passwords=0;

SET PASSWORD FOR 'user'@'hôte' = PASSWORD('password');

Tableau 2.3. Traduction des différents paramètres

Connexion String

MyReport Data

Server=<myServerAddress>; Port=<1234>; Database=<myDataBase>; Uid=<myUsername>; Pwd=<myPassword>; CharSet=<utf8>;

Paramètres

  • Server : <myServerAddress>
  • Port : <1234>
  • Database : <myDataBase>
  • User Id : <myUsername>
  • Password : <myPassword>
  • Charset : <utf8>

Connexion SSL

Il est possible de paramétrer trois modes de connexions SSL.

  • Requirer
  • VerifyCA
  • VerifyFull

Tableau 2.4. Paramètres à renseigner en fonction du mode de connexion SSL

Requirer

VerifyCA

VerifyFull

SslCA

SslCert

SslKey

CertificateFile

CertificatePassword


Important

Les chemins renseignés vers les certificats doivent être accessibles par le service de MyReport Server.

MariaDB

Points clés

  • Les élements ci dessous ne sont pas modifiables

    • SSLMode: None
    • AllowZeroDateTime: True
    • AllowLoadLocalInfile : True

Tableau 2.5. Traduction des différents paramètres

Connexion String

MyReport Data

Server=<myServerAddress>; Port=<1234>; Database=<myDataBase>; Uid=<myUsername>; Pwd=<myPassword>; CharSet=<utf8>;

Paramètres

  • Server : <myServerAddress>
  • Port : <1234>
  • Database : <myDataBase>
  • User Id : <myUsername>
  • Password : <myPassword>
  • Charset : <utf8>

PostgreSQL

Points clés

  • Le paramètre "Initial Schema" affecte la variable SQL "search_path" avant toute requête.

Tableau 2.6. Traduction des différents paramètres

Connexion String

MyReport Data

Host=<localhost>; Database=<myDataBase>; Port=<5432>; User ID=<root>; Password=<myPassword>;

Paramètres

  • Server : <localhost>
  • Database : <myDataBase>
  • Port : <5432>
  • User Id : <root>
  • Password : <myPassword>

Attention

  • Le type PostgreSQL "time with time zone" (timetz) n'est à ce jour pas pris en charge dans MyReport BE.
  • Le type "interval" dans la base source doit avoir été renseigné au format heures - minutes - secondes et doit être transformé en texte dans le cas d'un champ destination pour pouvoir être interprété dans MyReport BE lors des ETL.

    • Les autres types d'intervalles spécifiques à PostgreSQL (interval month, interval year etc.) ne sont à ce jour plus supportés par le connecteur et ne sont pas pris en charge par BE.
  • Les champs de type "numeric" avec PostgreSQL ont une limite supérieure à la limite autorisée par le connecteur PostgreSQL qui est de 28 caractères. Pour pallier à cette problématique :

SAP Hana

La connexion SAP Hana utilise un driver ODBC, se référer à cette section la section intitulée « ODBC / OleDB ».

En connexion ODBC SAP HANA, Les colonnes des types suivants ne sont pas compatibles:

  • VARBINARY, TEXT, NCLOB, BLOB, LOB
  • ST_GEOMETRY, ST_POINT
  • ARRAY de tous types

SQLite

Points clés

  • Le fichier SQLite doit être accessible par MyReport Server.
  • Pour utiliser le paramètre "Password", la base SQLite doit être crée avec la dll C# "System.Data.SQLite" en version 1.0.112 ou inferieurs.

Tableau 2.7. Traduction des différents paramètres

Connexion String

MyReport Data

Data Source=<c:\mydb.db>; Password=<myPassword>;

Paramètres

  • DataSource : <c:\mydb.db>
  • Password : <myPassword>

SQLite Cipher

La base de donnée SQLite Cipher est une version de SQLite.

Elle dispose des mêmes caractéristiques que la base de donnée SQLite, mais, elle permet en plus, de paramétrer un mot de passe qui sert de clef de chiffrement pour les données.

Lien vers la documentation de SQLite Cipher : https://www.zetetic.net/sqlcipher/

SQLServer

Points clés

  • Le connecteur utilisé permet de gérer les versions de SQL Server 2012 et supérieures.
  • Le paramètre "Integrated Security" permet de se connecter avec l'utilisateur de la session en cours.

    Attention : C’est la session qui lance le service MyReport qui est utilisée.

  • Windows Serveur 2012 R2 n'est pas compatible avec le protocole "TLS 1.2". Il faut configurer le SGBD pour accepter les protocoles plus anciens si MyReport est installé sur ce système d'exploitation.

Tableau 2.8. Traduction des différents paramètres

Connexion String

MyReport Data

Server|Data Source=<myServerAddress,myPortNumber>; Database|Initial Catalog=<myDataBase>; User Id=<myUsername>; Password=<myPassword>;

Paramètres

  • DataSource : <myServerAddress>
  • Port : <myPortNumber>
  • Initial Catalog : <myDataBase>
  • User Id : <myUsername>
  • Password : <myPassword>

Attention

Le type SQL Server "datetimeoffset" n'est à ce jour pas pris en charge dans MyReport BE.

Oracle

Généralités

Astuce

il est préconisé d'utiliser la connexion "Oracle Natif"

Points clés

  • Le paramètre "Schéma" est utilisé pour filtrer la liste des tables, vues et jointures qui sont accessibles.
  • Paramètres non modifiables :

    • MetadataPooling : False

Tableau 2.9. Traduction des différents paramètres pour Oracle Natif

Connexion String

MyReport Data

Data Source=<MyOracleDB>; User Id=<myUsername>; Password=<myPassword>;

Note

Oracle Natif : <MyOracleDB> = serveur:port/SID

Paramètres

  • DataSource : <MyOracleDB>
  • User Id : <myUsername>
  • Password : <myPassword>

Note

Oracle Natif : <MyOracleDB> = serveur:port/SID


Note

Oracle ne gère pas les entiers (types INT) nativement. MyReport traduit un champ en entier si le type défini dans la base Oracle est : NUMBER(38) ou NUMBER(38,0)

Oracle Natif

Cette connexion ne nécessite aucune installation sur la machine qui héberge MyReport Server.

Oracle ODBC

Cette connexion nécessite un driver oracle ODBC et ses propres prérequis sur la machine qui héberge MyReport Server.

Hyperfile (HFSQL)

Le pilote OLEDB doit correspondre à la version de la base. Par exemple, si la base est en version 28, alors le pilote OLEDB est celui de la version 28.

ghostghostghostghostghost
loading table of contents...