首页 > 数据库 >Acore_auth数据库全面解释

Acore_auth数据库全面解释

时间:2024-07-04 09:00:33浏览次数:17  
标签:禁言 区服 数据库 账户 auth acore ID Acore

简单说吧,如果你不会源码修改编译,单单玩数据库和DBC就能做出很有特色的端。Azerothcore的数据库是Mysql,所以你得下载个SQL管理工具,大家比较常用的是Navicat SQL,我常用的是HeidiSQL(免费)。连接数据库的话,地址、用户名和密码请自行查找服务端内的worldserver.conf文件,示例:

LoginDatabaseInfo     = "127.0.0.1;3306;acore;123456;acore_auth"
WorldDatabaseInfo     = "127.0.0.1;3306;acore;123456;acore_world"
CharacterDatabaseInfo = "127.0.0.1;3306;acore;123456;acore_characters"
#127.0.0.1是登陆地址,3306是端口,acore是该数据库用户名,123456是密码,acore_XXX是数据库名称

Azerothcore数据库有三个:acore_auth、acore_characters和acore_world。因为一篇文章讲不完SQL修改,所以本文只把acore_auth各表的含义和字段解释列出来,后期陆续更新acore_world和acore_characters数据库,形成一个系列文章,最后将对实现某些功能做实操讲解。

这篇文章系列会很长很长,也是基于官方Wiki和各类教程,自行翻译糅合而成,如有错误还请指明。请善用Ctrl+F搜索和右边的目录侧边栏。

再次强调,各位若想玩数据库,就先把数据库系列文章详读、熟读!

言归正传,acore_auth数据库目前有 14 张表格,主要存储与用户帐户相关的信息:

account

id

唯一的帐户 ID。

username

用户的帐户名称,限制为 20 个字符。

salt

加密密码。

verifier

用户名和密码加密。

session_key

未知。

totp_secret

谷歌身份验证器的Key,不重要。

email

账户的邮箱地址。

reg_mail

与此帐户关联的注册电子邮件地址。

joindate

账户创建时间。

last_ip

最后一次登录的IP地址。

failed_logins

账户登录失败的次数。

locked

该字段为1时,账户只能从最后一次登录的IP地址登录;为0时,可以从任意IP地址登录。

last_login

最后一次登录的时间。

totaltime

玩家账户内所有角色的游玩时间合计,包括玩家已删除的角色。

online

0代表离线,1代表在线。

expansion

控制该账户的游玩版本,举例:玩家的客户端虽然是WLK335,但该字段的数值为1,则他只能玩经典世界和TBC的内容,而进去不诺森德。

数值 版本
0 经典世界
1 TBC
2 WLK

mutetime

账户被禁言的剩余时间。

mutereason

账户被禁言的原因。

muteby

赋予静音的(.mute)命令权限的角色名称。

locale

登录到这个账户的客户所使用的语言。

os

存储有关客户操作系统的信息(Win和Mac)。

recruiter

该账户招募的朋友账户ID。

account_access

简单理解,这张表存储了某区服的GM信息。

id

唯一的帐户 ID,参照account表的id字段。

gmlevel

帐户的GM级别,不同的级别可以使用不同的命令,级别可以参照acore_world数据库内command表的security字段。

RealmID

账户所在的区服,参照realmlist表内的ID。

comment

顾名思义:备注,可自行填写。

account_banned

这个表格列出了所有被禁止的账户,以及禁令何时(或是否)到期的日期。

id

唯一的帐户 ID。

bandate

帐户被禁止的日期。

unbandate

帐户将被自动解禁的日期。假如设置一个小于当前日期的值,实际上是一个永久禁止。

bannedby

禁用该账户的GM角色的名字。但如果是从控制台被禁止的,那这个值将是空的。

banreason

被禁止的原因。

active

数值0则这条禁令无效,数值1则这条禁令有效。

account_muted

该表包含其角色被指定为禁言的账户ID。

GM命令: .mute [$playerName] $timeInMinutes [$reason]

在$timeInMinutes分钟内,禁言$playerName(或当前选择的)角色账户中任何角色。玩家可以不在线。

guid

禁言账户的ID。这个账户上的所有角色都将在禁言期内被禁言。

mutedate

禁言开始的时间。

mutetime

禁言的时长(分钟)。

mutedby

发布禁言的GM名称。

mutereason

禁言的原因。

autobroadcast

这张表包含了你各个区服的广播信息,基于它们的权重随机播放。

realmid

定义这个广播信息属于哪个区服。对所有区服使用的话写:-1。

id

每个区服的唯一标识符。具有相同id的广播信息将相互覆盖而没有警告,假设1广播信息的realmid值设置为-1,那么你想在2区服里不播放1而是播放3广播信息,则readmid写2,id写3。

weight

整数值(不可为负值)。权重高的条目有更多机会被选中。

text

要广播的文本。可以使用颜色和物品、技能、任务链接形成的代码。

build_info

各类客户端信息。

ip_banned

这个表格包含了所有被禁止的IP,以及禁令何时(或是否)到期的日期。

ip

被禁止的IP地址。

bandate

该IP首次被禁止的日期。

unbandate

该IP将被解禁的日期。任何低于当前日期的日期基本上都被归类为永久禁止,因为它永远不会自动过期。

bannedby

禁用该IP的角色名字。该角色应该属于一个有权在游戏中使用.ban命令的账户。

banreason

所给出的禁止IP的理由。

logs

This table stores logs from Appender type database in config file. Example db appender:

Appender.DB=3,5,0

time

这个字符串被记录的时间。

realm

该日志字符串的区服ID(RealmID)。

type

配置中的Logger 名称,示例logger:

Logger.server=4,Console Server

level

取决于authserver.conf中的LogLevel:

Value Description
1 (Fatal)
2 (Error)
3 (Warning)
4 (Info)
5 (Debug)
6 (Trace)

string

被记录下来的实际字符串。

logs_ip_actions

记录logs_ip_actions 的表。

realmcharacters

这个表保存了每个账户在每个区服拥有的角色数信息,此表的数据由核心自动更改,不可自行更改。

realmid

区服的ID。

acctid

账户的ID。

numchars

该账户在该区服上拥有的角色数。

realmlist

这个表设置了所有可用的区服的信息。每一行控制一个不同的区服。

id

区服ID。数值必须>=0且必须唯一,它必须与worldserver.conf中的RealmID配置值相关。

name

区服的名称。这将出现在区服选择列表以及角色选择屏幕中。

address

世界服务器的互联网(WAN)或局域网(LAN)IP地址。如果只有你架设在局域网内,在这个地址使用127.0.0.1,如果想让互联网访问,请输入公网IP地址。

或者,你可以使用一个域名,比如: *example.com。

localAddress

本地IP地址,请填127.0.0.1。

port

服务端所运行的端口,在一台机子上运行了很多服务端,或者出于安全考虑,你可以自行更改这个端口。

icon

区服的ICON图,可标识为PVP或者RP服等,数值示例:

Icon Type
0 一般
1 PvP服
4 一般
6 RP服
8 RP PvP服

flag

区服的标志:

Flag Hex value Description
0 0x0
1 0x1 无效
2 0x2 离线
4 0x4 特定服
8 0x8 中型
16 0xF 中型
32 0x10 新服
64 0x20 建议服
128 0x40 满服

timezone

区服的时区,它将显示在realmlist的标签中,数值示例:

timezone displayed name
1 Development
2 United States
3 Oceanic
4 Latin America
5 Tournament
6 Korea
7 Tournament
8 English
9 German
10 French
11 Spanish
12 Russian
13 Tournament
14 Taiwan
15 Tournament
16 China
17 CN1
18 CN2
19 CN3
20 CN4
21 CN5
22 CN6
23 CN7
24 CN8
25 Tournament
26 Test Server
27 Tournament
29 CN9
30 Test Server 2
31 CN10
32 CTC
33 CNC
34 CN1/4
35 CN/2/6/9
36 CN3/7
37 Russian Tournament
38 CN5/8
39 CN11
40 CN12
41 CN13
42 CN14
43 CN15
44 CN16
45 CN17
46 CN18
47 CN19
48 CN20
49 Brazil
50 Italian
51 Hyrule
52 QA2 Test
53
54
55 Recommended Realm
56 Test
57 Recommended Realm
58
59 Future Test

allowedSecurityLevel

帐户登录到该区服所需的最低帐户gm级别。改变这个值会自动更新游戏中可见的区服列表,但必须重新启动世界服务器才能真正生效。可以建立个GM专属服。

population

该区服的玩家数量,每隔一段时间会自动更新。计算公式为:目前在线玩家数量/最大玩家数量* 2。在区服的列表中,低、中、高人口的阈值分别为0.5、1.0和2.0。

gamebuild

这个区服可使用的的客户端版本,示例:

Build Version Client Patch
5875 1.12.1
6005 1.12.2
8606 2.4.3
9947 3.1.3
10146 3.2.0
10505 3.2.2a
10571 3.3.0
11159 3.3.0a
11403 3.3.2
11623 3.3.3
11723 3.3.3a
12340 3.3.5a

secret_digest

记录 secret_digest 的表。

updates

记录了该数据库更新情况。

name

导入文件的文件名。

hash

来自导入文件的SHA1哈希值。

state

定义更新是否已发布、自定义或归档。

timestamp

文件被导入的时间。

speed

导入文件所需的时间(毫秒)。

updates_include

该表定义了更新所需要的目录。

path

更新目录。$表示相对于源目录。

state

定义该目录是否有发布的、自定义的或存档的更新。

uptime

这个表保存了服务器的正常运行时间。核心将自动更新最新条目的值。

realmid

区服的ID。

starttime

服务器启动的时间。

uptime

服务器的正常运行时间,以秒为单位。

maxplayers

连接的最大玩家数量。

revision

对服务端的详细修订。

version_db_auth

描述了该数据库的版本信息。

sql_rev

标识数值。

required_rev

不知道是啥,一般是空值。

date

Sql的修订日期。

2021_06_17_00

最后一次更新认证数据库的日期。请注意,这一栏会根据授权数据库的最后一次更新而自动改变。

标签:禁言,区服,数据库,账户,auth,acore,ID,Acore
From: https://www.cnblogs.com/colasdn/p/18282878

相关文章

  • Acore-world数据库之各类loot-template表全面解释
    前言Acore-world数据库涉及到掉落(不含扒窃)的表一共有11个,分别是:序号表名说明1creature_loot_template生物掉落表,其entry值对应creature_template表的和lootid值2disenchant_loot_template附魔分解掉落表,其entry值对应item_template表的DisenchantID值3fish......
  • 搭建论坛和mysql数据库安装和php安装
    目录概念步骤安装mysql8.0.30安装php安装Discuz概念搭建论坛的架构:lnmp+DISCUZ l表示linux操作系统n表示nginx前端页面的web服务m表示mysql数据库用来保存用户和密码以及论坛的相关内容p表示php动态请求转发的中间件步骤(已经提前安装了nginx)1.关闭......
  • 1.数据库的连接、创建会话与模型
    SQLAlchemy是一个强大的Python库,它让你可以用一种面向对象的方式来操作数据库(ORM技术)。在学习SQLAlchemy的过程中,需要一些基础知识的沉淀:Python基础、Python面向对象、MySQL数据库的诸多知识点……在此之前,你可能需要了解传统执行SQL语句和使用ORM的一些区别以及他们的概......
  • 不同系统间数据交换要通过 api 不能直接数据库访问
    很多大数据开发提供数据给外部系统直接给表结构,这是不好的方式。在不同系统间进行数据交换时,通过API(应用程序编程接口)而非直接访问数据库是现代系统集成的一种最佳实践。目录为什么要通过API进行数据交换如何通过API进行数据交换实现步骤使用Flask构建RESTfulAPI安装F......
  • csrf跨站请求,钓鱼网站实现示例,CSRF校验,CSRF相关装饰器,Auth模块,扩展Auth表
    ⅠDjango框架之csrf跨站请求【一】跨站请求伪造介绍【1】引入CSRF(Cross-SiteRequestForgery)跨站请求伪造是一种常见的网络攻击方式。攻击者通过诱导受害者访问恶意网站或点击恶意链接将恶意请求发送到目标网站上利用受害者在目标网站中已登录的身份来执行某些操作从而......
  • SQLServer数据库批量kill会话的脚本(慎用!)
    微软大佬提供的一个批量kill会话的脚本,很凶很暴力,慎用慎用慎用!尤其是涉及大事务时。請注意:如果資料庫還在正在Recovery階段無效,因為無法Kill系統Session,必須等候Recovery完畢(或是重建交易紀錄檔案)。/*Function:KillallSPIDonspecificdatabaseandRepairWri......
  • Neo4j图数据库操作
    Neo4j图数据库操作文章目录Neo4j图数据库操作1批量添加节点、关系1.1直接使用`UNWIND`批量创建关系1.2使用CSV文件批量创建关系1.3选择方法2索引2.1创建单一属性索引2.2创建组合属性索引2.3创建全文索引2.4列出所有索引2.5删除索引2.6注意事项3清空所......
  • Oracle数据库统计信息收集
    Oracle数据库统计信息收集重新收集表统计信息--重新收集表统计信息BEGINDBMS_STATS.GATHER_TABLE_STATS(OWNNAME=>'ORCL',TABNAME=>'XXX',ESTIMATE_PERCENT=>100,DEGREE=>4);END;重新收集列统计信息......
  • 小白也能懂的Mysql数据库索引详解
    核心概念主键索引/二级索引聚簇索引/非聚簇索引回表/索引覆盖索引下推联合索引/最左联合匹配前缀索引explain一、[索引定义]1.索引定义在数据之外,数据库系统还维护着满足特定查找算法的数据结构,这些数据结构以某种方式引用(指向)数据,这样就可以在这些数据结构上实现......
  • Asp.Net Core -Authorizationz授权
    授权的内部实现参考动态授权参考 动态授权基于权限的授权1.定义权限-PermissionspublicclassPermissions{publicconststringAdmin="Admin";publicconststringUsers="Users";publicconststringUserCreate=Users+".Create";......