Skip to content

Commit 29ab6fe

Browse files
committed
fix: 修复数据库密码中有特殊符号导致db连接不上的bug
1 parent ea5223c commit 29ab6fe

File tree

2 files changed

+6
-24
lines changed

2 files changed

+6
-24
lines changed

config/db_config.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,9 @@
1515
RELATION_DB_PWD = os.getenv("RELATION_DB_PWD", "123456")
1616
RELATION_DB_USER = os.getenv("RELATION_DB_USER", "root")
1717
RELATION_DB_HOST = os.getenv("RELATION_DB_HOST", "localhost")
18-
RELATION_DB_PORT = os.getenv("RELATION_DB_PORT", "3306")
18+
RELATION_DB_PORT = os.getenv("RELATION_DB_PORT", 3306)
1919
RELATION_DB_NAME = os.getenv("RELATION_DB_NAME", "media_crawler")
2020

21-
RELATION_DB_URL = f"mysql://{RELATION_DB_USER}:{RELATION_DB_PWD}@{RELATION_DB_HOST}:{RELATION_DB_PORT}/{RELATION_DB_NAME}"
2221

2322
# redis config
2423
REDIS_DB_HOST = "127.0.0.1" # your redis host

db.py

Lines changed: 5 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -26,36 +26,19 @@
2626
from var import db_conn_pool_var, media_crawler_db_var
2727

2828

29-
def parse_mysql_url(mysql_url) -> Dict:
30-
"""
31-
从配置文件中解析db链接url,给到aiomysql用,因为aiomysql不支持直接以URL的方式传递链接信息。
32-
Args:
33-
mysql_url: mysql://root:{RELATION_DB_PWD}@localhost:3306/media_crawler
34-
35-
Returns:
36-
37-
"""
38-
parsed_url = urlparse(mysql_url)
39-
db_params = {
40-
'host': parsed_url.hostname,
41-
'port': parsed_url.port or 3306,
42-
'user': parsed_url.username,
43-
'password': parsed_url.password,
44-
'db': parsed_url.path.lstrip('/')
45-
}
46-
return db_params
47-
48-
4929
async def init_mediacrawler_db():
5030
"""
5131
初始化数据库链接池对象,并将该对象塞给media_crawler_db_var上下文变量
5232
Returns:
5333
5434
"""
55-
db_conn_params = parse_mysql_url(config.RELATION_DB_URL)
5635
pool = await aiomysql.create_pool(
36+
host=config.RELATION_DB_HOST,
37+
port=config.RELATION_DB_PORT,
38+
user=config.RELATION_DB_USER,
39+
password=config.RELATION_DB_PWD,
40+
db=config.RELATION_DB_NAME,
5741
autocommit=True,
58-
**db_conn_params
5942
)
6043
async_db_obj = AsyncMysqlDB(pool)
6144

0 commit comments

Comments
 (0)