Serveurs de base de données |
Au boulot, ma gestion commerciale utilise des bases de données (BDD) Access. devant le
nombre croissant de postes connectés des problèmes apparaissent de plus en plus; notamment un
"oubli" d'Access de déverrouiller certains enregistrements. Bref il était temps de passer sur un
système client-serveur; la modification du logiciel (Écrit en VB6), bien que longue, ne posait
pas de problème. Mais quel serveur de BDD utiliser ? Avec comme OS Windows, deux solutions semblent
évidentes : MySQL et Microsoft SQL Server. Donc installation de ces deux bêtes après avoir
lu quelques infos sur le web.
On va partir sur la version 10.0.14 stable. C'est sur https://downloads.mariadb.org/
Elle est hyper simple et rapide.
Le premier écran permet de sélectionner les fonctionnalitées à
installer. Je conseille l'installation de HeidiSQL.
Le deuxième écran permet de saisir quelques paramètres :
- Donner un mot de passe pour root (A ne pas oublier)
- Autoriser les connexions extérieures
- Ne pas choisir UTF8 par défaut
et valider.
... et le service mysqld démarre ... magique ! Il faut moins de 3 minutes pour obtenir un
serveur opérationnel, c'est absolument fantastique !
Maintenant on va utiliser la console; rien qui ne fasse peur quand on a connu DOS, FLEX et autre CP/M.
Commandes en mode console
|
[mysqld]
#Chaque serveur dans le cas de la réplication doit avoir un numéro distinct
server_id=1
#Le répertoire des données
datadir=C:\Mes documents\MySQL
#Le port sur lequel le serveur écoute
port=3306
#Empêcher certains comportements du serveur
sql_mode="STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION"
#Le moteur de stockage Innodb qui permet les clés étrangères et les contraintes d’intégrité
default_storage_engine=innodb
#Les logs binaires ne sont indispensable que si l'on veut faire une réplication de base
log-bin=mysql-bin
#Pour éviter que les logs binaires ne monopolise l'espace disque
expire_logs_days=10
#Avec un fichier pour chaque table, la structure sera plus claire
innodb_file_per_table
#La taille du cache alloué à InnoDB
innodb_buffer_pool_size=100M
#La taille des logs de récupération sur crash
innodb_log_file_size=50M
[client]
port=3306
/* * Second server */ $i++; /* Authentication type */ $cfg['Servers'][$i]['auth_type'] = 'config'; /* Server parameters */ $cfg['Servers'][$i]['host'] = 'NOM_SERVEUR'; $cfg['Servers'][$i]['connect_type'] = 'tcp'; $cfg['Servers'][$i]['user'] = 'NOM_USER'; $cfg['Servers'][$i]['password'] = 'MOT_DE_PASSE'; $cfg['Servers'][$i]['hide_db'] = '(mysql|information_schema|phpmyadmin)'; $cfg['Servers'][$i]['compress'] = false; /* Select mysqli if your server has it */ $cfg['Servers'][$i]['extension'] = 'mysql'; $cfg['Servers'][$i]['AllowNoPassword'] = true;Vider le cache du navigateur avant utilisation. Maintenant phpMyAdmin propose de choisir le serveur.
On va partir sur la version "2008 EXPRESS with tools" : Fichier : SQLEXPRWT_x86_FRA.exe
Cette version inclut le SQL Management Studio nécessaire
pour accéder au serveur.
Mais chez Microsoft rien n'est simple et comme j'opère à partir d'un vieux Windows XP pro, il faudra auparavant installer (et dans l'ordre siouplait) :
Elle est affreusement longue et compliquée; il est rare de réussir du premier coup
...
Première petite astuce : il ne FAUT PAS que le nom de la session Windows soit identique au nom de
l'ordinateur !
Allez on y va ! clic-clic sur SQLEXPRWT_x86_FRA.exe