« LINUX:Création de la base de données » : différence entre les versions

De WIKI sur Linux (ADB)
Aller à la navigation Aller à la recherche
Aucun résumé des modifications
Aucun résumé des modifications
Ligne 9 : Ligne 9 :


Un fichier SQL est disponible ci-dessous:
Un fichier SQL est disponible ci-dessous:
  [[Media:WATERBEAR:Dblocalisation.sql.zip|Télécharger le fichier ZIP des données pour la Belgique et la France sous forme SQL]]
  [[Media:LINUX:Dblocalisation.sql.zip|Télécharger le fichier ZIP des données pour la Belgique et la France sous forme SQL]]
Il faut le dézipper avec la commande suivante:
Il faut le dézipper avec la commande suivante:
  unzip Dblocalisation.sql.zip
  unzip Dblocalisation.sql.zip
Ligne 41 : Ligne 41 :


Un fichier d'un ensemble de script est disponible ci-dessous:
Un fichier d'un ensemble de script est disponible ci-dessous:
  [[Media:WATERBEAR:Geolocalisation.base.zip|Télécharger le fichier ZIP contenant un ensemble de scripts]]
  [[Media:LINUX:Geolocalisation.base.zip|Télécharger le fichier ZIP contenant un ensemble de scripts]]
Il faut le dézipper avec la commande suivante:
Il faut le dézipper avec la commande suivante:
  unzip Geolocalisation.base.zip
  unzip Geolocalisation.base.zip
Ligne 76 : Ligne 76 :


----
----
''->[[WATERBEAR:Api de localisation de Rues/Communes|retour à la page du menu sur l'API de GéoLocalisation]]''
''->[[LINUX:Api de localisation de Rues/Communes|retour à la page du menu sur l'API de GéoLocalisation]]''
__NOEDITSECTION__
__NOEDITSECTION__
[[Category:GéoLocalisation]]
[[Category:GéoLocalisation]]

Version du 6 décembre 2022 à 12:24

But

La base de données est un élément fondamental.


La base clé en main

La première option est de créer la base de données et d'y injecter les données de la Belgique et de la France déjà créee. Cette injection se fait dans un serveur MariaDB.

Un fichier SQL est disponible ci-dessous:

Télécharger le fichier ZIP des données pour la Belgique et la France sous forme SQL

Il faut le dézipper avec la commande suivante:

unzip Dblocalisation.sql.zip

Ce fichier est conçu pour un schéma portant le nom "dblocalisation". Si vous désirer changer de nom de schéma, il faut éditer ce fichier et changer dans les 30 premières lignes les occurrences "dblocalisation" par le nom désiré au niveau des commandes "DROP SCHEMA", "CREATE DATABASE" et "USE".

Pour créer ce schéma et importer les données, voici un exemple de script:


#!/bin/bash
CHEMIN=/produc/mysql.import
DBUSER=root
DBPW=MonMotDePasse
LISTE="dblocalisation"
for DB in $LISTE
do
 echo $DB
 /usr/bin/mysql --user=$DBUSER --password=$DBPW  < ${CHEMIN}/$DB.sql
done

Dans ce script, le schéma se nomme "dblocalisation" (5ème ligne). A adapter si nécessaire. Notons que ce script doit être exécutable.

Le fichier SQL à utilisé se trouve dans le répertoire "/produc/mysql.import" (2ème ligne) et se nomme du nom du schéma "dblocalisation.sql". A adapter selon vos désirs.

L'utilisateur MariaDB ayant tous droits est ici "root" (3ème ligne). A adapter selon votre installation.

Son mot de passe (4ème ligne) est à changer selon votre configuration.


Création de base du schéma

L'autre solution est de créer le schéma à vide et ensuite de la remplir à partir des données collectées sur le net.

Un fichier d'un ensemble de script est disponible ci-dessous:

Télécharger le fichier ZIP contenant un ensemble de scripts

Il faut le dézipper avec la commande suivante:

unzip Geolocalisation.base.zip

La première chose à faire est le paramétrage. Dans le répertoire extrait, il y a un fichier "config.bat" dont voici le contenu.


#!/bin/bash
BASE=/produc/geo
BASESQL="\/produc\/geo"
DATABASE=dblocalisation
DBUSER=root
DBPW=MonMotDePasse
OPTION=" -vv --show-warnings "

Il faut adapter sont contenu:

  • Les lignes 2 et 3 correspondent au répertoire où se trouve ce fichier "config.bat".
  • La valeur de la viariable "DATABASE" est changer selon vos désirs.
  • La variable "DBUSER" correspond à un utilisateur de MariaDB ayant tous les droits.
  • La variable "DBPW" contient le mot de passe de l'utilisateur mentionné sous la variable DBUSER.
  • La variable "OPTION" renseigne des options à utiliser avec la commande de ligne "mysql"; elle peut être vidée.

Ensuite vous allez dans le sous-répertoire "commun/base". Le script "base.sql" permet de créer le schéma de base strictement nécessaire. Il crée les tables "commune" et "rue". En consultant le fichier "create.base.sql", vous pouvez vous informer du contenu de ces tables. Les noms de champs sont assez explicites.

Par la même occasion, ajoutez les fonctions MySQL fournies en exécutant le script "fonction.bat" qui se trouve dans le même répertoire. Une de celles-ci sera nécessaire par la suite. La fonction "proper" permet de transformer le contenu d'un champs en nom propre. Par exemple, le nom de commune "fosses-la-ville" devient "Fosses-La-Ville".

Avant d'exécuter ces scripts, assurez-vous qu'ils sont bien exécutables. Tous les scripts à exécuter ont l'extension ".bat" (nostalgie du DOS); vous pouvez changer ces droits avec la commande de ligne suivante:

chmod 700 *.bat

Pour remplir ce schéma, on verra ce point dans l'article suivant.




->retour à la page du menu sur l'API de GéoLocalisation