Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Important
Cette fonctionnalité est en version préliminaire.
ODBC (Open Database Connectivity) est une norme largement adoptée qui permet aux applications clientes de se connecter et d’utiliser des données à partir de bases de données et de plateformes Big Data.
Le pilote Microsoft ODBC pour l’ingénierie des données Fabric vous permet de connecter, interroger et gérer des charges de travail Spark dans Fabric avec la fiabilité et la simplicité de la norme ODBC. Basé sur les API Livy de Fabric, le pilote offre une connectivité SQL Spark sécurisée et flexible à vos applications compatibles C/C++, .NET, Python et autres compatibles ODBC sous Linux.
Fonctionnalités clés
- Conforme à ODBC 3.x : Implémentation complète de la spécification ODBC 3.x.
- Authentification Microsoft Entra ID : Flux d’authentification multiples, incluant Azure CLI, identifiants clients, certificats et authentification par jeton d’accès.
- Prise en charge des requêtes SQL Spark : exécution directe des instructions SQL de Spark.
-
Prise en charge complète des types de données : prise en charge de tous les types de données SQL Spark, y compris les types complexes (
ARRAY,MAP, etSTRUCT). - Réutilisation des sessions : gestion de session intégrée pour améliorer les performances.
- Prise en charge des grandes tables : Gestion optimisée pour de grands ensembles de résultats avec des tailles de pages configurables.
- Prélecture asynchrone : Chargement des données en arrière-plan pour améliorer les performances.
- Prise en charge des proxy : configuration HTTP des proxy pour les environnements d’entreprise.
- Prise en charge des maisons lacustres multi-schémas : Connectez-vous à un schéma spécifique au sein d’une maison lacustre.
Note
Dans Apache Spark open source, la base de données et le schéma sont utilisés comme synonymes. Par exemple, en exécutant SHOW SCHEMAS ou SHOW DATABASES dans un notebook Fabric, on obtient le même résultat : une liste de tous les schémas dans la maison du lac.
Prerequisites
Avant d’utiliser le pilote Microsoft ODBC pour Microsoft Fabric Data Engineering sous Linux, assurez-vous de respecter les prérequis suivants :
- Système d’exploitation : Ubuntu 22.04 ou ultérieur, Debian 11 ou ultérieur, ou Red Hat Enterprise Linux (RHEL) 8 ou ultérieur en x86-64.
-
unixODBC : Le gestionnaire de pilotes ODBC pour Linux. Installez les
unixodbcpackages etunixodbc-dev. - Accès Fabric : Accès à un espace de travail Fabric.
- Identifiants Microsoft Entra ID : Identifiants appropriés pour l’authentification.
- IDS de l’espace de travail et de la maison du lac : Les identifiants GUID pour votre espace de travail Fabric et votre maison du lac.
- Azure CLI (optionnel) : Obligatoire lorsque vous utilisez l’authentification Azure CLI.
Téléchargez et installez sur Linux
Le pilote Microsoft ODBC pour Microsoft Fabric Data Engineering version 1.0.0 est disponible en aperçu public.
Pour installer le pilote :
Extrayez
ms-sparksql-odbc-linux-1.0.0.zip.Ouvrez un terminal dans le répertoire extrait.
Installez le package Debian :
sudo dpkg -i microsoft-fabric-odbc-driver-1.0.0-Linux.deb
Le paquet installe les fichiers suivants :
| Fichier | Emplacement installé |
|---|---|
| Bibliothèque de pilotes | /usr/lib/libmicrosoftfabricodbc.so |
| Modèle d’enregistrement des pilotes | /usr/share/microsoft-fabric-odbc-driver/odbcinst.ini.template |
| Modèle de configuration DSN | /usr/share/microsoft-fabric-odbc-driver/odbc.ini.template |
| Licence | /usr/share/doc/microsoft-fabric-odbc-driver/LICENSE |
| Guide d’utilisation | /usr/share/doc/microsoft-fabric-odbc-driver/USAGE_Linux.md |
Pilote de registre manuel
Le package enregistre automatiquement le pilote auprès de unixODBC. Pour enregistrer manuellement le pilote, exécutez :
sudo odbcinst -i -d -f /usr/share/microsoft-fabric-odbc-driver/odbcinst.ini.template
Vérifier l’installation
Vérifiez que le pilote est enregistré et que la bibliothèque est installée :
odbcinst -q -d
ls -la /usr/lib/libmicrosoftfabricodbc.so
La odbcinst commande devrait indiquer [Microsoft ODBC Driver for Microsoft Fabric Data Engineering].
Désinstaller le pilote
Pour désinstaller le pilote, exécutez la commande suivante :
sudo dpkg -r microsoft-fabric-odbc-driver
Cette commande supprime les fichiers du pilote et désinscrit le pilote d’unixODBC.
Exemple de démarrage rapide
Les exemples suivants se connectent à Fabric et exécutent une requête SQL Spark. Remplissez les prérequis et installez le pilote avant d’exécuter un exemple.
exemple de Python
import pyodbc
connection_string = (
"DRIVER={Microsoft ODBC Driver for Microsoft Fabric Data Engineering};"
"WorkspaceId=<workspace-id>;"
"LakehouseId=<lakehouse-id>;"
"AuthFlow=AZURE_CLI;"
)
conn = pyodbc.connect(connection_string, timeout=30)
cursor = conn.cursor()
cursor.execute("SELECT 'Hello from Fabric!' AS message")
row = cursor.fetchone()
print(row.message)
conn.close()
Exemple C/C++
#include <sql.h>
#include <sqlext.h>
#include <iostream>
int main() {
SQLHENV henv = SQL_NULL_HENV;
SQLHDBC hdbc = SQL_NULL_HDBC;
SQLHSTMT hstmt = SQL_NULL_HSTMT;
SQLAllocHandle(SQL_HANDLE_ENV, SQL_NULL_HANDLE, &henv);
SQLSetEnvAttr(henv, SQL_ATTR_ODBC_VERSION, (SQLPOINTER)SQL_OV_ODBC3, 0);
SQLAllocHandle(SQL_HANDLE_DBC, henv, &hdbc);
const char* connectionString =
"DRIVER={Microsoft ODBC Driver for Microsoft Fabric Data Engineering};"
"WorkspaceId=<workspace-id>;"
"LakehouseId=<lakehouse-id>;"
"AuthFlow=AZURE_CLI;";
SQLRETURN result = SQLDriverConnect(
hdbc,
NULL,
(SQLCHAR*)connectionString,
SQL_NTS,
NULL,
0,
NULL,
SQL_DRIVER_NOPROMPT);
if (SQL_SUCCEEDED(result)) {
std::cout << "Connected successfully!" << std::endl;
SQLAllocHandle(SQL_HANDLE_STMT, hdbc, &hstmt);
result = SQLExecDirect(
hstmt,
(SQLCHAR*)"SELECT 'Hello from Fabric!' AS message",
SQL_NTS);
if (SQL_SUCCEEDED(result)) {
char message[256];
SQLLEN indicator;
while (SQLFetch(hstmt) == SQL_SUCCESS) {
SQLGetData(
hstmt,
1,
SQL_C_CHAR,
message,
sizeof(message),
&indicator);
std::cout << message << std::endl;
}
}
SQLFreeHandle(SQL_HANDLE_STMT, hstmt);
SQLDisconnect(hdbc);
}
SQLFreeHandle(SQL_HANDLE_DBC, hdbc);
SQLFreeHandle(SQL_HANDLE_ENV, henv);
return 0;
}
Construis et exécute l’exemple :
g++ -o fabric_test fabric_test.cpp -lodbc -std=c++17
./fabric_test
exemple de .NET
using System.Data.Odbc;
string connectionString =
"DRIVER={Microsoft ODBC Driver for Microsoft Fabric Data Engineering};" +
"WorkspaceId=<workspace-id>;" +
"LakehouseId=<lakehouse-id>;" +
"AuthFlow=AZURE_CLI;";
using var connection = new OdbcConnection(connectionString);
await connection.OpenAsync();
Console.WriteLine("Connected successfully!");
using var command = new OdbcCommand(
"SELECT 'Hello from Fabric!' AS message",
connection);
using var reader = await command.ExecuteReaderAsync();
if (await reader.ReadAsync())
{
Console.WriteLine(reader.GetString(0));
}
Format de chaîne de connexion
Chaîne de connexion de base
Utilisez le format de chaîne de connexion suivant :
DRIVER={Microsoft ODBC Driver for Microsoft Fabric Data Engineering};<parameter1>=<value1>;<parameter2>=<value2>;...
Composants de chaîne de connexion
| Component | Description | Example |
|---|---|---|
DRIVER |
Identificateur de pilote ODBC | {Microsoft ODBC Driver for Microsoft Fabric Data Engineering} |
WorkspaceId |
Identifiant d’espace de travail Fabric (GUID) | 4bbf89a8-66bb-443f-91af-df31e6a7560b |
LakehouseId |
Identifiant Fabric de la maison lacustre (GUID) | d8faa650-1343-496b-b9cc-d4168a676f90 |
AuthFlow |
Méthode d’authentification |
AZURE_CLI, CLIENT_CREDENTIAL, CLIENT_CERTIFICATE, ou ACCESS_TOKEN |
Exemples de chaîne de connexion
Connexion de base
DRIVER={Microsoft ODBC Driver for Microsoft Fabric Data Engineering};WorkspaceId=<workspace-id>;LakehouseId=<lakehouse-id>;AuthFlow=AZURE_CLI
Connexion avec les options de performance
DRIVER={Microsoft ODBC Driver for Microsoft Fabric Data Engineering};WorkspaceId=<workspace-id>;LakehouseId=<lakehouse-id>;AuthFlow=AZURE_CLI;ReuseSession=true;LargeTableSupport=true;PageSizeBytes=18874368
Lien avec la journalisation
DRIVER={Microsoft ODBC Driver for Microsoft Fabric Data Engineering};WorkspaceId=<workspace-id>;LakehouseId=<lakehouse-id>;AuthFlow=AZURE_CLI;LogLevel=DEBUG;LogFile=/tmp/odbc_driver.log
Authentication
Le pilote Microsoft ODBC pour Microsoft Fabric Data Engineering prend en charge plusieurs méthodes d’authentification via Microsoft Entra ID. Configurez l’authentification en utilisant le AuthFlow paramètre dans la chaîne de connexion ou le DSN.
Méthodes d’authentification
AuthFlow valeur |
Description |
|---|---|
AZURE_CLI |
Développement à l’aide des informations d’identification Azure CLI |
CLIENT_CREDENTIAL |
Directeur de service avec un secret client |
CLIENT_CERTIFICATE |
Directeur de service avec un certificat |
ACCESS_TOKEN |
Jeton de porteur d'accès préacquis |
Note
L’authentification interactive par navigateur n’est pas disponible sur les serveurs Linux sans interface audio. Utilisez plutôt Azure CLI, identifiants clients, authentification basée sur certificat ou jeton d’accès.
L'authentification de l'Azure CLI
Utilisez l’authentification Azure CLI pour le développement et les applications interactives.
connection_string = (
"DRIVER={Microsoft ODBC Driver for Microsoft Fabric Data Engineering};"
"WorkspaceId=<workspace-id>;"
"LakehouseId=<lakehouse-id>;"
"AuthFlow=AZURE_CLI;"
"Scope=https://api.fabric.microsoft.com/.default;"
)
conn = pyodbc.connect(connection_string)
Avant de vous connecter, vérifiez que Azure CLI est installé et connectez-vous :
az --version
az login
Pour installer Azure CLI sur Debian ou Ubuntu, utilisez le gestionnaire de paquets :
sudo apt-get update
sudo apt-get install -y azure-cli
Authentification des identifiants clients
Utilisez l’authentification des identifiants clients pour les services automatisés et les tâches en arrière-plan.
connection_string = (
"DRIVER={Microsoft ODBC Driver for Microsoft Fabric Data Engineering};"
"WorkspaceId=<workspace-id>;"
"LakehouseId=<lakehouse-id>;"
"AuthFlow=CLIENT_CREDENTIAL;"
f"TenantId={tenant_id};"
f"ClientId={client_id};"
f"ClientSecret={client_secret};"
)
Veuillez fournir les paramètres suivants :
-
TenantId: L’ID du locataire Microsoft Entra. -
ClientId: ID d’application (client). -
ClientSecret: Le secret client.
Stockez les secrets dans un stockage secret sécurisé ou dans des variables d’environnement. Ne stockez pas de secrets dans des chaînes de connexion en texte clair ou dans des fichiers INI.
Authentification basée sur un certificat
Utilisez l’authentification basée sur des certificats pour les applications d’entreprise nécessitant des identifiants de certificat.
connection_string = (
"DRIVER={Microsoft ODBC Driver for Microsoft Fabric Data Engineering};"
"WorkspaceId=<workspace-id>;"
"LakehouseId=<lakehouse-id>;"
"AuthFlow=CLIENT_CERTIFICATE;"
"TenantId=<tenant-id>;"
"ClientId=<client-id>;"
"CertificatePath=/path/to/cert.pfx;"
"CertificatePassword=<password>;"
)
Veuillez fournir les paramètres suivants :
-
TenantId: L’ID du locataire Microsoft Entra. -
ClientId: ID d’application (client). -
CertificatePath: Le chemin vers le fichier de certificat PFX ou PKCS12. -
CertificatePassword: Le mot de passe du certificat.
Authentification par jeton d’accès
Utilisez l’authentification du jeton d’accès lorsque votre application acquiert un jeton via un autre mécanisme.
access_token = acquire_token_from_custom_source()
connection_string = (
"DRIVER={Microsoft ODBC Driver for Microsoft Fabric Data Engineering};"
"WorkspaceId=<workspace-id>;"
"LakehouseId=<lakehouse-id>;"
"AuthFlow=ACCESS_TOKEN;"
f"AccessToken={access_token};"
)
Paramètres de configuration
Paramètres requis
Incluez ces paramètres dans chaque chaîne de connexion :
| Paramètre | Type | Description | Example |
|---|---|---|---|
WorkspaceId |
Identifiant Unique Universel (UUID) | Identificateur de l’espace de travail Fabric | 4bbf89a8-... |
LakehouseId |
Identifiant Unique Universel (UUID) | Identifiant Fabric de la maison lacustre | d8faa650-... |
AuthFlow |
String | Type de flux d’authentification | AZURE_CLI |
Paramètres facultatifs
Paramètres de connexion
| Paramètre | Type | Default | Description |
|---|---|---|---|
Database |
String | Aucun | Base de données spécifique à laquelle se connecter |
Scope |
String | https://api.fabric.microsoft.com/.default |
Étendue OAuth |
Paramètres de performances
| Paramètre | Type | Default | Description |
|---|---|---|---|
ReuseSession |
Boolean | true |
Réutiliser une session Spark existante |
LargeTableSupport |
Boolean | false |
Activer les optimisations pour les jeux de résultats volumineux |
EnableAsyncPrefetch |
Boolean | false |
Activer la prérécupération des données en arrière-plan |
PageSizeBytes |
Integer |
18874368 (18 Mo) |
Taille de page pour la pagination des résultats de 1 à 18 Mo |
Paramètres de journalisation
| Paramètre | Type | Default | Description |
|---|---|---|---|
LogLevel |
String | INFO |
Niveau logarithmique : TRACE, DEBUG, INFO, WARN, ou ERROR |
LogFile |
String | odbc_driver.log |
Chemin de fichier journal absolu ou relatif |
Paramètres du proxy
| Paramètre | Type | Default | Description |
|---|---|---|---|
UseProxy |
Boolean | false |
Activer un proxy |
ProxyHost |
String | Aucun | Nom d’hôte proxy |
ProxyPort |
Integer | Aucun | Port proxy |
ProxyUsername |
String | Aucun | Nom d’utilisateur d’authentification par procuration |
ProxyPassword |
String | Aucun | Mot de passe d’authentification proxy |
Configuration DSN
Sous Linux, configurez les noms des sources de données (DSN) dans les fichiers INI au lieu du registre Windows.
| Fichier | Scope | Accès |
|---|---|---|
/etc/odbc.ini |
DSN à l’échelle du système | Exige sudo |
~/.odbc.ini |
DSN spécifiques à chaque utilisateur | Utilisateur actuel uniquement |
Créer un DSN
Copiez le modèle installé :
cp /usr/share/microsoft-fabric-odbc-driver/odbc.ini.template ~/.odbc.ini
Modification ~/.odbc.ini avec les détails de votre espace de travail Fabric :
[FabricDSN]
Description = Microsoft Fabric Data Engineering
Driver = Microsoft ODBC Driver for Microsoft Fabric Data Engineering
WorkspaceId = <workspace-id>
LakehouseId = <lakehouse-id>
AuthFlow = AZURE_CLI
LogLevel = INFO
# LogFile = /tmp/fabric_odbc.log
# LargeTableSupport = true
# ReuseSession = true
Vérifier le DSN
Listez les DSN configurés, puis testez la connexion :
odbcinst -q -s
isql -v FabricDSN
La isql commande nécessite les outils de ligne de commande unixODBC.
Utiliser un DSN dans les applications
conn = pyodbc.connect("DSN=FabricDSN")
using var connection = new OdbcConnection("DSN=FabricDSN");
await connection.OpenAsync();
SQLRETURN result = SQLConnect(
hdbc,
(SQLCHAR*)"FabricDSN",
SQL_NTS,
NULL,
0,
NULL,
0);
Exemples d’utilisation
Tester une connexion avec isql
Commencez une session SQL interactive :
isql -v FabricDSN
Lancer une seule requête :
echo "SELECT 1 AS test" | isql -v FabricDSN -b
Travail avec de grands ensembles de résultats
import pyodbc
connection_string = (
"DRIVER={Microsoft ODBC Driver for Microsoft Fabric Data Engineering};"
"WorkspaceId=<workspace-id>;"
"LakehouseId=<lakehouse-id>;"
"AuthFlow=AZURE_CLI;"
"LargeTableSupport=true;"
"PageSizeBytes=18874368;"
"EnableAsyncPrefetch=1;"
)
conn = pyodbc.connect(connection_string)
cursor = conn.cursor()
cursor.execute("SELECT * FROM large_table")
row_count = 0
while True:
rows = cursor.fetchmany(1000)
if not rows:
break
for row in rows:
row_count += 1
if row_count % 10000 == 0:
print(f"Processed {row_count} rows")
print(f"Total rows processed: {row_count}")
conn.close()
Découvrez les schémas et les tables
import pyodbc
conn = pyodbc.connect(connection_string)
cursor = conn.cursor()
cursor.execute("SHOW TABLES")
for table in cursor.fetchall():
print(table)
cursor.execute("DESCRIBE employees")
for column in cursor.fetchall():
print(column)
cursor.execute("SHOW SCHEMAS")
for schema in cursor.fetchall():
print(schema)
conn.close()
Mappage de types de données
Le pilote mappe les types de données Spark SQL aux types SQL ODBC :
| Type Spark SQL | Type SQL ODBC | Type C/C++ | Type Python | Type .NET |
|---|---|---|---|---|
BOOLEAN |
SQL_BIT |
SQLCHAR |
bool |
bool |
BYTE |
SQL_TINYINT |
SQLSCHAR |
int |
sbyte |
SHORT |
SQL_SMALLINT |
SQLSMALLINT |
int |
short |
INT |
SQL_INTEGER |
SQLINTEGER |
int |
int |
LONG |
SQL_BIGINT |
SQLBIGINT |
int |
long |
FLOAT |
SQL_REAL |
SQLREAL |
float |
float |
DOUBLE |
SQL_DOUBLE |
SQLDOUBLE |
float |
double |
DECIMAL |
SQL_DECIMAL |
SQLCHAR* |
decimal.Decimal |
decimal |
STRING |
SQL_VARCHAR |
SQLCHAR* |
str |
string |
VARCHAR(n) |
SQL_VARCHAR |
SQLCHAR* |
str |
string |
CHAR(n) |
SQL_CHAR |
SQLCHAR* |
str |
string |
BINARY |
SQL_BINARY |
SQLCHAR* |
bytes |
byte[] |
DATE |
SQL_TYPE_DATE |
SQL_DATE_STRUCT |
datetime.date |
DateTime |
TIMESTAMP |
SQL_TYPE_TIMESTAMP |
SQL_TIMESTAMP_STRUCT |
datetime.datetime |
DateTime |
ARRAY |
SQL_VARCHAR |
SQLCHAR* |
Chaîne JSON | string |
MAP |
SQL_VARCHAR |
SQLCHAR* |
Chaîne JSON | string |
STRUCT |
SQL_VARCHAR |
SQLCHAR* |
Chaîne JSON | string |
Différences de plateforme
| Fonctionnalité | Windows | Linux |
|---|---|---|
| Directeur de pilotage | Microsoft ODBC Driver Manager | unixODBC |
| Binaire du pilote | microsoftfabricodbc.dll |
libmicrosoftfabricodbc.so |
| Configuration DSN | Registre et interface graphique Windows |
/etc/odbc.ini et ~/.odbc.ini |
| Enregistrement des pilotes | Registre et odbcad32.exe |
odbcinst -i -d -f |
| Client HTTP | WinHTTP | libcurl |
| TLS | Support intégré de Windows | Openssl |
| Authentification par certificat | Windows CryptoAPI | OpenSSL avec fichiers RS256 et PEM ou PFX |
| Authentification interactive | Fenêtre du navigateur | Non disponible sur les serveurs sans interface |
| Emballage | Programme d’installation MSI | Paquet Linux |
Troubleshooting
Conducteur non trouvé
Problème : La connexion échoue avec [IM002] Data source name not found and no default driver specified.
Solutions :
- Vérifiez l’enregistrement des pilotes en exécutant
odbcinst -q -d. - Vérifiez qu’elle
/usr/lib/libmicrosoftfabricodbc.soexiste. - Enregistrez le conducteur en exécutant
sudo odbcinst -i -d -f /usr/share/microsoft-fabric-odbc-driver/odbcinst.ini.template. - Réinstallez le package en exécutant
sudo dpkg -i microsoft-fabric-odbc-driver-1.0.0-Linux.deb.
DSN introuvable
Problème : La connexion échoue avec [IM002] Data source name not found.
Solutions :
- Vérifiez la configuration DSN en exécutant
odbcinst -q -s. - Vérifiez cela
~/.odbc.iniou/etc/odbc.inicontient la section DSN. - Assurez-vous que la
Drivervaleur correspond exactement au nom du conducteur enregistré.
Échecs de connexion
Problème : Le pilote ne peut pas se connecter à Fabric.
Solutions :
- Vérifiez que l’ID de l’espace de travail et l’identifiant de la maison du lac sont des GUID valides.
- Vérifiez l’authentification Azure CLI en exécutant
az account show. - Assurez-vous d’avoir les autorisations requises pour l’espace de travail Fabric.
- Vérifiez la connectivité réseau et les paramètres proxy.
Erreurs d’authentification
Problème : l’authentification Azure CLI échoue.
Solutions :
- Cours
az loginpour rafraîchir tes identifiants. - Réglez l’abonnement correct en exécutant
az account set --subscription <subscription-id>. - Vérifie le jeton en exécutant
az account get-access-token --resource https://api.fabric.microsoft.com. - Assurez-vous que votre compte dispose des autorisations requises pour l’espace de travail Fabric.
Erreurs de bibliothèque partagée
Problème : Le conducteur signale error while loading shared libraries: libmicrosoftfabricodbc.so.
Solutions :
- Réinstallez le package en exécutant
sudo dpkg -i microsoft-fabric-odbc-driver-1.0.0-Linux.deb. - Vérifiez qu’elle
/usr/lib/libmicrosoftfabricodbc.soexiste. - Exécutez
sudo ldconfigpour rafraîchir le cache de la bibliothèque partagée.
Délais d’expiration des requêtes
Problème : Les requêtes s’épuisent sur de grandes tables.
Solutions :
- Ajouter
LargeTableSupport=trueà la chaîne de connexion. - Ajustez
PageSizeBytesla taille du résultat. - Ajouter
EnableAsyncPrefetch=1à la chaîne de connexion. - Utilisez une
LIMITclause pour limiter la taille du résultat.
Activer la journalisation
Activez la journalisation détaillée dans un DSN :
[FabricDSN]
LogLevel = DEBUG
LogFile = /tmp/fabric_odbc_debug.log
Sinon, ajoutez des paramètres de journalisation à la chaîne de connexion :
LogLevel=DEBUG;LogFile=/tmp/fabric_odbc_debug.log;
Le pilote prend en compte les niveaux logaritaires suivants :
-
TRACE: Inclut tous les appels API. -
DEBUG: Inclut des informations détaillées sur le débogage. -
INFO: Inclut des informations générales et est la norme par défaut. -
WARN: Inclut uniquement les avertissements. -
ERROR: Inclut uniquement les erreurs.
Activer le traçage unixODBC
Pour les diagnostics d’appels ODBC de bas niveau, ajoutez la configuration suivante à /etc/odbcinst.ini:
[ODBC]
Trace = yes
TraceFile = /tmp/odbc_trace.log
Désactivez le traçage une fois le dépannage terminé pour éviter une surcharge de performance inutile.