انتقل إلى المحتوى الرئيسي

قاعدة البيانات

تثبيت مخطط قاعدة البيانات والنصوص البرمجية لنظام MyEMS.

المتطلبات الأساسية

يعمل MyEMS مع خوادم قواعد البيانات المتوافقة مع MySQL التالية.

MySQL 8.0 (64بت) أو أحدث

MariaDB 10.5 (64بت) أو أحدث

SingleStore 7.0 أو أحدث

النشر

نفِّذ النصوص البرمجية التالية في سطر أوامر MySQL، أو نفِّذها في أدوات عميل MySQL الأخرى مثل MySQL Workbench أو Navicat أو DBaver أو phpMyAdmin، إلخ.

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 'تم رفض الوصول للمستخدم'

إضافة مستخدم للوصول عن بعد

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';
كيفية تغيير COLLATE لخادم MySQL قبل الإصدار 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
كيفية إصلاح خطأ MySQL "حزمة أكبر من 'max_allowed_packet' بايت"

قم بتغيير ملف my.cnf أو my.ini (عادةً ما يوجد في /etc/mysql/) ضمن قسم mysqld واضبط:

max_allowed_packet=100M

أو يمكنك تشغيل هذه الأوامر في وحدة تحكم MySQL المتصلة بنفس الخادم:

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

احذر

لا تقم بتثبيت قاعدة البيانات داخل حاوية Docker لبيئة الإنتاج