# -*- coding: utf-8 -*- """把 cqlongwu1988001 绑为"玖扬复古176"主账号 (server_users 表)。 - 单主账号唯一: 应用层在 bind() 里先清同 server 旧主 - 幂等 """ import pymysql CONN = dict(host="47.99.164.66", port=3306, user="root", password="hn02le.34lkdLKD", database="996cq", charset="utf8mb4", autocommit=True, connect_timeout=10) def main(): conn = pymysql.connect(**CONN) try: with conn.cursor() as cur: cur.execute( "SELECT id FROM users WHERE username=%s", ("cqlongwu1988001",)) user = cur.fetchone() if not user: print("FAIL: 用户 cqlongwu1988001 不在 MySQL users 表。先跑 A1 登录。") return 1 user_id = user[0] cur.execute( "SELECT id FROM servers WHERE server_name=%s", ("玖扬复古176",)) server = cur.fetchone() if not server: print("FAIL: 区服'玖扬复古176'不在 MySQL servers 表。先跑 B1。") return 1 server_id = server[0] # bind 主账号 with conn.cursor() as cur2: # 先清同 server 其它主 cur2.execute( "UPDATE server_users SET is_main=0 " "WHERE server_id=%s AND user_id<>%s AND is_main=1", (server_id, user_id)) # upsert cur2.execute(""" INSERT INTO server_users (server_id, user_id, server_name, username, is_main) VALUES (%s, %s, %s, %s, 1) ON DUPLICATE KEY UPDATE server_name = VALUES(server_name), username = VALUES(username), is_main = 1 """, (server_id, user_id, "玖扬复古176", "cqlongwu1988001")) cur.execute(""" SELECT id, server_id, user_id, server_name, username, is_main, created_at FROM server_users WHERE server_id=%s AND user_id=%s """, (server_id, user_id)) row = cur.fetchone() print("OK 绑定成功:") print(f" id = {row[0]}") print(f" server = {row[3]} (id={row[1]})") print(f" user = {row[4]} (id={row[2]})") print(f" is_main = {row[5]}") print(f" created_at = {row[6]}") print() print(" -> 每天 00:00 daily_zone_sync.py 会用此账号 token 调 getTodayOpen") return 0 finally: conn.close() if __name__ == "__main__": import sys sys.exit(main())