본문으로 바로 가기

데이터베이스

MyEMS에 대한 데이터베이스 스키마와 스크립트를 설치합니다.

선행 조건

MyEMS는 다음과 같은 MySQL 호환 데이터베이스 서버에서 작동합니다.

MySQL 8.0 (64비트) 이상

MariaDB 10.5 (64비트) 이상

SingleStore 7.0 이상

배포

MySQL 명령줄에서 다음 스크립트를 실행하거나, MySQL Workbench, Navicat, DBeaver, phpMyAdmin 등 다른 MySQL 클라이언트 도구에서 실행합니다.

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

데모 데이터는 선택 사항입니다. 데모 데이터를 삽입하려면 다음 스크립트를 실행합니다.

cd ~/myems/database/demo-cn
mysql -u root -p < myems_system_db.sql
MySQL 'access denied for user' 오류 수정 방법

원격 접속 사용자 추가

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';
MySQL 8.0 이전 버전에서 COLLATE 변경 방법
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
MySQL "a packet bigger than 'max_allowed_packet' bytes" 오류 수정 방법

mysqld 섹션 아래의 my.cnf 또는 my.ini 파일(일반적으로 /etc/mysql/에 있음)을 변경하고 다음을 설정합니다:

max_allowed_packet=100M

또는 동일한 서버에 연결된 MySQL 콘솔에서 다음 명령을 실행할 수 있습니다:

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

프로덕션 환경에서는 Docker 컨테이너에 데이터베이스를 설치하지 마십시오.