chore: import upstream snapshot with attribution
This commit is contained in:
@@ -0,0 +1,103 @@
|
||||
---
|
||||
id: postgresql-change
|
||||
title: Use PostgreSQL Replace H2 Database to Store Metadata(Recommended)
|
||||
sidebar_label: Meta Store PostgreSQL (Recommended)
|
||||
---
|
||||
|
||||
PostgreSQL is an RDBMS emphasizing extensibility and SQL compliance. In addition to default built-in H2 database, Apache HertzBeat™ allows you to use PostgreSQL to store structured relational data such as monitoring information, alarm information and configuration information.
|
||||
|
||||
> If you have a PostgreSQL environment, you can skip directly to the database creation step.
|
||||
|
||||
## Install PostgreSQL via Docker
|
||||
|
||||
1. Download and install the Docker environment
|
||||
Docker tools download refer to [Docker official document](https://docs.docker.com/get-docker/)。
|
||||
After the installation you can check if the Docker version normally output at the terminal.
|
||||
|
||||
```shell
|
||||
$ docker -v
|
||||
Docker version 20.10.12, build e91ed57
|
||||
```
|
||||
|
||||
2. Install PostgreSQL with Docker
|
||||
|
||||
```shell
|
||||
docker run -d --name postgresql -p 5432:5432 -e POSTGRES_USER=root -e POSTGRES_PASSWORD=123456 -e TZ=Asia/Shanghai postgres:15
|
||||
```
|
||||
|
||||
use```$ docker ps```to check if the database started successfully
|
||||
|
||||
### Database creation
|
||||
|
||||
1. Enter postgreSQL or use the client to connect postgreSQL service
|
||||
|
||||
```shell
|
||||
su - postgres
|
||||
psql
|
||||
```
|
||||
|
||||
2. Create database named hertzbeat
|
||||
|
||||
```sql
|
||||
CREATE DATABASE hertzbeat;
|
||||
```
|
||||
|
||||
3. Check if hertzbeat database has been successfully created
|
||||
|
||||
```sql
|
||||
SELECT * FROM pg_database where datname='hertzbeat';
|
||||
```
|
||||
|
||||
### Modify hertzbeat's configuration file application.yml and switch data source
|
||||
|
||||
1. 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.
|
||||
|
||||
```yaml
|
||||
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: h2
|
||||
hibernate:
|
||||
ddl-auto: update
|
||||
properties:
|
||||
hibernate:
|
||||
dialect: org.hibernate.dialect.H2Dialect
|
||||
format_sql: true
|
||||
```
|
||||
|
||||
Specific replacement parameters are as follows and you need to configure account, ip, port according to the postgresql environment:
|
||||
|
||||
```yaml
|
||||
spring:
|
||||
datasource:
|
||||
driver-class-name: org.postgresql.Driver
|
||||
username: root
|
||||
password: 123456
|
||||
url: jdbc:postgresql://postgresql:5432/hertzbeat
|
||||
hikari:
|
||||
max-lifetime: 120000
|
||||
jpa:
|
||||
show-sql: false
|
||||
database: postgresql
|
||||
hibernate:
|
||||
ddl-auto: update
|
||||
properties:
|
||||
hibernate:
|
||||
dialect: org.hibernate.dialect.PostgreSQLDialect
|
||||
format_sql: true
|
||||
```
|
||||
|
||||
> Note: The above applies to the method of downloading and installing the package. For local data source switching, simply complete the [Database creation](./postgresql-change#database-creation) and modify the configuration in `hertzbeat-startup/src/main/resources/application.yml`.
|
||||
|
||||
**Start HertzBeat visit [http://ip:1157/](http://ip:1157/) on the browser You can use HertzBeat monitoring alarm, default account and password are admin/hertzbeat**
|
||||
Reference in New Issue
Block a user