mirror of
https://github.com/snailyp/gemini-balance.git
synced 2026-09-05 23:56:37 +08:00
feat: 支持mysql socket连接
This commit is contained in:
@@ -1,5 +1,6 @@
|
|||||||
# MySQL数据库配置
|
# MySQL数据库配置
|
||||||
MYSQL_HOST=gemini-balance-mysql
|
MYSQL_HOST=gemini-balance-mysql
|
||||||
|
#MYSQL_SOCKET=/run/mysqld/mysqld.sock
|
||||||
MYSQL_PORT=3306
|
MYSQL_PORT=3306
|
||||||
MYSQL_USER=gemini
|
MYSQL_USER=gemini
|
||||||
MYSQL_PASSWORD=change_me
|
MYSQL_PASSWORD=change_me
|
||||||
|
|||||||
@@ -144,6 +144,7 @@ app/
|
|||||||
| :--------------------------- | :------------------------------------------------------- | :---------------------------------------------------- |
|
| :--------------------------- | :------------------------------------------------------- | :---------------------------------------------------- |
|
||||||
| **数据库配置** | | |
|
| **数据库配置** | | |
|
||||||
| `MYSQL_HOST` | 必填,MySQL 数据库主机地址 | `localhost` |
|
| `MYSQL_HOST` | 必填,MySQL 数据库主机地址 | `localhost` |
|
||||||
|
| `MYSQL_SOCKET` | 可选,MySQL 数据库 socket 地址 | `/var/run/mysqld/mysqld.sock` |
|
||||||
| `MYSQL_PORT` | 必填,MySQL 数据库端口 | `3306` |
|
| `MYSQL_PORT` | 必填,MySQL 数据库端口 | `3306` |
|
||||||
| `MYSQL_USER` | 必填,MySQL 数据库用户名 | `your_db_user` |
|
| `MYSQL_USER` | 必填,MySQL 数据库用户名 | `your_db_user` |
|
||||||
| `MYSQL_PASSWORD` | 必填,MySQL 数据库密码 | `your_db_password` |
|
| `MYSQL_PASSWORD` | 必填,MySQL 数据库密码 | `your_db_password` |
|
||||||
|
|||||||
@@ -20,6 +20,7 @@ class Settings(BaseSettings):
|
|||||||
MYSQL_USER: str
|
MYSQL_USER: str
|
||||||
MYSQL_PASSWORD: str
|
MYSQL_PASSWORD: str
|
||||||
MYSQL_DATABASE: str
|
MYSQL_DATABASE: str
|
||||||
|
MYSQL_SOCKET: str = None
|
||||||
|
|
||||||
# API相关配置
|
# API相关配置
|
||||||
API_KEYS: List[str]
|
API_KEYS: List[str]
|
||||||
|
|||||||
@@ -12,7 +12,10 @@ from app.log.logger import get_database_logger
|
|||||||
logger = get_database_logger()
|
logger = get_database_logger()
|
||||||
|
|
||||||
# 数据库URL
|
# 数据库URL
|
||||||
DATABASE_URL = f"mysql+pymysql://{settings.MYSQL_USER}:{settings.MYSQL_PASSWORD}@{settings.MYSQL_HOST}:{settings.MYSQL_PORT}/{settings.MYSQL_DATABASE}"
|
if settings.MYSQL_SOCKET:
|
||||||
|
DATABASE_URL = f"mysql+pymysql://{settings.MYSQL_USER}:{settings.MYSQL_PASSWORD}@/{settings.MYSQL_DATABASE}?unix_socket={settings.MYSQL_SOCKET}"
|
||||||
|
else:
|
||||||
|
DATABASE_URL = f"mysql+pymysql://{settings.MYSQL_USER}:{settings.MYSQL_PASSWORD}@{settings.MYSQL_HOST}:{settings.MYSQL_PORT}/{settings.MYSQL_DATABASE}"
|
||||||
|
|
||||||
# 创建数据库引擎
|
# 创建数据库引擎
|
||||||
# pool_pre_ping=True: 在从连接池获取连接前执行简单的 "ping" 测试,确保连接有效
|
# pool_pre_ping=True: 在从连接池获取连接前执行简单的 "ping" 测试,确保连接有效
|
||||||
|
|||||||
Reference in New Issue
Block a user