Guide d'installation Linux - Avancé
Version 1.4 par knogrix le 2022/05/16 11:19
Digdash
MySQL
La base de données Mysql va servir à stocker les éléments suivants : Commentaires, données d'audit et formulaires de saisies.
Cette base est plus pérenne qu'une base H2 c'est pourquoi nous préconisons son utilisation. Si vous possédez déjà une base de données sur laquelle digdash peut écrire et lire alors passez à l'étape de configuration.
Installation
sudo apt install mysql-server
#Démarrage de mysql
sudo systemctl start mysql
#Arrêt de mysql
sudo systemctl stop mysql
#Reload pour prise en compte de modification de configuration
sudo systemctl reload mysql
sudo systemctl force-reload mysql
#Connaître la version
mysql --version
sudo systemctl start mysql
#Arrêt de mysql
sudo systemctl stop mysql
#Reload pour prise en compte de modification de configuration
sudo systemctl reload mysql
sudo systemctl force-reload mysql
#Connaître la version
mysql --version
Lancer mysql_secure_installation, cela va permettre de sécuriser l'installation
sudo mysql_secure_installation
# Répondez oui à toutes les étapes
# Répondez oui à toutes les étapes
# Ouvrir la console mysql
sudo mysql
# Modifier la méthode d'authentification
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password by 'mynewpassword';
# Puis quitter mysql
exit;
# Relancez ensuite mysql_secure_installation
sudo mysql
# Modifier la méthode d'authentification
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password by 'mynewpassword';
# Puis quitter mysql
exit;
# Relancez ensuite mysql_secure_installation
Configuration
Nous allons créer une base pour chaque domaine et chaque module (par exemple prod_ddaudit et dev_ddaudit et ainsi de suite)
Dans l'exemple ci dessous nous allons considérer qu'il n'existe qu'un environnement 'default'.
# Lancer mysql
sudo mysql -u root -p
# Créer toutes les bases de données nécessaires domaine_module
CREATE DATABASE default_ddaudit;
CREATE DATABASE default_commentaires;
CREATE DATABASE default_saisie;
# Créer un user pour chaque base de données domaine_user_module
CREATE USER 'default_user_ddaudit'@'localhost' IDENTIFIED BY 'mynewpassword';
CREATE USER 'default_user_commentaires'@'localhost' IDENTIFIED BY 'mynewpassword';
CREATE USER 'default_user_saisie'@'localhost' IDENTIFIED BY 'mynewpassword';
# Attribuer les droits aux utilisateurs sur les bonnes bases
GRANT ALL PRIVILEGES ON default_commentaires.* TO 'default_user_commentaires'@'localhost';
GRANT ALL PRIVILEGES ON default_ddaudit.* TO 'default_user_ddaudit'@'localhost';
GRANT ALL PRIVILEGES ON default_saisie.* TO 'default_user_saisie'@'localhost';
sudo mysql -u root -p
# Créer toutes les bases de données nécessaires domaine_module
CREATE DATABASE default_ddaudit;
CREATE DATABASE default_commentaires;
CREATE DATABASE default_saisie;
# Créer un user pour chaque base de données domaine_user_module
CREATE USER 'default_user_ddaudit'@'localhost' IDENTIFIED BY 'mynewpassword';
CREATE USER 'default_user_commentaires'@'localhost' IDENTIFIED BY 'mynewpassword';
CREATE USER 'default_user_saisie'@'localhost' IDENTIFIED BY 'mynewpassword';
# Attribuer les droits aux utilisateurs sur les bonnes bases
GRANT ALL PRIVILEGES ON default_commentaires.* TO 'default_user_commentaires'@'localhost';
GRANT ALL PRIVILEGES ON default_ddaudit.* TO 'default_user_ddaudit'@'localhost';
GRANT ALL PRIVILEGES ON default_saisie.* TO 'default_user_saisie'@'localhost';