home/versioned_docs/version-1.7.x/start/mysql-change.md
MYSQL is a reliable relational database. In addition to default built-in H2 database, Apache HertzBeat™ allow you to use MYSQL to store structured relational data such as monitoring information, alarm information and configuration information.
If you already have a MySQL environment and the MySQL version meets the requirements, you can skip directly to the database creation step.
Please ensure you are using a supported MySQL version. HertzBeat only supports MySQL 5.7+ or 8 versions. You can check the MySQL version with the following command:
$ mysql --version
mysql Ver 8.0.25 for Linux on x86_64 (MySQL Community Server - GPL)
Download and install the Docker environment For Docker installation, please refer to the Docker official documentation. After the installation, please verify in the terminal that the Docker version can be printed normally.
$ docker -v
Docker version 20.10.12, build e91ed57
Install MYSQl with Docker
$ docker run -d --name mysql \
-p 3306:3306 \
-v /opt/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
--restart=always \
mysql:5.7
-v /opt/data:/var/lib/mysql is local persistent mount of mysql data directory. /opt/data should be replaced with the actual local directory.
use $ docker ps to check if the database started successfully
mysql -uroot -p123456create database hertzbeat default charset utf8mb4 collate utf8mb4_general_ci;show databases;hertzbeat/ext-lib directory.Configure HertzBeat's configuration file
Modify hertzbeat/config/application.yml configuration file
Note⚠️The docker container way need to mount application.yml file locally, while you can use installation package way to unzip and modify hertzbeat/config/application.yml
Replace spring.database data source parameters, URL account and password.
For example:
spring:
datasource:
driver-class-name: org.h2.Driver
username: sa
password: 123456
url: jdbc:h2:./data/hertzbeat;MODE=MYSQL
hikari:
max-lifetime: 120000
jpa:
show-sql: false
database-platform: org.eclipse.persistence.platform.database.MySQLPlatform
database: h2
properties:
eclipselink:
logging:
level: SEVERE
Specific replacement parameters are as follows and you need to configure account according to the mysql environment:
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
username: root
password: 123456
url: jdbc:mysql://mysql:3306/hertzbeat?useUnicode=true&characterEncoding=utf-8&allowPublicKeyRetrieval=true&useSSL=false
hikari:
max-lifetime: 120000
jpa:
show-sql: false
database-platform: org.eclipse.persistence.platform.database.MySQLPlatform
database: mysql
properties:
eclipselink:
logging:
level: SEVERE
Note: The above applies to the method of downloading and installing the package. For local data source switching, simply complete the Database creation and modify the configuration in
hertzbeat-startup/src/main/resources/application.yml.
Start HertzBeat visit http://ip:1157/ on the browser You can use HertzBeat monitoring alarm, default account and password are admin/hertzbeat