暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

万里数据库GreatDB新增Information Schema表

原创 Dbb 2024-05-16
160

Information Schema表

为方便查看GreatDB cluster表、节点、集群状态的信息,增加了Information Schema表。

视图列表

名称说明
GREATDB_ALTER_TABLE_TASK集群中alter table任务概览,含各阶段处理情况
GREATDB_ALTER_TABLE_SUBTASKalter table子任务及当前阶段进度
GREATDB_BACKUP_NODES集群中用于备份的节点及其状态
GREATDB_BACKUP_TASKS备份任务详细
GREATDB_BACKUP_TASK_ROUTINE备份任务拓扑路由,各个增量备份依赖的层次及依赖的全量备份
GREATDB_BINLOG_SERVER_STATUSbinlog server 同步数据的任务状态显示
GREATDB_CONNECTION_INFOsqlnode到datanode连接对应关系
GREATDB_CONNECTION_POOLsqlnode到datanode连接池状态
GREATDB_DATA_LOCK_WAITS全局的innodb锁等待视图,不包含锁的具体信息
GREATDB_DATANODES集群中的datanode及其状态
GREATDB_DATANODES_DATA_LOCK_WAITS集群所有shard中innnodb锁等待视图
GREATDB_DATANODE_STATUS各个datanode部分status属性值,便于查看
GREATDB_DATANODE_VARIABLES各个datanode部分global variables的值,便于查看
GREATDB_DCSTATS当前sqlnode中字典缓存使用情况
GREATDB_MIGRATE_TABLE_TASK集群中migrate table任务概览,含各阶段处理情况
GREATDB_MIGRATE_TABLE_SUBTASKmigrate table子任务及当前阶段进度
GREATDB_SHARDS集群中的shard及其状态
GREATDB_SQLNODES集群中的sqlnode及其状态
GREATDB_SQLNODES_CONNECTION_INFO集群所有sqlnode中GREATDB_CONNECTION_INFO的集合
GREATDB_SQLNODE_STATUS各个sqlnode部分status的值,便于查看
GREATDB_SQLNODE_VARIABLES各个sqlnode部分global variables的值,便于查看
GREATDB_TABLE_DISTRIBUTION表类型、在后端shard的分布情况以及后端表引擎类型
GREATDB_TASK集群中后台任务(alter,migrate,backup)
GREATDB_ZONES当前集群中机房信息
GREATDB_TRX当前节点上的greatdb事务信息
GREATDB_GLOBAL_TRX集群中所有sqlnode节点上greatdb事务信息
GREATDB_GLOBAL_DEADLOCK_RECORD展示最近一次greatdb上全局死锁信息

视图详细说明

GREATDB_ALTER_TABLE_TASK

字段名类型说明
TASK_IDBIGINT任务的id
TABLE_NAMEVARCHAR被修改表的名称,格式为"db.tble"
INFOVARCHAR输入的ddl语句
ALTER_STATUSVARCHAR任务的执行状态:REGISTED,RUNNING,COMPLETE,ABORT
STAGE_SEQUENCEINT任务阶段序号
STAGEVARCHAR任务阶段名:
模式一(全量倒换):
CREATE TABLE:创建新结构临时表
COPY DATA:全量数据导入临时表
APPLY LOG:应用增量binlog到临时表
CATCH LOG:锁表并应用完全部增量binlog
RENAME:临时表改名为正式表
模式二(使用后端online-ddl特性):
PREPARE:准备阶段,获取表锁
EXECUTING:进行online ddl修改
COMPLETED_SUBTASK_NUMINT子任务当前阶段完成个数
UNKNOWN_SUBTASK_NUMINT子任务未能正确获取状态的个数
SUBTASK_NUMINT当前任务子任务总个数(分区表的每个分区均为一个子任务)

集群中alter table的任务概览。每个阶段一条记录,记录中包含该阶段中子任务各数及子任务完成数目。该功能增加时的版本为5.0.8.

GREATDB_ALTER_TABLE_SUBTASK

字段名类型说明
TASK_IDINT任务的id
SUB_TASK_IDINT子任务的id(分区表的每个分区均为一个子任务)
SHARD_NAMEVARCHAR子任务所在的shard
TABLE_NAMEVARCHAR任务对应的表名
BACKEND_TABLE_NAMEVARCHAR子任务对应后端表的名称“db.table”。可能与前端表名不同
STAGEVARCHAR当前子任务的阶段
PROGRESSVARCHAR当前任务进度0% - 100%

alter table子任务详情,每个子任务一条记录。记录中包含当前子任务的执行状态及进度。该功能增加时的版本为5.0.8.

GREATDB_BACKUP_NODES

字段名类型说明
NODE_IDBIGINT该backup_node的id
NODE_NAMEVARCHARbackup_node的名称
UUIDVARCHAR该backup_node的uuid
HOSTVARCHARip或主机名称
PORTINT备份实例端口号
STATUSVARCHAR备份节点状态:ERROR / ONLINE

该视图展示备份节点的名称、地址、端口、当前状态等信息。该功能增加时的版本为5.0.8.

GREATDB_BACKUP_TASKS

该视图仅在备份节点中存在

字段名类型说明
BACKUP_NAMEVARCHAR所属备份的名称
BACKUP_NODE_HOSTVARCHAR该备份子任务所在的备份节点 hostname
BACKUP_NODE_PORTINT该备份子任务所在的备份节点的端口号
BACKUP_LEVELINT全量备份为 0,基于全量的增量为 1,基于 level=1 的增量基础上的增量则为 2,依次递增
BASED_BACKUP_NAMEVARCHAR上一次备份的名称 (仅在增量备份中设置)
DATA_TYPEVARCHAR备份的节点类型 SQLNODE / DATANODE
SHARD_NAMEVARCHAR该备份所属的shard名(仅备份datanode时设置)
START_GTIDVARCHAR备份起始的 GTID 信息
END_GTIDVARCHAR备份结束的 GTID 信息
BACKUP_PATHVARCHAR备份文件的存储路径
BACKUP_STAGEVARCHARCOMPLETE:表示备份成功完成;
ABORT:备份任务失败,不能用作数据恢复;
RUNNING:当前备份还在执行过程中,同样不能用于恢复

该视图展示当前失败、完成、备份中的备份任务。包含备份任务的详细信息如数据类型、备份文件路径、增量/全量备份,基备份等。该功能增加时的版本为5.0.8.

GREATDB_BACKUP_TASK_ROUTINE

该视图仅在备份节点中存在

字段名类型说明
BACKUP_NAMEVARCHAR备份的名称
BACKUP_LEVELINT该备份在备份路径上的位置
BACKUP_STAGEVARCHAR备份状态
BACKUP_ROUTINEVARCHAR备份路径,包含从全量备份开始的全部备份拓扑路由信息

该视图展示备份任务从全量备份开始的各个备份的拓扑路由信息。如创建了全量备份A1,接着创建了增量备份B1,B2。该视图用于展示三者之间的关系即

A1 -> B1 -> B2。该功能增加时的版本为5.0.8.

GREATDB_BINLOG_SERVER_STATUS

该视图仅在binlog server节点中存在

字段名类型说明
RPL_TYPEVARCHAR同步数据任务的类型(sqlnode_rpl,表示同步sqlnode节点的数据,datanode_rpl,表示同步datanode节点的数据)
SOURCE_SHARD_IDINT源数据shard的id,sqlnode_rpl不需要此信息
SOURCE_SHARD_NAMEVARCHAR源数据shard的名称,sqlnode_rpl不需要此信息
SOURCE_NODE_IDVARCHAR源数据节点的id,sqlnode_rpl不需要此信息
SOURCE_NODE_NAMEVARCHAR源数据节点的名称,sqlnode_rpl不需要此信息
SOURCE_HOSTVARCHAR源数据节点的主机或ip
SOURCE_PORTINT源数据节点的端口号
NODE_STATEVARCHAR源数据节点的状态
SECONDS_BEHIND_SOURCEINT同步数据任务与源节点之间的延时,单位秒
LAST_IO_ERRORVARCHARbinlog server 同步日志错误
LAST_SQL_ERRORVARCHARbinlog server 执行sql错误

该视图是binlog server 同步数据的任务状态显示。该功能增加时的版本为5.0.8。

GREATDB_CONNECTION_INFO

字段名类型说明
THREAD_IDBIGINTsqlnode对应连接线程的thread_id,如果是内部线程没有注册thread_id该值为NULL, 和 performance_schema.threads 的THREAD_ID 列等效
PROCESSLIST_IDINTsqlnode对应的connection_id(),如果是BACKGROUND 线程该值为NULL,和 performance_schema.threads 的 PROCESSLIST_ID 列等效
DATANODE_CONNECTION_IDBIGINT后端连接的connection_id()
TYPEVARCHAR连接的种类,包括'POOL','OUTER','UNKNOW'。'POOL' 代表连接池的连接;'OUTER'代表不放入连接池中的连接;'UNKNOW'未知类型连接。正常情况下只会显示'POOL' ,和'OUTER'
SHARD_IDBIGINT后端连接shard的shard id
NODE_IDBIGINT后端连接节点的node id

该功能增加时的版本为5.0.8。

GREATDB_CONNECTION_POOL

字段名类型说明
NODE_NAMEVARCHARdatanode的名称
TOTALINT总连接数
IDELINT空闲连接数

该视图存储sqlnode向datanode连接池的信息。该功能增加时的版本为5.0.8。

GREATDB_DATANODES

字段名类型说明
NODE_IDBIGINT该datanode的id
NODE_NAMEVARCHARdatanode的名称
SHARD_IDBIGINT归属shard的id
SHARD_NAMEVARCHAR归属shard的名称
HOSTVARCHARip或主机名称
PORTINTdatanode实例端口号
NODE_TYPEVARCHAR节点类型
NODE_MGR:节点为MGR集群的成员
NODE_SINGLE:独立节点,独自组成shard
ZONE_NAMEVARCHARdatanode节点所属的机房名
ZONE_IDINTdatanode节点所属机房的id号
NODE_STATEVARCHAR节点状态
STATE_INIT:初始化状态,节点不可用
STATE_ACTIVE:就绪状态(主节点,可读写)
STATE_STANDBY:就绪状态(从节点,不提供读写服务,可作备份节点)
STATE_RECOVERING: 恢复MGR中,不提供读写服务
SERVER UUID ERROR: 节点uuid异常
SERVER SHUTDOWN OR NETWORK ERROR: 实例关闭或网络异常
STATE_ERROR: 脱离shard集群,处于error状态
EXECUTED_GTIDVARCHAR同系统参数@@executed_gtid。表示数据节点执行的gtid信息,可以通过比对同一个shard中不同数据节点的gtid,检查节点是否同步应用了最新数据(注意:即使节点间不存在延迟,在一个持续写入的场景中,同一个shard中不同数据节点的显示的结果也可能不一样,不同节点间的值可能存在几秒的时间差值)
RECEIVED_TRANSACTION_SETVARCHAR节点为NODE_MGR时,显示数据节点接收的事务 gtid 信息

该视图展示各个datanode节点的地址、端口、当前状态、MGR状态、内部事务运行状态等信息。该功能增加时的版本为5.0.8。

GREATDB_DATANODE_STATUS

字段名类型说明
DATANODEVARCHARdatanode的名称
VARIABLE_NAMEVARCHAR状态名称
VALUEVARCHAR状态值

为方便查DATANODE上的状态属性值,可在sqlnode通过此视图查询任意datanode的状态值。如果一个 datanode 节点故障,导致无法连接,则上述查询不会显示该节点的结果。该功能增加时的版本为5.0.8。

GREATDB_DATANODE_VARIABLES

字段名类型说明
DATANODEVARCHARdatanode的名称
VARIABLE_NAMEVARCHAR系统变量名称
VALUEVARCHAR系统变量值

为方便查DATANODE上的系统变量值,可在sqlnode通过此视图查询任意datanode的系统变量值。并且这些系统变量的值是通过SHOW GLOBAL VARIABLES获取的。如果一个 datanode 节点故障,导致无法连接,则上述查询不会显示该节点的结果。该功能增加时的版本为5.0.8。

GREATDB_DCSTATS

字段名类型说明
CACHE_NAMEVARCHAR缓存类型名,含:SQLNODE, SHARD, DATANODE, TABLE
CACHE_SIZEBIGINT缓存容量,0表示无限制
CACHE_INSTANCEBIGINT缓存实例数
CACHE_ELEMENTSBIGINT缓存内对象个数
LRU_ELEMENTSBIGINT缓存中LRU链表对象个数

该视图主要作用为查看表的数据字典缓存。当表的数据字典缓存过小,需要适当条大缓存容量。该功能增加时的版本为5.0.8。

GREATDB_MIGRATE_TABLE_TASK

字段名类型说明
TASK_IDBIGINT迁移任务的id
OBJECT_NAMEVARCHAR迁移任务对象的名称,db.table
INFOVARCHAR输入的ddl语句
MIGRATE_STATUSVARCHAR任务的执行状态:REGISTED,RUNNING,COMPLETE,ABORT
STAGE_SEQUENCEINT任务阶段序号
STAGEVARCHAR任务阶段名:
CREATE TABLE:目的端创建目标表
COPY REMOTE DATA:全量数据导入到目的表
APPLY_REMOTE_LOG:应用增量binlog数据
CATCH_REMOTE_LOG:锁表并应用完增量binlog
CHANGE_TOPOLOGY:修改数据字典表分布信息
COMPLETED_SUBTASK_NUMINT子任务当前阶段完成个数
UNKNOWN_SUBTASK_NUMINT子任务未能正确获取状态的个数
SUBTASK_NUMINT当前任务子任务总个数(分区表的每个分区均为一个子任务)

集群中表迁移的任务概览。每个阶段一条记录,记录中包含该阶段中子任务各数及子任务完成数目。该功能增加时的版本为5.0.8。如果执行过删除shard的操作,该系统表的COMPLETED_SUBTASK_NUM和UNKNOWN_SUBTASK_NUM不会显示已删除的shard上执行的迁移任务数目。

GREATDB_MIGRATE_TABLE_SUBTASK

字段名类型说明
TASK_IDINT任务的id
SUB_TASK_IDINT子任务的id(分区表的每个分区均为一个子任务)
OBJECT_NAMEVARCHAR迁移对象的名称,db.table
FROM_SHARD_NAMEVARCHAR表所在源shard名
TO_SHARD_NAMEVARCHAR表所在目的shard名(缩容时,global表该字段为空)
BACKEND_TABLE_NAMEVARCHAR子任务对应后端表的名称“db.table”。可能与前端表名不同
STAGEVARCHAR当前子任务的阶段
PROGRESSVARCHAR当前任务进度0% - 100%
ERRORVARCHAR任务失败后的错误信息

该功能增加时的版本为5.0.8。

GREATDB_SHARDS

字段名类型说明
SHARD_IDBIGINT该shard的id
SHARD_NAMEVARCHARshard的名称
SHARD_STATEVARCHARSHARD_INIT: 添加shard后的初始状态,需要初始化
SHARD_ONLINE: 就绪状态,可提供服务
SQLD_VERSION_MISMATCH: shard内各节点版本不一致错误
DATADICT_NEED_UPGRADE: shard内各节点需要升/降级
SHARD_ERROR: 其它错误状态
SUSPENDVARCHARON表示挂起状态。缩容时挂起shard,建新表时不在此shard创建后端表。但仍可提供读写服务

该视图展示各个shard的id、名称及当前的状态等。该功能增加时的版本为5.0.8。

GREATDB_SQLNODES

字段名类型说明
UUIDVARCHARsqlnode的uuid值
HOSTVARCHARip或主机名称
PORTINTsqlnode实例端口号
ZONE_NAMEVARCHARsqlnode节点所属的机房名
ZONE_IDINTsqlnode节点所属机房的id号
STATUSVARCHARsqlnode节点状态:
ERROR:节点状态错误
UNKNOWN:节点处于未知状态
ONLINE:就绪状态
RECOVERING:恢复中
ORPHAN:在sqlnode MGR但未添加到cluster
EXECUTED_GTIDVARCHAR同系统参数@@executed_gtid
RECEIVED_TRANSACTION_SETVARCHARreplication_connection_status中Received_transaction_set的值

该视图展示集群中各个sqlnode节点的地址、端口、状态等信息。该功能增加时的版本为5.0.8。

GREATDB_SQLNODE_STATUS

字段名类型说明
SQLNODEVARCHAR其它非当前sqlnode的hostname+port
VARIABLE_NAMEVARCHAR状态名称
VALUEVARCHAR状态值

为方便查其它sqlnode上的状态属性值,可在当前sqlnode通过此视图查询其它sqlnode的状态值。如果一个 sqlnode 节点故障,导致无法连接,则上述查询不会显示该节点的结果。该功能增加时的版本为5.0.8。

GREATDB_SQLNODE_VARIABLES

字段名类型说明
SQLNODEVARCHAR其它非当前sqlnode的hostname+port
VARIABLE_NAMEVARCHAR系统变量名称
VALUEVARCHAR系统变量值

为方便查其它sqlnode上的系统变量值,可在当前sqlnode通过此视图查询其它sqlnode的系统变量值。并且这些系统变量的值是通过SHOW GLOBAL VARIABLES获取的。如果一个 sqlnode 节点故障,导致无法连接,则上述查询不会显示该节点的结果。该功能增加时的版本为5.0.8。

GREATDB_TABLE_DISTRIBUTION

字段名类型说明
SCHEMA_NAMEVARCHAR用户表的db名
TABLE_NAMEVARCHAR用户表的表名
BACKEND_ENGINEVARCHAR后端表的引擎类型(目前只支持InnoDB)
DISTRIBUTE_MODEVARCHAR用户表的类型
NORMAL: 非分区表,只在一个shard上建后端表
GLOBAL: 全局表,每个shard上均有一个副本
PARTITION: 分区表
SHARD_NAMEVARCHAR后端表所在shard的名称
PARTITION_NAMEVARCHAR后端分区表的名称(非partition表时为空,前后端表名一致)
PARTITION_IDINT后端表的id序号从0开始递增(非partition表该值为0)

该表用于展示GreatDB表在后端的分布情况。当表类型为partition表或global表时,可能有多行数据。该功能增加时的版本为5.0.8。

GREATDB_TASK

字段名类型说明
TASK_IDBIGINT任务的id
TASK_TYPEVARCHARXA_RECOVER: xa事务恢复(后台task,只有一个)
SHARD_RECOVER: shard恢复(后台task,只有一个)
SHARD_UPGRADE: 升级shard(后台task,只有一个)
ALTER_TABLE: 修改表
MIGRATE_TABLE: 迁移表
BACKUP: 备份任务
INFOVARCHARtask的相关信息。
STATUSVARCHAR任务的执行状态:REGISTED,RUNNING,COMPLETE,ABORT
OWNER_INSTANCE_HOSTVARCHAR持有当前任务的机器的地址(ip或主机名)
OWNER_INSTANCE_PORTINT持有当前任务实例的端口号

该视图是集群后台task的概览。该功能增加时的版本为5.0.8。

GREATDB_ZONES

字段名类型说明
ZONE_NAMEVARCHAR机房名称
ZONE_IDINT机房id,范围为 [0, 8]
CITYVARCHAR机房所属城市
ELECT_WEIGHTINT机房选举权重值,范围 [0, 9]

该视图主要作用为查看集群中机房部署信息。该功能增加时的版本为5.0.8。

GREATDB_DATA_LOCK_WAITS

字段名类型说明
Requesting_SQLNodebigint等待锁的用户会话所在的SQLNode节点
Requesting_ThreadIDbigint unsigned等待锁的用户会话的Thread ID
Requesting_PIDbigint unsigned等待锁的用户会话的Processlist ID(如果没有显示NULL)
Requesting_Shardbigint等待锁的后端连接所在的shard节点
Requesting_DataNode_PIDbigint等待锁的后端连接的Processlist ID
Requesting_Trx_Idbigint等待锁的greatdb事务ID
Requesting_Trx_Weightbigint等待锁的greatdb事务权重
Requesting_Trx_Statevarchar(20)等待锁的greatdb事务状态
Blocking_SQLNodebigint持有锁的用户会话所在的SQLNode节点
Blocking_ThreadIDbigint unsigned持有锁的用户会话的Thread ID
Blocking_PIDbigint unsigned持有锁的用户会话的Processlist ID(如果没有显示NULL)
Blocking_Shardbigint持有锁的后端连接所在的shard节点,这个值与Requesting_Shard一致
Blocking_DataNode_PIDbigint持有锁的后端连接的Processlist ID
Blocking_Trx_Idbigint持有锁的greatdb事务ID
Blocking_Trx_Weightbigint持有锁的greatdb事务权重
Blocking_Trx_Statevarchar(20)持有锁的greatdb事务状态

该视图用于显示全局的innodb锁等待关系。该功能增加时的版本为5.0.8。

greatdb_datanodes_data_lock_waits

字段名类型说明
SHARD_IDbigintSHARD ID
NODE_IDbigintDATANODE_ID
REQUESING_PIDbigint unsigned后端等待锁会话的processlist id
BLOCKING_PIDbigint unsigned后端持有锁会话的processlist id

该视图用于显示所有shard中innodb锁等待关系。该功能增加时的版本为5.0.8。

greatdb_sqlnodes_connection_info

字段名类型说明
SQLNODE_IDbigintsqlnode id
THREAD_IDbigintsqlnode用户会话的thread id
PROCESSLIST_IDint unsignedsqlnode用户会话的processlist id
DATANODE_PIDbigint后端连接对应的processlist id
SHARD_IDbigint后端连接对应的shard id
NODE_IDbigint后端连接对应的datanode id

该使视图用于显示所有sqlnode中前后端连接的对应关系。该功能增加时的版本为5.0.8。

greatdb_trx

字段名类型说明
TRX_IDbigint unsignedgreatdb事务的本地ID
TRX_PROCESSLIST_IDbigint unsigned连接ID
TRX_START_TIMEdatetime开始时间
TRX_QUERYvarchar(1024)查询语句
TRX_TRACE_NUMbigint unsigned和后端的交互次数
如调用一个shard的连接成功发送一个语句,那么trx_trace_num就会加2,访问连接前+1, 访问连接结束后+1,如果该值为奇数说明在和后端做交互没有返回。
TRX_STATEvarchar(20)状态(RUNNING, WAIT BACKEND)
WAIT BACKEND 是在等后端连接返回。trx_trace_num不变,且trx_state 为WAIT BACKEND,说明当前事务在后端执行慢,或者被hang住了。
TRX_ISOLATION_LEVELvarchar(20)事务的隔离级别
TRX_TYPEvarchar(20)事务类型(NORMAL_TRX, XA_TRX)
指的的是greatdb内部和后端交互使用的事务类型
TRX_IS_AUTOCOMMITint自动提交(0为否,1为是)
TRX_IS_FOR_DDLintddl事务(0为否,1为是)

该视图用于查询当前sqlnode上的greatdb事务信息。该功能增加时的版本为5.0.8。

GREATDB_GLOBAL_TRX

字段名类型说明
SQLNODE_IDbigint unsignedsqlnode ID
TRX_IDbigint unsignedgreatdb事务的本地ID
TRX_PROCESSLIST_IDbigint unsigned连接ID
TRX_START_TIMEdatetime开始时间
TRX_QUERYvarchar(1024)查询语句
TRX_TRACE_NUMbigint unsigned和后端的交互次数
如调用一个shard的连接成功发送一个语句,那么trx_trace_num就会加2,访问连接前+1, 访问连接结束后+1,如果该值为奇数说明在和后端做交互没有返回。
TRX_STATEvarchar(20)状态(RUNNING, WAIT BACKEND)
WAIT BACKEND 是在等后端连接返回。trx_trace_num不变,且trx_state 为WAIT BACKEND,说明当前事务在后端执行慢,或者被hang住了。
TRX_ISOLATION_LEVELvarchar(20)事务的隔离级别
TRX_TYPEvarchar(20)事务类型(NORMAL_TRX, XA_TRX)
指的的是greatdb内部和后端交互使用的事务类型
TRX_IS_AUTOCOMMITint自动提交(0为否,1为是)
TRX_IS_FOR_DDLintddl事务(0为否,1为是)

该视图用于查询所有sqlnode上的greatdb事务信息。该功能增加时的版本为5.0.8。

GREATDB_GLOBAL_DEADLOCK_RECORD

字段名类型说明
RECORDlongtext最近一次发生的全局死锁信息

该视图用于展示最近一次发生的全局死锁信息。该功能增加时的版本为5.0.8。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

文章被以下合辑收录

评论