I. Prérequis▲
- Un serveur MySQL installé.
- LibreOffice installé sur le poste client.
II. Permettre l'accès distant sur le serveur MySQL▲
Éditez le fichier /etc/mysql/my.cnf.
Afin de permettre les connexions depuis d'autres ordinateurs, modifiez la ligne bind-adress par celle-ci :
bind-address =
0.0.0.0
#Redémarrez mysql
/etc/init.d/mysql restart
#puis con
nectez-vous à mysql
mysql -u root -p
Ajoutez un utilisateur ayant les droits depuis un poste distant (remplacez localhost par % dans la commande GRANT)
#pour un accès en lecture seulement :
GRANT SELECT ON votrebase.*
TO 'user'@
'%' IDENTIFIED BY 'votreMotDePasse';
#Si vous souhaitez un accès total à la base :
GRANT ALL ON votrebase.*
TO 'user'@
'%' IDENTIFIED BY 'votreMotDePasse';
Si nécessaire, ouvrez le pare-feu pour permettre les connexions MySQL (port 3306). Voici un exemple si votre Firewall est à base d'IPtables et que votre LAN est 192.168.0.* :
iptables -A INPUT -p tcp --destination-port 3306 -m iprange --src-range 192.168.0.1-192.168.0.254 -j ACCEPT
III. Sur le poste client▲
Installez le connecteur sur le client :
sudo apt-get install libreoffice-mysql-connector
Voilà, on a tout ce qu'il faut. L'application LibreOffice Base servira d'intermédiaire entre Calc et le serveur MySQL. Depuis un Microsoft Office, MS Query aurait servi d'intermédiaire, mais il est plus transparent que oooBase.
Ouvrez LibreOffice -> Nouveau document-base de données.
Dans l'assistant de base de données, choisissez « Se connecter à une base de données existante » et « Mysql » comme ci-dessous :
« Connecter directement » (c'est plus simple) :
Ma base s'appelle tinaderp. Adaptez en fonction de la vôtre, ainsi que l'IP du serveur :
Puis l'utilisateur MySQL :
À l'étape suivante, surtout cochez « Oui, je souhaite que l'assistant référence la base de données ». Ce sera beaucoup plus facile pour retrouver les données dans le tableur. Puis cliquez sur terminer.
Il vous demande d'enregistrer le fichier. Je vous conseille de donner au fichier le nom de votre base de données.
On arrive sur cette interface :
III-A. Créer quelques requêtes▲
Mon objectif ici est de pouvoir faire des statistiques. La BDD étant relativement brute. Si j'importe la base de données directement dans un tableur, ça va être pénible (ceux qui ont fait déjà des formules de recherches matricielles dans un tableur me comprendront). Je vais donc créer les requêtes SQL qui me feront les sous-totaux, les décomptages tout en liant les tables afin d'avoir les intitulés et pas les clés. Bref, je veux avoir les tableaux que je n'aurai qu'à sélectionner pour établir les graphiques. Si ce n'est pas votre cas, que le contenu des tables de façon brute vous suffit. Passez directement au chapitre suivant.
Requêtes -> Créer une requête en mode SQL :
Testez la requête puis enregistrez-la. Donnez-lui un nom, le mien serait, par exemple : sommeParTypeParMois. Enregistrez votre fichier de base de données.
III-B. Dans le tableur Calc▲
Données -> Table de pilote -> Créer
Source de données enregistrée sous LibreOffice :
- sélectionnez votre base (qui a le nom du fichier base) ;
- le type : feuille si vous voulez une table brute, ou requête si vous voulez récupérer les données d'une requête :
Organisez comme il faut les colonnes, les lignes et les données en faisant du glisser-déposer :
IV. Enjoy !▲
V. Remerciements▲
Merci à Gnieark de nous permettre de publier son tutoriel.
Merci à jacques_jean et ClaudeLeloup pour la relecture orthographique.