Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
libreoffice_mysql [Le 14/06/2022, 14:45]
arverne73 Ajout sur les connexions
libreoffice_mysql [Le 14/01/2025, 15:25] (Version actuelle)
arverne73 orthographe
Ligne 1: Ligne 1:
-{{tag>​SGBD bureautique}}+{{tag>Noble Jammy Focal SGBD bureautique}}
  
 ---- ----
Ligne 18: Ligne 18:
 Vous pouvez vous connectez avec Base de trois manières: Vous pouvez vous connectez avec Base de trois manières:
   * [[#​Directement]]   * [[#​Directement]]
-  * [[#Avec l'​extension libreoffice-mysql-connector|Avec une extension pour libreoffice]]+  * [[#Avec l'​extension libreoffice-mysql-connector|Avec une extension pour libreoffice]] ​(ancienne méthode)
   * [[#Avec le pilote JDBC]]   * [[#Avec le pilote JDBC]]
   * [[#Avec le pilote ODBC]]   * [[#Avec le pilote ODBC]]
Ligne 26: Ligne 26:
  
 A la création du fichier Base, il faut successivement : A la création du fichier Base, il faut successivement :
-  - Choisir la 3e option "​Connecter un base de données existante"​ et sélectionner "​MySQL"​ +  - Choisir la 3e option "​Connecter un base de données existante"​ et sélectionner "MySQL" ou "​MySQL/​MariaDB
-  - A l'​écran suivant, sélectionner "Connecter directement"+  - A l'​écran suivant, sélectionner "Connexion directe (connecteur MariaDB C)"
   - Compléter l'​écran suivant. Si la base MySQL est installée sur le même poste, le serveur est "​localhost",​ sinon l'​adresse IP du poste serveur. Le port est 3306   - Compléter l'​écran suivant. Si la base MySQL est installée sur le même poste, le serveur est "​localhost",​ sinon l'​adresse IP du poste serveur. Le port est 3306
   - Compléter les 2 écrans suivants non spécifiques   - Compléter les 2 écrans suivants non spécifiques
  
-Ce type de connexion connaît des bugs entraînant un gel de LibreOffice ou une fermeture brutale, surtout avec le code Basic. D'​après les utilisateurs ​des forums, la connexion directe est plus fiable avec OpenOffice. En cas de difficulté,​ changer la connexion pour MySQL JDBC qui est plus lente (voir ci-dessous).+<note important>​Ce type de connexion connaît des bugs entraînant un gel de LibreOffice ou une fermeture brutale, surtout avec le code Basic. Un message du [[https://​bugs.launchpad.net/​ubuntu/​+source/​libreoffice/​+bug/​1972820 |forum Bugzilla (voir#16)]] indique clairement que ce connecteur n'est pas adapté à MySQL mais prévu pour MariaDB. D'​après les utilisateurs ​d'​autres ​forums, la connexion directe est plus fiable avec OpenOffice. En cas de difficulté,​ changer la connexion pour MySQL JDBC qui est un peu plus lente mais fiable(voir ci-dessous ​4.2).</​note>​
  
 Il n'est pas simple non plus de remplacer une connexion d'un autre type pour utiliser celle-là : nécessité de créer une nouvelle base et réintégrer les différents éléments (formulaires,​ requêtes, rapports, code). Il n'est pas simple non plus de remplacer une connexion d'un autre type pour utiliser celle-là : nécessité de créer une nouvelle base et réintégrer les différents éléments (formulaires,​ requêtes, rapports, code).
  
 =====Avec l'​extension libreoffice-mysql-connector===== =====Avec l'​extension libreoffice-mysql-connector=====
 +<note important>​Cette extension n'est plus disponible depuis la version Noble !</​note>​
 +
 [[:​tutoriel:​comment_installer_un_paquet|Installez le paquet]] **[[apt>​libreoffice-mysql-connector]]** qui est une extension de connexion MariaDB/​MySQL pour LibreOffice. [[:​tutoriel:​comment_installer_un_paquet|Installez le paquet]] **[[apt>​libreoffice-mysql-connector]]** qui est une extension de connexion MariaDB/​MySQL pour LibreOffice.
 Si vous avez des problèmes avec ce pilote sous Ubuntu 16.04 voir [[https://​bugs.launchpad.net/​ubuntu/​+source/​libreoffice/​+bug/​1577316|ici]]. Comme indiqué en ce lieu le JDBC fonctionne. Si vous avez des problèmes avec ce pilote sous Ubuntu 16.04 voir [[https://​bugs.launchpad.net/​ubuntu/​+source/​libreoffice/​+bug/​1577316|ici]]. Comme indiqué en ce lieu le JDBC fonctionne.
Ligne 43: Ligne 45:
 ===== Avec un pilote JDBC ===== ===== Avec un pilote JDBC =====
 ==== Avec un paquet ==== ==== Avec un paquet ====
 +<note important>​Cette solution n'est plus disponible dans les versions actuellement supportées. Voir la 2e solution.</​note>​
 [[:​tutoriel:​comment_installer_un_paquet|Installez le paquet]] **[[apt>​libha-jdbc-java]]**. [[:​tutoriel:​comment_installer_un_paquet|Installez le paquet]] **[[apt>​libha-jdbc-java]]**.
 Dans Libreoffice,​ avant de pouvoir utiliser un pilote JDBC, vous devez ajouter son chemin de classe. Choisissez //Outils -> Options -> LibreOffice -> Avancé//, et cliquez sur le bouton Chemin de classe. Naviguez jusqu'​à l'​archive qui se trouve dans ///​usr/​share/​java/​mysql-connector-java-5.1.28.jar//​. Après avoir ajouté les informations de chemin, redémarrez LibreOffice. Dans Libreoffice,​ avant de pouvoir utiliser un pilote JDBC, vous devez ajouter son chemin de classe. Choisissez //Outils -> Options -> LibreOffice -> Avancé//, et cliquez sur le bouton Chemin de classe. Naviguez jusqu'​à l'​archive qui se trouve dans ///​usr/​share/​java/​mysql-connector-java-5.1.28.jar//​. Après avoir ajouté les informations de chemin, redémarrez LibreOffice.
Ligne 54: Ligne 57:
  
 ==== En utilisant le pilote JDBC inclus ==== ==== En utilisant le pilote JDBC inclus ====
-A la création ​de la base, au 2e écran, choisir « Connecter en utilisant JDBC (Java Database Connectivity) ».+A la création ​d'un fichier LO Base, au 2e écran, choisir « Connecter en utilisant JDBC (Java Database Connectivity) ».
  
-Pour une base existante, aller au menu //Édition -> Base de données -> Type de connexion//​. Dans la liste déroulante « Type de base de données »,​ choisissez « MySQL(JDBC) ».+Pour un fichier Base existant, aller au menu //Édition -> Base de données -> Type de connexion//​. Dans la liste déroulante « Type de base de données »,​ choisissez « MySQL(JDBC) ».
  
-A l'​écran suivant, pour « Classe de pilote JDBC MySQL », indiquer : ''​com.mysql.jdbc.Driver''​+A l'​écran suivant, pour « Classe de pilote JDBC MySQL », indiquer : ''​com.mysql.cj.jdbc.Driver''​
  
-Remplir les autres informations quant à l'​adresse du serveur, le nom de la base de données et de l'​utilisateur.+Remplir les autres informations quant à l'​adresse du serveur, le nom de la base de données et de l'​utilisateur ​(si la base MySQL est installée sur le même poste, le serveur est "​localhost",​ sinon l'​adresse IP du poste serveur. Le port est 3306).
  
-Enfin, on peut cliquer sur le bouton « Tester la classe » pour vérifier que la connexion marche (à condition que la procédure suivante ait été réalisée).+Enfin, on peut cliquer sur le bouton « Tester la classe » pour vérifier que la connexion marche (à condition que les paragraphes suivants aient été réalisés).
  
-Pour que la connexion fonctionne, comme décrit au-dessus, ​il faut encore ajouter un Chemin de classe dans les paramètres Java de LibreOffice. +En effet, pour que la connexion fonctionne il faut encore ajouter un Chemin de classe dans les paramètres Java de LibreOffice ​//Outils -> Options -> LibreOffice -> Avancé// puis cliquez sur le bouton « Chemin de classe »
-Pour cela, télécharger le connecteur sur le [[https://​dev.mysql.com/​downloads/​connector/​j/​|site de MySQL]]. Il s'agit d'une archive au format .deb ; elle ne va pas être utilisée telle quelle. Il faut l'​ouvrir avec un gestionnaire d'​archives et naviguer vers /​data.tar.zst/​./​usr/​share/​java/​ pour trouver le fichier //​mysql-connector-java-8.0.29.jar//. C'est ce fichier qu'il faut extraire et enregistrer sur votre ordinateur ​avant d'​en ​indiquer ​le Chemin de classe ​dans les options de LibreOffice,​ rubrique « Avancé ».+ 
 +Auparavant, télécharger le connecteur sur le [[https://​dev.mysql.com/​downloads/​connector/​j/​|site de MySQL]]. Il s'agit d'une archive au format .deb ; elle ne va pas être utilisée telle quelle. Il faut l'​ouvrir avec un gestionnaire d'​archives ​(comme File Roller) ​et naviguer vers /​usr/​share/​java/ ​(chemin constaté pour la version 9.1.0 en janvier 2025) pour trouver le fichier //​mysql-connector-j-x.x.x.jar//. C'est ce fichier qu'il faut extraire et enregistrer sur votre ordinateur ​puis indiquer ​son emplacement dans la boite de dialogue « Chemin de classe ».
  
 ===== Avec un pilote ODBC ===== ===== Avec un pilote ODBC =====
Ligne 79: Ligne 83:
 name: Mysql name: Mysql
 description:​ Mysql driver description:​ Mysql driver
-driver: ​+driver:
 ou en 64 bits:  /​usr/​lib/​x86_64-linux-gnu/​odbc/​libmyodbc.so ou en 64 bits:  /​usr/​lib/​x86_64-linux-gnu/​odbc/​libmyodbc.so
 setup: /​usr/​lib/​x86_64-linux-gnu/​odbc/​libodbcmyS.so setup: /​usr/​lib/​x86_64-linux-gnu/​odbc/​libodbcmyS.so
Ligne 100: Ligne 104:
 ===== Connection à la base de donnée===== ===== Connection à la base de donnée=====
  
-Dans LibreOffice ​+Dans LibreOffice, ​utiliser les étapes ci-dessus. 
-  * Onglet //Fichier -> Nouveau -> Base de données//, + 
-  * Cochez la case //Se connecter à une base de données existante//,​ puis sélectionnez //Mysql// dans la liste au-dessous, +  * Dans le cas d'une connexion directe et JDBC remplissez ​aussi les champs :
-  * Cliquez sur le bouton //​Suivant//,​ +
-  * Si vous avez installé:​ +
-    * L'​extension,​ choisissez //Connecter directement//,​  +
-    * Si vous avez activé le pilote ODBC choisissez //​Connection utilisant ODBC//, +
-    * Si vous avez activé le pilote JDBC choisissez //​Connection utilisant JDBC//, +
-  * Cliquez sur le bouton //Suivant// +
-  * Dans le cas d'une connexion directe et JDBC remplissez les champs ​comme suit:+
     *  //Nom de la base de données//, entrez //le nom de votre base de donnée//;     *  //Nom de la base de données//, entrez //le nom de votre base de donnée//;
-    * "​Serveur",​ entrez //​localhost//,​ si la base se trouve sur votre pc, ou l'​adresse IP d'un autre serveur, ​+    * "​Serveur",​ entrez //​localhost//,​ si la base se trouve sur votre pc, ou l'​adresse IP d'un autre serveur, ​port 3306
   * Cliquez sur le bouton //​Suivant//,​   * Cliquez sur le bouton //​Suivant//,​
   * Tapez le nom d'​utilisateur que vous utilisez pour accéder à votre base, et suivant la configuration de votre serveur MySQL, cochez ou non //Password required//,   * Tapez le nom d'​utilisateur que vous utilisez pour accéder à votre base, et suivant la configuration de votre serveur MySQL, cochez ou non //Password required//,
Ligne 118: Ligne 115:
 Il faut bien-sûr que l'​utilisateur existe dans la configuration de [[mysql|MySQL]] (ou utilisez [[phpmyadmin|phpMyAdmin]]). Si l'​accès se fait à partir d'un autre poste, il faut là aussi créer un utilisateur spécifique avec les privilèges adéquats et configurer MySQL pour un droit d'​accès de l'​extérieur (voir sur la page [[mysql#​connexions_entrantes|MySQL]]). Il faut bien-sûr que l'​utilisateur existe dans la configuration de [[mysql|MySQL]] (ou utilisez [[phpmyadmin|phpMyAdmin]]). Si l'​accès se fait à partir d'un autre poste, il faut là aussi créer un utilisateur spécifique avec les privilèges adéquats et configurer MySQL pour un droit d'​accès de l'​extérieur (voir sur la page [[mysql#​connexions_entrantes|MySQL]]).
  
-Ça y est, vous avez maintenant accès à votre base MySQL sous LibreOffice. ​+Ça y est, vous avez maintenant accès à votre base MySQL sous LibreOffice.
  
 ===== Notes ===== ===== Notes =====
Ligne 127: Ligne 124:
 ===== Voir aussi ===== ===== Voir aussi =====
   * Page principale de [[:​LibreOffice]]   * Page principale de [[:​LibreOffice]]
 +  * La page de création d'une base de données dans la [[https://​books.libreoffice.org/​en/​BG73/​BG7302-CreatingADatabase.html#​toc9 |documentation de LO 7.3 (en)]] qui reprend toutes les connexions.
 +  * Le [[https://​wiki.documentfoundation.org/​images/​4/​43/​GuideBase64.pdf |guide 6.4 en français]] avec les mêmes informations à la page 70.
  
 ---- ----
  
 //​Contributeurs : [[:​utilisateurs:​Yeffries]],​ [[:​utilisateurs:​l_africain|L'​Africain]],​ [[:​utilisateurs:​Poupoul2]]//​ //​Contributeurs : [[:​utilisateurs:​Yeffries]],​ [[:​utilisateurs:​l_africain|L'​Africain]],​ [[:​utilisateurs:​Poupoul2]]//​
  • libreoffice_mysql.1655210730.txt.gz
  • Dernière modification: Le 14/06/2022, 14:45
  • par arverne73