« LINUX:Création de la base de données » : différence entre les versions
Aucun résumé des modifications |
Aucun résumé des modifications |
||
(2 versions intermédiaires par le même utilisateur non affichées) | |||
Ligne 1 : | Ligne 1 : | ||
---- | |||
''→ [[LINUX:Api de localisation de Rues/Communes|retour à la page du menu sur l'API de GéoLocalisation]]'' | |||
---- | |||
__FORCETOC__ | __FORCETOC__ | ||
=But= | =But= | ||
Ligne 9 : | Ligne 12 : | ||
Un fichier SQL est disponible ci-dessous: | Un fichier SQL est disponible ci-dessous: | ||
[[Media: | [[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 44 : | ||
Un fichier d'un ensemble de script est disponible ci-dessous: | Un fichier d'un ensemble de script est disponible ci-dessous: | ||
[[Media: | [[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 79 : | ||
---- | ---- | ||
'' | ''→ [[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]] |
Dernière version du 6 décembre 2022 à 12:46
→ retour à la page du menu sur l'API de GéoLocalisation
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