Ir al contenido principal

Base de Datos

Instala el esquema y los scripts de la base de datos para MyEMS.

Requisitos previos

MyEMS es compatible con los siguientes servidores de bases de datos compatibles con MySQL.

MySQL 8.0 (64 bits) o posterior

MariaDB 10.5 (64 bits) o posterior

SingleStore 7.0 o posterior

Despliegue

Ejecuta los siguientes scripts en la línea de comandos de MySQL, o ejecútalos en otras herramientas cliente de MySQL como 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

Los datos de demostración son opcionales. Para insertar datos de demostración, ejecuta los siguientes scripts:

cd ~/myems/database/demo-cn
mysql -u root -p < myems_system_db.sql
Cómo solucionar el error de MySQL 'access denied for user' (acceso denegado para el usuario)

Agregar un usuario con acceso remoto

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';
Cómo cambiar la COLLATION para el servidor MySQL anterior a la versión 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
Cómo solucionar el error de MySQL "a packet bigger than 'max_allowed_packet' bytes" (un paquete más grande que 'max_allowed_packet' bytes)

Modifica el archivo my.cnf o my.ini (generalmente se encuentra en /etc/mysql/) en la sección mysqld y establece:

max_allowed_packet=100M

o puedes ejecutar estos comandos en una consola de MySQL conectada al mismo servidor:

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

Precaución

No instales la base de datos en un contenedor Docker para un entorno de producción