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.
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.
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.
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 :
|
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
|
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
|
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.
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
|
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
|
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 :
- Soit préciser une limitation en base de données pour le champ concerné.
- Soit changer de format et passer le champ en type "varchar"
- Soit passer par le pilote ODBC : https://www.postgresql.org/ftp/odbc/releases/REL-17_00_0002-mimalloc/
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
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
|
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/
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
|
Attention
Le type SQL Server "datetimeoffset" n'est à ce jour pas pris en charge dans MyReport BE.
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>; NoteOracle Natif : <MyOracleDB> = serveur:port/SID |
Paramètres
NoteOracle 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)
Cette connexion ne nécessite aucune installation sur la machine qui héberge MyReport Server.