mateclaw/mateclaw-server/src/main/resources/application-mysql.yml

28 lines
1.6 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

spring:
datasource:
# createDatabaseIfNotExist=true — MySQL Connector/J 首次连接时若 DB 不存在则自动 CREATE DATABASE。
# 本仓库所有建表语句都显式指定 utf8mb4 / utf8mb4_unicode_ci不依赖 DB 默认字符集,所以即便
# 自动创建的库用了 server 默认字符集也不会影响数据。要求 DB user 具备 CREATE 权限(默认 root 可)。
# 如果使用受限账号,请提前手工执行:
# CREATE DATABASE mateclaw CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
# characterEncoding takes a Java NIO charset name (UTF-8), not a MySQL
# server charset name (utf8mb4) — passing utf8mb4 here throws
# UnsupportedEncodingException at driver init. Java's UTF-8 already
# encodes the full Unicode range including supplementary-plane chars
# and emoji, so 4-byte characters travel intact. To make the server
# treat the connection as utf8mb4, force the connection collation via
# connectionCollation=utf8mb4_unicode_ci — that is what prevents the
# `Data truncation: Incorrect string value` errors on emoji/CJK ext.
url: jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:mateclaw}?createDatabaseIfNotExist=true&useUnicode=true&characterEncoding=UTF-8&connectionCollation=utf8mb4_unicode_ci&useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
driver-class-name: com.mysql.cj.jdbc.Driver
username: ${DB_USERNAME:root}
password: ${DB_PASSWORD:mateclaw123}
flyway:
locations:
- classpath:db/migration/mysql
h2:
console:
enabled: false