Files
Neo-ZQYY/scripts/ops/fix_admin_site_id.py

44 lines
1.5 KiB
Python
Raw Permalink 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.
# -*- coding: utf-8 -*-
"""修复 admin_users 表中 admin 用户的 site_id从 1 → 2790685415443269
根因admin 用户创建时 site_id 被设为 1但 meta.etl_task 中任务注册的
store_id 是 2790685415443269。JWT 中的 site_id 会被注入到 CLI --store-id
导致 _load_task_config 查询不到任何任务。
"""
import psycopg2
DSN = "postgresql://local-Python:Neo-local-1991125@100.64.0.4:5432/test_zqyy_app"
CORRECT_SITE_ID = 2790685415443269
def main():
conn = psycopg2.connect(DSN, connect_timeout=10)
try:
with conn.cursor() as cur:
# 先查看当前状态
cur.execute("SELECT id, username, site_id FROM admin_users")
rows = cur.fetchall()
print("修复前:")
for r in rows:
print(f" id={r[0]} username={r[1]} site_id={r[2]}")
# 更新 site_id
cur.execute(
"UPDATE admin_users SET site_id = %s WHERE site_id = 1",
(CORRECT_SITE_ID,),
)
updated = cur.rowcount
conn.commit()
print(f"\n已更新 {updated} 条记录的 site_id → {CORRECT_SITE_ID}")
# 验证
cur.execute("SELECT id, username, site_id FROM admin_users")
rows = cur.fetchall()
print("\n修复后:")
for r in rows:
print(f" id={r[0]} username={r[1]} site_id={r[2]}")
finally:
conn.close()
if __name__ == "__main__":
main()