phpstudy如何查看魔兽世界数据库
phpStudy自带的何查MySQL管理工具叫phpMyAdmin,但魔兽世界私服数据库动辄几百张表,看魔用它翻找简直像在垃圾堆里淘宝。兽世真正干活的界数据库人得用Navicat或者HeidiSQL,直接连端口3306,何查用户名root,看魔密码你装phpStudy时设的兽世那个——别告诉我你留了默认的root,那等于把服务器密码贴在网吧键盘上。界数据库
登录后先别急着看表。何查魔兽世界的看魔核心数据分三块:characters库管角色,world库管地图生物掉落,兽世auth库管账号。界数据库你要是何查想查某个玩家的装备,得进characters库找character_inventory表,看魔再关联item_instance表。兽世这俩表用item_guid字段对接,新手常在这翻车——直接拿item_entry去匹配物品ID,结果查出来一堆乱七八糟的数字。
具体操作流程是这样:打开Navicat,新建连接,主机填127.0.0.1,端口3306。连上后双击characters库,点查询按钮,粘贴这段SQL:
SELECT ci.slot, ii.itemEntry, ii.itemLevel FROM character_inventory ci INNER JOIN item_instance ii ON ci.item_guid = ii.guid WHERE ci.guid = 你的角色编号;
把"你的角色编号"换成角色表里查到的guid。跑完就能看到该角色背包里每件装备的槽位和物品等级。要是想查金币,直接SELECT money FROM characters WHERE guid = 编号,返回的数字除以10000就是金币数,别问我为什么是四位数,暴雪当年偷懒没做货币单位换算。
有个坑必须提醒你——phpStudy默认的MySQL版本可能跟你的魔兽核心不兼容。我前阵子帮朋友排查,他用的AC 6.0核心配MySQL 8.0,结果world库里的creature_template表字段类型全变了,老SQL语句直接报错。解决办法是去phpStudy面板把数据库切到MySQL 5.7,或者改核心源码里的数据库连接驱动。别嫌麻烦,8.0的严格模式能让你查个掉落表都弹出十几个warning。
真正查数据库时,最实用的不是查单个角色,而是批量查异常数据。比如你想知道哪个账号在刷金币,直接跑:
SELECT a.username, c.name, c.money FROM account a INNER JOIN characters c ON a.id = c.account WHERE c.money > 1000000000 ORDER BY c.money DESC;
这能秒杀所有余额过亿的角色。不过要小心,有些核心会把金钱存在bankbag里,那得查character_bankbag表。经验之谈:查私服数据别太依赖工具的可视化界面,手写SQL比点鼠标快十倍,特别是当你面对几千行数据的物品表时。
最后说个冷门的——phpStudy的MySQL默认开启二进制日志,跑上几天能吃掉几个G硬盘。查完数据记得去phpStudy面板关掉log-bin选项,否则某天数据库突然连不上,八成是磁盘被日志塞满了。别问我怎么知道的,上周刚帮人清完一个12G的binlog文件,那哥们一脸懵地看着我删文件,还以为是中毒了。
(责任编辑:综合)
