Aller au contenu principal

Base de données

Installer le schéma et les scripts de base de données pour MyEMS.

Prérequis

MyEMS est compatible avec les serveurs de base de données compatibles MySQL suivants :

MySQL 8.0 (64 bits) ou version ultérieure

MariaDB 10.5 (64 bits) ou version ultérieure

SingleStore 7.0 ou version ultérieure

Déploiement

Exécutez les scripts suivants dans la ligne de commande MySQL, ou via d'autres outils clients MySQL tels que MySQL Workbench, Navicat, DBeaver, phpMyAdmin, etc.

cd ~/myems/database/install
mysql -u root -p < myems_billing_db.sql
mysql -u root -p < myems_carbon_db.sql
mysql -u root -p < myems_energy_baseline_db.sql
mysql -u root -p < myems_energy_db.sql
mysql -u root -p < myems_energy_model_db.sql
mysql -u root -p < myems_energy_plan_db.sql
mysql -u root -p < myems_energy_prediction_db.sql
mysql -u root -p < myems_fdd_db.sql
mysql -u root -p < myems_historical_db.sql
mysql -u root -p < myems_production_db.sql
mysql -u root -p < myems_reporting_db.sql
mysql -u root -p < myems_system_db.sql
mysql -u root -p < myems_user_db.sql

Les données de démonstration sont facultatives. Pour insérer les données de démonstration, exécutez les scripts suivants :

cd ~/myems/database/demo-cn
mysql -u root -p < myems_system_db.sql
astuce Comment résoudre l'erreur MySQL « access denied for user »

Ajouter un utilisateur avec accès distant

sudo mysql -u root -p

mysql>

CREATE USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '!MyEMS1';

mysql>

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';

mysql>

FLUSH PRIVILEGES;

mysql>

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '!MyEMS1';
astuce Comment modifier le classement du serveur MySQL avant la version 8.0
sudo nano /etc/mysql/my.cnf
[client]
default-character-set = utf8mb4
[mysql]
default-character-set = utf8mb4
[mysqld]
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
astuce Comment résoudre l'erreur MySQL « a packet bigger than 'max_allowed_packet' bytes »

Modifier le fichier my.cnf ou my.ini (généralement situé dans /etc/mysql/) dans la section mysqld et ajouter :

max_allowed_packet=100M

Ou exécutez ces commandes dans une console MySQL connectée au même serveur :

set global net_buffer_length=1000000;
set global max_allowed_packet=1000000000;
attention

Ne pas installer la base de données dans un conteneur Docker pour un environnement de production