Mysql中的各种日志

MYSQL数据库日志 MySQL有不同类型的日志文件,用来存储不同类型的日志,分为 二进制日志 、 错误日志 、 通用查询日志和 慢查询日志 ,这也是常用的4种。MySQL 8又新增两种支持的日志: 中继日志 和 数据定义语句日志 。使用这些日志文件,可以查看MySQL内部发生的事情。 **这6类日志分别为: **除二进制日志外,其他日志都是 文本文件 。默认情况下,所有日志创建于 MySQL数据目录 中。日志功能会 降低MySQL数据库的性能 。 日志会 占用大量的磁盘空间 。通用查询日志用来 记录用户的所有操作 ,包括启动和 阅读详情

1.binlog(二进制日志)

        MySQL中的binlog,全称为Binary Log(二进制日志),是MySQL数据库的一种日志文件,主要记录了数据库中所有修改了数据的SQL语句或者二进制的事件,用来保证数据的一致性与恢复。具体来说,binlog记录了所有的DDL(Data Definition Language,数据定义语言)和DML(Data Manipulation Language,数据操作语言)语句,但不包括纯查询语句(如SELECT)和一些无需修改数据的操作(如SHOW等)。binlog是MySQL复制和数据恢复的基础,具有以下几个主要作用。

(1)数据复制:binlog是MySQL实现主从复制的基础。在主从复制架构中,主服务器会记录所有修改数据的操作到binlog中,而从服务器通过读取这些binlog记录并在自己的数据库上重新执行这些操作,从而实现与主服务器数据的同步。

(2)数据恢复:在数据库发生故障时,可以使用binlog来进行点的恢复。例如,如果数据库在某个时间点之后的数据因为操作错误或者其他原因被破坏,可以通过恢复到最近的备份,然后使用binlog中记录的日志,重新执行从备份时间点到故障时间点之间的所有操作,从而实现数据的恢复。

(3)审计:通过分析binlog的内容,可以查看在某个时间段内数据库中发生了哪些数据修改操作,这对于跟踪数据变更历史、进行安全审计等都非常有用。

(4)增量备份:利用binlog可以实现增量备份,即备份自上次备份以来发生的所有数据变更。这种备份方式比完整备份更高效,尤其是在数据量大的情况下。

        上图表示了binlog 的四种读写作用场景,即数据恢复、数据复制(数据备份)、数据库分布式读写、数据库主从读写分离。

        为了有效地使用binlog,需要在MySQL的配置文件(如my.cnf或my.ini)中开启binlog,并配置相关参数,比如:

  • log_bin:启用binlog,并设置binlog文件的名称。
  • max_binlog_size:设置binlog文件的最大大小。
  • binlog_format:设置binlog的格式,可以是STATEMENT(基于SQL语句)、ROW(基于行的变化)或MIXED(混合模式)。
  • expire_logs_days:管理binlog还需要注意其大小,因为随着时间的推移,binlog可能会占用大量磁盘空间。因此,需要定期清理或归档旧的binlog文件,以释放空间并保持系统性能。可以通过设置expire_logs_days参数来自动删除过期的binlog文件。

Statement
每一条会修改数据的sql都会记录在binlog中。
优点:不需要记录每一行的变化,减少了binlog日志量,节约了IO,提高性能。
Row
5.1.5版本的MySQL才开始支持row level 的复制,它不记录sql语句上下文相关信息,仅保存哪条记录被修改。
优点:row level 的日志内容会非常清楚的记录下每一行数据修改的细节。而且不会出现某些特定情况下的存储过程,或function,以及trigger的调用和触发无法被正确复制的问题。
Mixed
从5.1.8版本开始,MySQL提供了Mixed格式,实际上就是Statement与Row的结合。

2.错误日志

        MySQL的错误日志是MySQL数据库中用于记录数据库启动、运行或停止时出现的问题的日志文件。这些记录包括MySQL服务器的各种错误、警告和重要的系统信息,对数据库管理员进行故障排查和性能调优非常有用。错误日志具有以下几个重要作用。

(1)故障诊断

  • 错误日志提供了关于MySQL服务器运行中发生的错误的详细信息,如启动失败、连接错误、语法错误等。
  • 管理员可以通过查看错误日志中的错误信息,快速定位问题的原因,进而采取相应的解决措施。

(2)系统检控

  • 通过定期检查错误日志,可以及时发现并处理潜在的问题,如配置错误、性能瓶颈或安全风险。
  • 错误日志中的信息可以帮助管理员了解系统的运行状态,从而进行优化和调整。

(3)恢复参考

  • 在发生系统崩溃或意外中断的情况下,错误日志可以提供崩溃前的最后活动记录,这对于数据恢复和系统重启有重要参考价值。

启用错误日志

        在MySQL的配置文件(通常是my.cnf或my.ini)中,可以设置错误日志的文件路径:

[mysqld]
log_error = /path/to/your/log-file.err

如果没有明确设置log_error选项,MySQL通常会在数据目录中自动创建一个错误日志文件。错误日志的查看可以直接通过访问其文件路径来进行,或者通过相关的管理工具来查看。随着运行时间的增长,错误日志的大小可能会增长很快,特别是在出现很多错误或警告的情况下。定期轮换和备份日志文件是一个好习惯,可以使用如logrotate这样的工具来帮助管理日志文件。

3.事务日志

        mysql的事务有 4 种特性:原子性、一致性、隔离性和持久性。那么事务的四种特性到底是基于什么机制实现呢?

事务的隔离性由锁机制实现。
而事务的原子性、一致性和持久性由事务的 redo 日志和 undo 日志来保证。

  • Redo Log:又称为重做日志,提供再写入操作,恢复提交事务修改的页操作,用来保证事务的持久性。记录的是物理级别上的页修改操作,比如页号xxx、偏移量 yyy 写入了 ‘zzz’ 数据。主要为了保证数据的可靠性;
  • Undo Log:又称为回滚日志,回滚行记录到某个特定版本,用来保证事务的原子性、一致性。记录的是逻辑操作日志,比如对某一行数据进行了 INSERT 语句操作,那么 undo log 就记录一条与之相反的 DELETE 操作。主要用于事务的回滚(undo log 记录的是每个修改操作的逆操作)和一致性非锁定读(undo log 回滚行记录到某种特定的版本—MVCC,即多版本并发控制)

3.1Redo日志

        InnoDB 存储引擎是以页为单位来管理存储空间的。在真正访问页面之前,需要把在磁盘上的页缓存到内存中的 Buffer Pool 之后才可以访问。所有的变更都必须先更新缓冲池中的数据,然后缓冲池中的脏页会以一定的频率被刷入磁盘(checkPoint 机制),通过缓冲池来优化 CPU 和磁盘之间的鸿沟,这样就可以保证整体的性能不会下降太快。

        InnoDB 引擎的事务采用了 WAL 技术 (Write-Ahead Logging ),这种技术的思想就是先写日志,再写磁盘,只有日志写入成功,才算事务提交成功,这里的日志就是 redo log。当发生宕机且数据未刷到磁盘的时候,可以通过 redo log 来恢复,保证 ACID 中的 D,这就是 redo log 的作用。

redo日志的组成

Redo log 可以简单分为以下两个部分:
(1)重做日志缓冲 (redo log buffer),保存在内存中,是易失的。在服务器启动时就向操作系统申请了一大片称之为 redo log buffer 的连续内存空间,翻译成中文就是 redo 日志缓冲区。这片内存空间被划分成若干个连续的 redo log block。一个 redo log block 占用 512 字节大小。

(2)重做日志文件 (redo log file),保存在硬盘中,是持久的。

redo的整体流程如下图

第 1 步:先将原始数据从磁盘中读入内存中来,修改数据的内存拷贝;
第 2 步:生成一条重做日志并写入 redo log buffer,记录的是数据被修改后的值;
第 3 步:当事务 commit 时,将 redo log buffer 中的内容刷新到 redo log file,对 redo log file采用追加写的方式;
第 4 步:定期将内存中修改的数据刷新到磁盘中;

3.2Undo日志

        undo log 是事务原子性的保证。在事务中更新数据的前置操作其实是要先写入一个 undo log。

(1)事务需要保证原子性,也就是事务中的操作要么全部完成,要么什么也不做。但有时候事务执行到一半会出现一些情况,比如:

        情况一:事务执行过程中可能遇到各种错误,比如服务器本身的错误, 操作系统错误 ,甚至是突然断电导致的错误。
        情况二:程序员可以在事务执行过程中手动输入 ROLLBACK 语句结束当前事务的执行。
(2)以上情况出现,我们需要把数据改回原先的样子,这个过程称之为回滚,这样就可以造成一个假象:这个事务看起来什么都没做,所以符合原子性要求。

(3)每当我们要对一条记录做改动时(这里的改动可以指 INSERT、DELETE、UPDATE,不包括 SELECT),都需要"留一手"——即把回滚时所需的东西记下来。比如:

        你插入一条记录时,至少要把这条记录的主键值记下来,之后回滚的时候只需要把这个主键值对应的记录融掉就好了。(对于每个INSERT,InnoDB 存储引擎会完成一个DELETE)
你删除了一·条记录,至少要把这条记录中的内容都记下来,这样之后回滚时再把由这些内容组成的记录插入到表中就好了。(对于每个DELETE,InnoDB 存储引擎会执行一个 INSERT)你修改了一个记录,至少要把修改这条记录前的旧值都记录下来,这样之后回滚时再把这条记录更新为旧值就好了。(对于每个UPDATE,InnoDB 存储引擎会执行一个相反的 UPDATE,将修改前的行放回去)
(4)MySQL 把这些为了回滚而记录的这些内容称之为撤销日志或者回滚日志(即 undo log)。注意,由于查询操作 (SELECT) 并不会修改任何用户记录,所以在查询操作执行时,并不需要记录相应的 undo 日志。此外,undo log 会产生 redo log,也就是 undo log 的产生会伴随着 redo log 的产生,这是因为 undo log 也需要持久性的保护。

undo+redo日志生成过程(简要)

(1)假设有 2 个数值,分别为 A = 1 和 B = 2,然后将 A 修改为3 ,B 修改为 4。

1. start transaction;
2. 记录 A = 1 到 undo log;
3. update A = 3;
4. 记录 A = 3 到 redo log;
5. 记录 B = 2 到 undo log;
6. update B =4;
7. 记录 B = 4 到 redo log;
8. 将 redo log 刷新到磁盘;
9. commit;

在 1 ~ 8 步骤的任意一步系统宕机,事务未提交,该事务就不会对磁盘上的数据做任何影响。
如果在 8 ~ 9 之间宕机,恢复之后可以选择回滚,也可以选择继续完成事务提交
因为此时 redo log 已经持久化。若在 9 之后系统宕机,内存映射中变更的数据还来不及刷回磁盘,那么系统恢复之后,可以根据 redo log 把数据刷回磁盘。

4.慢查询日志

        MySQL的慢查询日志是MySQL提供的一种日志类型,用于记录执行时间超过特定阈值的SQL查询。这个功能主要用来识别数据库操作中的性能瓶颈,从而帮助数据库管理员优化查询语句和改进数据库性能,其主要作用如下:

(1)性能分析

  • 慢查询日志提供了一个记录所有执行时间超过预设阈值的SQL语句的机制。这使得开发者和数据库管理员能够识别和优化那些对性能影响最大的查询。

(2)优化数据库

  • 通过分析慢查询日志中的信息,可以确定需要添加索引的地方、需要改写的查询、可能存在的表设计问题等。这有助于减少数据库的响应时间和提升应用的整体性能。

(3)监控与警报

  • 在一些高级的监控系统中,慢查询日志可以被用作生成性能警报的依据,及时通知管理员采取行动。

如何启用慢查询日志及其相关参数

(1)启用慢查询日志

        在MySQL的配置文件(通常是my.cnf或my.ini)中设置以下参数以启用慢查询日志:

[mysqld]
slow_query_log = 1
slow_query_log_file = /path/to/your/log-file
long_query_time = 2

其中,slow_query_log用于启用慢查询日志,slow_query_log_file指定日志文件的存储位置,long_query_time设置查询执行的时间阈值(单位是秒),超过这个时间的查询会被记录。

MySQL 日志文件 不仅如此,在对redo log写入时有两个阶段的提交,一是binlog写入之前prepare状态的写入,二是binlog写入之后commit状态的写入。其实写redo log的时候,也会有buffer,是先写buffer,再真正落到磁盘中的。在数据修改的时候,不仅记录了redo log,还记录undo log,如果因为某些原因导致事务失败或回滚了,可以用undo log进行回滚。因为undo log存储着修改之前的数据,相当于一个前版本,MVCC实现的是读写不阻塞,读的时候只要返回前一个版本的数据就行了。 阅读详情

相关推荐

在MySQL中怎么查看日志,简单易懂保姆级教程

如果需要查询2017-09-17 07:21:09到2017-09-19 07:59:50 数据库为geeRunner 的操作日志,输入如下命令将数据写入到一个备用的txt即可。如果取下来查询,使用winscp工具,登录到db所在机器,将数据取出来。两行SQL代码查看SQL是否开启,是开启的话,获取就好。关闭的话运行以下代码开启。

weixin_67450855的博客 6941

MySQL笔记:第17章_其他数据库日志

第17章_其他数据库日志1.MySQL支持的日志1.1日志类型1.2日志的弊端2.慢查询日志(slow query log) 我们在讲解数据库事务时,讲过两种日志:重做日志、回滚日志。 对于线上数据库应用系统,突然遭遇数据库宕机怎么办?在这种情况下,定位宕机的原因就非常关键。可以查看数据库的错误日志。因为日志中记录了数据库运行中的诊断信息,包括了错误、警告和注释等信息。比如:从日志中发现某个连接中的SQL操作发生了死循环,导致内存不足,被系统强行终止了。明确了原因,处理起来也就轻松了,系统很快就恢复了运行。

IAMLSL的博客 2656

深入解析MySQL中的重做日志、回滚日志与二进制日志

在数据库管理系统中,日志文件扮演着至关重要的角色,它们在数据恢复、事务管理、数据一致性等方面提供了不可或缺的支持。本文将带你深入了解MySQL中的三种日志文件:重做日志(Redo Log)、回滚日志(Undo Log)和二进制日志(Binary Log)。我们将详细讨论它们的区别和各自的作用。

fudaihb的博客 1458

MySQL不会丢失数据的秘密,就在于它的 7种日志

重做日志(redo log)、回滚日志(undo log)、二进制日志(binlog)、错误日志(errorlog)、慢查询日志(slow query log)、一般查询日志(general log),中继日志(relay log)。 Slow Query Log 慢查询日志(Slow Query Log): 用来记录在 MySQL 中执行时间超过指定时间的查询语句,在 SQL 优化过程中会经常使用到。通过慢查询日志,我们可以查找出哪些查询语句的执行效率低,耗时严重。 出于性能方面的考虑,一般只有在排查慢S

程序员内点事 1561

Charles 抓包工具下载安装及基础使用

本篇内容主讲关于Charles抓包工具,从下载安装以及配置信息,证书的下载安装以及PC端设置代理配置和移动端设备配置代理,阐述关于Charles抓包工具面板的基础使用以及如何进行抓包和设置断点,对于软件测试以及对抓包感兴趣的读者可以翻阅!感谢大家的支持!!!

灵魂学者的博客 2957

宝塔面板 python管理器2.0安装Mrdoc

自从python管理器从1.9升级2.0后,导致原教程不能使用。 故关于2.0新开教程如下。 关于python管理器2.0 最大的区别在于: python管理器2.0不再需要进入虚拟环境,直接在当前环境进行操作,但是需要指定python路径及pip路径。 1、新建mrdoc工程目录,下载源码: 新建目录【mrdoc】,进入mrdoc目录,并在宝塔ssh或或远程ssh中执行 ,下载源码 git clone https://gitee.com/yang_lite/MrDoc.git .

debj031634的专栏 5991

mysql 变动日志_mysql中的日志

日志的配置可以在my.conf中修改清除日志可以使用命令:mysqladmin -u root -p flush-logs或者mysql>flush logs;1 错误日志(Error log)记录MySQL服务的启动、运行或停止MySQL服务时出现的问题。当mysql服务器认为需要检查和修复某个表,就会在错误日志里写下相应的信息。如果启动mysql服务时使用了--mysqld_safe选项...

weixin_36171481的博客 444

1. 迈进 SAP UI5 开发世界的第一步 - Hello World

SAP UI5 是一个用于开发企业级 Web 应用的前端框架,基于 HTML 和 JavaScript. 作为教程的第一步,我们需要了解最基础的 HTML 知识。 请大家在电脑上任意新建一个文件夹,将其命名,比如我取的名称为 Walkthrough. 进入 Walkthrough 文件夹,再新建一个文件夹名叫 01,代表本教程的第一个步骤。 进入 01 文件夹,新建一个 webapp 文件夹。这个名称是 web 应用约定俗成所使用的,大家都倾向于用这个名称,当然你要是想用其他名称也没有问题。......

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 9001

MySQL中的日志

文章目录错误日志查询日志慢查询日志二进制日志(binlog)InnoDB 存储引擎的日志redo log 又称为重做日志,用来保证事务的持久性,undo log 用来保证事务的原子性和 MVCC。回滚日志(undo log) 错误日志 错误日志是 MySQL 中最重要的日志之一,它记录了当 mysqld 启动和停止时,以及服务器在运行过程中发生任何 严重错误时的相关信息。当数据库出现任何故障导致无法正常使用时,可以首先查看此日志。 查询日志 查询日志中记录了客户端的所有操作语句,而二进制日志不包含查询数据的

liuerchong的博客 2817

【AI智能体】Coze 数据库从使用到实战操作详解

Coze 数据库使用到实战详解

congge 5912

SAP UI5 SimpleForm 的本质、布局选择与工程化用法:从 API 到 Fiori 规范的完整解析

SimpleForm的价值在于让开发者以“语义顺序”来思考表单:分组—行—字段,由此把更多精力放在表单信息架构与Fiori规范的落地上。当你理解了开分组、Label开新行、的断点与比例、的对齐特性、editable与的真实含义,就能据此为每个页面挑选合适的布局与参数,构建既合规又具备高可读性的企业级表单。新分组、Label新行、其他控件归当前行。SAP的断点、比例与的要点来自Fiori设计文档。SAP的适用性来自样例与课程的推荐,列表类控件不应作为其行内容。某些旧属性仅在生效,应避免误用。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 298

Mysql中的几种常见日志

Mysql中的几种常见日志

卓越之识论道,平常之识论事,狭隘之识论人 1653

基于毫米波雷达的智能风扇算法设计与实现

摘要:本文设计了一种基于毫米波雷达的智能风扇控制系统,采用FMCW雷达实现人体目标的精准检测与定位。系统通过距离FFT、速度FFT、CFAR检测和AoA估计构建完整的信号处理链路,并针对风扇叶片干扰设计了基于自相关函数的抗干扰算法。创新性地提出了人在开机、多人优先送风、摇头追踪等控制策略。研究采用MATLAB完成全链路算法仿真验证,并在STM32平台上实现实物系统。实验表明,该系统可实现0.15m测距精度和±60°方位角覆盖,有效解决了传统风扇的能源浪费和用户体验问题。本文提供了完整的MATLAB仿真代码和

huanghm88的专栏 403

mysql 日志

慢查询日志主要用来记录查询时间较长的日志。在开发环境下,可以开启慢查询日志来记录查询时间较长的查询语句,然后对这些语句进行优化。通过配置long_query_time的值,可以灵活地掌握不同程度的慢查询语句

一路向前 3355

Unity之OpenXR+XR Interaction Toolkit实现 Gaze眼部追踪

在虚拟现实(VR)和增强现实(AR)应用中,眼动追踪是一项强大而受欢迎的技术。它可以让开发者更好地理解用户的注意力和行为,并创造出更加沉浸和智能的体验。在本文中,我们将探讨如何使用 Unity OpenXR 实现Gaze眼部追踪功能。

TxNet 1751

以阿克曼转向车为例对URDF和XACRO文件进行解读

   最近我在古月学院购买了在Gazebo中实现阿克曼转向车的仿真课程,课程资料的阿克曼小车的XACRO文件在Gazebo里加载的时候报了三个错误,在这之前,我没接触过URDF或XACRO文件,本篇文章就以这个阿克曼小车的XACRO文件为例,对URDF或XACRO文件的格式和内容进行解读,期望经过解读和学习,找到错误原因及所在,并解决这三个错误    先来放一下上面右图所示的模型的完整的XACRO文件: <?xml version="1.0"?> <!-- racecar.urdf.x

慕羽★的博客 3700

MySQL的日志总结

前言 MySQL中有以下日志文件,分别是:   1:重做日志(redo log)   2:回滚日志(undo log)   3:二进制日志(binlog)   4:错误日志(errorlog)   5:慢查询日志(slow query log)   6:一般查询日志(general log)   7:中继日志(relay log)。 其中重做日志和回滚日志与事务操作息息相关,二进制日志也与事务操作有一定的关系,这三种日志,对理解MySQL中的事务操作有着重要的意义。 一、重做日志(red

红鱼儿的博客 2613

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

mysql里面的日志

一、日志类型 MySQL 中有七种日志文件,分别是:重做日志(redo log)、回滚日志(undo log)、二进制日志(binlog)、错误日志(errorlog)、慢查询日志(slow query log)、一般查询日志(general log),中继日志(relay log)。 二、日志作用 1.二进制日志(binlog) binlog 主要有以下作用: 复制:MySQL 主从复制在 Master 端开启 binlog,Master 把它的二进制日志传递给 slaves 并回放来达到 master-

pengchenxin的博客 8804

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

MySQL中的日志分为哪四种_MySQL中的几种日志了解

前言MySQL中有以下日志文件,分别是:1:重做日志(redo log)2:回滚日志(undo log)3:二进制日志(binlog)4:错误日志(errorlog)5:慢查询日志(slow query log)6:一般查询日志(general log)7:中继日志(relay log)。其中重做日志和回滚日志与事务操作息息相关,二进制日志也与事务操作有一定的关系,这三种日志,对理解MySQL中的...

weixin_42350014的博客 1066

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

MySQL日志

MySQL日志知识

2303_78135757的博客 1190

【MySQL】常见的MySQL日志都有什么用?

MySQL日志的内容非常重要,面试中经常会被问到。同时,掌握日志相关的知识也有利于我们理解MySQL 底层原理,必要时帮助我们排查解决问题。主要介绍了二进制i日志、慢查询日志、重做日志、撤销日志

关关的博客 2121

mysql有哪些日志类型_MySQL中的六种日志类型的介绍

MySQL主要有以下几种日志类型:错误日志――MySQL服务启动和关闭过程中的信息以及其它错误和警告信息。默认在数据目录下。一般查询日志――用于记录select查询语句的日志。general_log、general_log_file 默认关闭,建议关闭。慢查询日志――log-slow-queries记录所有超过long_query_time时间的SQL语句,二进制日志――记录任何引起数据变化的操作...

weixin_42532938的博客 2081

MySQL日志详解

错误日志 错误日志是 MySQL 中最重要的日志之一,它记录了当 mysqld 启动和停止时,以及服务器在运行过中发生任何严重错误时的相关信息。当数据库出现任何故障导致无法正常使用时,建议首先查看此日志。

一起努力共同进步,为了未来一起奋斗吧! 2028
上一篇: Spring Security详解
下一篇: 实习笔记之LocalDate使用。
coderrrrrr
博客等级 码龄7年 153粉丝 11原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值