| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 |
- # -*- 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())
|