SCN系统变更号以及它和恢复的关系

立创EDA开源足轮机器人:基于STM32F407与ESP32的LQR自平衡与FOC驱动设计全解析 本文详细解析了基于立创EDA平台的开源足轮机器人项目。该项目采用STM32F407作为主控,ESP32负责无线通信,并应用LQR自平衡算法与FOC驱动技术,实现了机器人的稳定站立、移动转向及复杂地形适应能力。文章深入剖析了其硬件架构、软件设计及调试经验,为机器人运动控制学习提供了宝贵参考。 阅读详情

一、SCN基础
1、什么是scn?
在oracle数据库中保证数据一致性的方法就是事务。事务是一个逻辑的、原子性的作业单元,通常由一个或多个sql组成,一个事务中的所有sql操作,要么失败全部回滚,要么成功全部提交。数据库的事务最主要的作用就是保证了数据的一致性,每次事务的提交都是将数据库从一种一致性状态带进另外一种一致性状态。
scn在数据库中是一个单一的不断的随着数据库一致性状态的改变而自增的序列。每个scn值代表着数据库运行中的一个一致性的点。

2、SCN概述
2.1、系统检查点scn(systmen checkpoint scn)
存在于控制文件,检查点进程启动、全局范围内,oracle就把系统检查点scn记录到控制文件中。
SQL> select dbid,name,log_mode,checkpoint_change# from v$database;

2.2、文件检查点scn(datafile checkpoint scn)
存在于控制文件,检查点进程启动、全局范围内以及文件级别的检查点(将表空间只读、begin backup或某个文件置为offline),oracle把该检查点记录到控制文件中。
SQL> alter tablespace testtbs04 begin backup;

SQL> select
  2    ts.name "表空间名"
  3    , df.file# "文件号"
  4    , df.checkpoint_change# "检查点"
  5    , df.last_change# "终止检查点"
  6    , df.name "文件名"
  7    from v$tablespace ts,v$datafile df
  8  where ts.ts#=df.ts#
  9  order by df.file#;

表空间名                           文件号     检查点 终止检查点 文件名
------------------------------ ---------- ---------- ---------- ----------------------------------------
SYSTEM                                  1     745206            /oracle/oradata/boss/system01.dbf
UNDOTBS1                                2     745206            /oracle/oradata/boss/undotbs01.dbf
SYSAUX                                  3     745206            /oracle/oradata/boss/sysaux01.dbf
USERS                                   4     745206            /oracle/oradata/boss/users01.dbf
EXAMPLE                                 5     745206            /oracle/oradata/boss/example01.dbf
TESTTBS01                               6     745206            /oracle/oradata/boss/testtbs01_01.dbf
TESTTBS01                               7     745206            /oracle/oradata/boss/testtbs01_02.dbf
TESTTBS02                               8     745206            /oracle/oradata/boss/testtbs02_01.dbf
TESTTBS03                               9     652799     652799 /oracle/oradata/boss/testtbs03_01.dbf
TESTTBS04                              10     745405            /oracle/oradata/boss/testtbs04_01.dbf

SQL> select file#,name,status,CHECKPOINT_CHANGE#,recover from v$datafile_header;

     FILE# NAME                                     STATUS  CHECKPOINT_CHANGE# REC
---------- ---------------------------------------- ------- ------------------ ---
         1 /oracle/oradata/boss/system01.dbf        ONLINE              745206 NO
         2 /oracle/oradata/boss/undotbs01.dbf       ONLINE              745206 NO
         3 /oracle/oradata/boss/sysaux01.dbf        ONLINE              745206 NO
         4 /oracle/oradata/boss/users01.dbf         ONLINE              745206 NO
         5 /oracle/oradata/boss/example01.dbf       ONLINE              745206 NO
         6 /oracle/oradata/boss/testtbs01_01.dbf    ONLINE              745206 NO
         7 /oracle/oradata/boss/testtbs01_02.dbf    ONLINE              745206 NO
         8 /oracle/oradata/boss/testtbs02_01.dbf    ONLINE              745206 NO
         9 /oracle/oradata/boss/testtbs03_01.dbf    ONLINE              652799
        10 /oracle/oradata/boss/testtbs04_01.dbf    ONLINE              745405 NO

2.3、终止scn(stop scn)
保存在控制文件,每个数据文件都有一个终止scn,数据库正常运行中,只要数据文件在线且是可读写的,结束scn为null,否则就存在具体的scn值。

2.4、数据文件头scn(start scn)
保存在数据文件中,系统以及文件级别的检查点
SQL> select file#,name,status,CHECKPOINT_CHANGE#,recover from v$datafile_header;

3、scn的相关概念
3.1、redo log中的high scn和low scn
一个重做日志写满后,会自动切换到下一个重做日志,上一个重做日志的high scn就是下一个重做日志的low scn,current log 的high scn无穷大。
SQL> select recid,sequence#,first_change#,next_change# from v$log_history;

     RECID  SEQUENCE# FIRST_CHANGE# NEXT_CHANGE#
---------- ---------- ------------- ------------
         1          1        707655       707656
         2          1        710834       741781
         3          2        741781       744120
         4          3        744120       745576

SQL> select group#,members,sequence#,archived,status,first_change# from v$log;

    GROUP#    MEMBERS  SEQUENCE# ARC STATUS           FIRST_CHANGE#
---------- ---------- ---------- --- ---------------- -------------
         1          1          2 YES INACTIVE                741781
         2          1          3 YES INACTIVE                744120
         3          1          4 NO  CURRENT               745576
##转储当前重做日志
SQL> alter system dump logfile '/oracle/oradata/boss/redo03.log';

SQL> alter system switch logfile;

SQL> select group#,members,sequence#,archived,status,first_change# from v$log;

    GROUP#    MEMBERS  SEQUENCE# ARC STATUS           FIRST_CHANGE#
---------- ---------- ---------- --- ---------------- -------------
         1          1          5 NO  CURRENT                 747335
         2          1          3 YES INACTIVE                744120
         3          1          4 YES ACTIVE                  745576

过段时间,发生自动系统检查点后
SQL> select
  2    ts.name "表空间名"
  3    , df.file# "文件号"
  4    , df.checkpoint_change# "检查点"
  5    , df.last_change# "终止检查点"
  6    , df.name "文件名"
  7    from v$tablespace ts,v$datafile df
  8  where ts.ts#=df.ts#
  9  order by df.file#;

表空间名                           文件号     检查点 终止检查点 文件名
------------------------------ ---------- ---------- ---------- ----------------------------------------
SYSTEM                                  1     747335            /oracle/oradata/boss/system01.dbf
UNDOTBS1                                2     747335            /oracle/oradata/boss/undotbs01.dbf
SYSAUX                                  3     747335            /oracle/oradata/boss/sysaux01.dbf
USERS                                   4     747335            /oracle/oradata/boss/users01.dbf
EXAMPLE                                 5     747335            /oracle/oradata/boss/example01.dbf
TESTTBS01                               6     747335            /oracle/oradata/boss/testtbs01_01.dbf
TESTTBS01                               7     747335            /oracle/oradata/boss/testtbs01_02.dbf
TESTTBS02                               8     747335            /oracle/oradata/boss/testtbs02_01.dbf
TESTTBS03                               9     652799     652799 /oracle/oradata/boss/testtbs03_01.dbf
TESTTBS04                              10     747335            /oracle/oradata/boss/testtbs04_01.dbf

SQL> select file#,name,status,CHECKPOINT_CHANGE#,recover from v$datafile_header;

     FILE# NAME                                     STATUS  CHECKPOINT_CHANGE# REC
---------- ---------------------------------------- ------- ------------------ ---
         1 /oracle/oradata/boss/system01.dbf        ONLINE              747335 NO
         2 /oracle/oradata/boss/undotbs01.dbf       ONLINE              747335 NO
         3 /oracle/oradata/boss/sysaux01.dbf        ONLINE              747335 NO
         4 /oracle/oradata/boss/users01.dbf         ONLINE              747335 NO
         5 /oracle/oradata/boss/example01.dbf       ONLINE              747335 NO
         6 /oracle/oradata/boss/testtbs01_01.dbf    ONLINE              747335 NO
         7 /oracle/oradata/boss/testtbs01_02.dbf    ONLINE              747335 NO
         8 /oracle/oradata/boss/testtbs02_01.dbf    ONLINE              747335 NO
         9 /oracle/oradata/boss/testtbs03_01.dbf    ONLINE              652799
        10 /oracle/oradata/boss/testtbs04_01.dbf    ONLINE              747335 NO

10 rows selected.

SQL> select dbid,name,log_mode,checkpoint_change# from v$database;

      DBID NAME                                     LOG_MODE     CHECKPOINT_CHANGE#
---------- ---------------------------------------- ------------ ------------------
1375601832 BOSS                                     ARCHIVELOG               747335


SQL> show parameter user_dump

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
user_dump_dest                       string      /oracle/admin/boss/udump

##获得当前时间 系统scn,如果shutdown abort,恢复的记录为active重做日志到shutdown abort时间点
SQL> select dbms_flashback.get_system_change_number from dual;

GET_SYSTEM_CHANGE_NUMBER
------------------------
                  746578

3.3、日志切换或检查点:执行检查点后,在重做日志中标记该检查点队列的尾scn之前的scn无需再做恢复
日志切换不会引起4个检查点的改变,只是在下次执行检查点后,将数据文件头scn、数据文件scn、系统scn都更新为high scn。
执行检查点时,将检查点队列上的所有脏数据写入(已提交和未提交的)写入到数据文件,在重做日志中标记该检查点队列的尾scn之前的scn无需再做恢复,最后将数据文件头scn、数据文件scn、系统scn都更新为当前scn。

3.5、数据库正常启动关闭
数据库正常关闭时,系统会执行一个完全检查点动作,用当前scn更新4个scn,将所有数据文件scn置为数据文件头scn(除了offline和read only的数据文件)。
数据库启动时,oracle先比较启动scn和系统scn,如果启动scn>系统scn,控制文件是旧的,如果启动scn<系统scn,数据文件是旧的,如果启动scn=系统scn,再查看终止scn,如果为nul就进行实例恢复
例如:begin backup引起启动scn和数据文件scn的改变,然后shutdown abort,需要恢复也就证明以上过程

3.6、数据库非正常关闭
数据库非正常关闭(实例崩溃)时,终止scn不会被设置,是null。可以数据库启动到mount状态时,进行查询。数据库open过程中,smon进程执行实例恢复工作,即先进行前滚,再把数据库打开,最后回滚。

3.7、数据文件介质故障
启动scn<系统scn

3.8、控制文件介质故障
启动scn>系统scn。noresetlogs重建控制文件时,控制文件的系统scn来自current log头;resetlogs重建控制文件,控制文件的系统scn来自启动scn(感觉不对)。

3.9、备份时的实例崩溃
begin backup时,实例崩溃

 

14、方法论 - 自顶向下与自底向上的结合 本文探讨了如何将自顶向下的规范驱动方法与自底向上的组件构建方法相结合,以形成更加全面的编程理论。通过引入代数法则,简化逻辑关系、提高代码可读性并支持形式化验证,结合实际案例(如智能家居控制系统)展示了如何在设计和实现阶段确保系统的正确性和可靠性。文章还讨论了工具支持的重要性,并提出了未来发展的方向。 阅读详情

相关推荐

playwright-mcp 安装使用的详细教程

Playwright MCP 快速入门指南 Playwright MCP Server 是由微软开发的浏览器自动化服务,通过 MCP 协议为 AI/Agent/LLM 提供网页交互能力。它基于可访问性树而非屏幕截图,支持多种浏览器和运行模式。 安装要求: Node.js v18+ 命令行操作能力 支持 MCP 的客户端 安装方式: 通过 npx 快速启动:npx @playwright/mcp@latest 项目依赖安装:npm install @playwright/mcp 主要特性: 支持 Chrome

上善若水 7999

oracle表空间

SYSTEM表空间是Oracle创建数据库时候自动创建的,每个Oracle数据库都会有SYSTEM表空间,而且SYSTEM表空间总是要保持在联机模式下,因为其包含了数据库运行所要求的基本信息,如:数据字典、联机求助机制、所有回退段、临时段和自举段、所有的用户数据库实体、其它ORACLE软件产品要求的表等等。在建立数据库的时候,SYSTEM表空间一般都写在磁盘最开始的位置,这就埋下了问题的隐患。如:误操作导致的格式化,ASM出现故障等等一系列的问题,他都会从磁盘最开始的地方写起,这样就会导致SYSTEM表空间

顺其自然~专栏 2534

H3C交换机S-MLAG实战:如何用bond4模式实现服务器高可用(附避坑指南)

本文详细介绍了H3C交换机S-MLAG技术与服务器bond4模式的实战配置,帮助实现跨设备链路聚合的服务器高可用方案。通过解析S-MLAG技术优势、bond4模式选择、关键配置步骤及常见问题排查,提供了一套完整的避坑指南和优化建议,适用于企业级网络架构的高可用需求。

weixin_30790841的博客 466

Oracle数据库中的4种SCN号

一个SCN号就是一个oracle数据库中使用的逻辑的、内部的时间戳。这个SCN号可以表明一个事件在oracle数据库中发生的精确时间。 Oracle数据库中的SCN号分为四种,分别为:系统检查点SCN、数据文件scn、结束scn:、数据文件头scn。 系统检查点SCN: 系统检查点SCN位于控制文件中,当检查点进程启动时(ckpt),Oracle就把系统检查点的SCN

曾经是个DBA 2782

基于决策树的英雄联盟比赛胜负预测(含完整代码)

在代码中设置随机种子(例如 RANDOM_SEED = 2024)的主要目的是为了确保每次运行代码时,随机过程的结果是一致的。通过绘制不同参数组合下的准确率图,直观地展示了参数对模型性能的影响,帮助读者更好地理解和选择合适的参数。通过设置相同的随机种子(伪随机数),可以确保每次运行代码时,随机数生成器生成的随机数序列是相同的。如果在开发过程中遇到问题,设置固定的随机种子可以帮助你更容易地定位问题,因为每次运行代码时的数据和结果都是一样的。在科学研究和实验中,结果的可重复性是非常重要的。

oisflo的博客 1919

轴承故障诊断领域的论文到底有多水

这个是最让人困惑的,就好像你说自己证明了某个方法更好,但是你却没有交代自己怎么做的,或者说你交代的过程有外行话或者逻辑上的缺陷,但是你就这么给出个结果完事了。由于自己没有足够大的学术交流圈子,为了尽量避免误判,我在原来13篇论文的基础上又读了18篇,这些论文至少都出自中文核心,有一些还有EI的title,事实上近几年能找到的文章也不算多,这些基本能说明问题了。当然,还有更多细节,比如说损失函数你得交代吧,模型超参数得介绍全吧,至少数据集是哪个工况下的得说吧,当你想复现这些论文,关注点在这些地方的时候。

weixin_50642818的博客 3052

Oracle 数据库中的多种SCN汇总

SCN: 简单介绍SCN可称为系统改变号或者系统提交号,是Oracle内部的一种时间机制。 SCN的作用: (1)一致性读,比如Oracle在读取数据时会比较读开始的SCN值和数据块的SCN值,从而判断哪些数据块需要从业务数据文件中读取,哪些块需要从undo数据文件中读取 (2)事务的唯一性:Oracle会给每一个事务都分配一个唯一的SCN,按SCN进行严格排序. (3)介质恢复起点判断:在数据库异常宕机之后,Oracle后台进程可以根据数据文件头的SCN值判断出哪些数据文件需要恢复,并从控制文件的SCN值

dbhang的博客 1766

Lumerical 教程,包含作者个人理解及相关设计案例 (目前共计184篇,持续更新中)

4138。

u011699626的博客 1625

Oracle SCN简述

什么是SCN?  SCN即system change number,是一个用来维护数据改变版本的数字。其实可以等同于我们所认知的时间,但是若使用我们习惯的时间格式来做比较,数据库的工作量会很大。基于这一点,Oracle将每个时间转换成一个SCN号,使用SCN比较时间先后。SCN号可以和时间互相转换。 SCN的特征 1.SCN和时间相关联,可互相转换2....

weixin_34006468的博客 218

电脑技巧:Hyper-V安装UOS操作系统图文教程

今天给大家分享微软官方Hyper-v虚拟机管理软件安装UOS操作系统图文教程,感兴趣的朋友也可以下载试一试,当然有啥问题也可以互相沟通交流!

IT技术分享社区 4707

车载以太网网络测试-27【SOME/IP-SD简述】

SOME/IP-SD协议是基于IP的可扩展面向服务中间件中的服务发现协议,是汽车电子和嵌入式系统中实现动态服务发现与通信的核心组件。该协议规范详细说明了协议SOME/IP服务发现(SOME/IP-SD)的格式、消息序列和语义。本文将对SOME/IP-SD协议进行详细介绍。

车载网络测试工程师的博客 1956

从SCN角度 :理解 重建控制文件(通过trace)中的 reset log 和 no retset log

第一部分: 介绍下 重建控制文件后,有两种方式打开数据库: resetlog 和 noresetlog: alter database open resetlog  指定RESETLOGS将重设当前LOG sequence number为1,抛弃所有日志信息。 以下条件需要使用resetlog(说白了,如果你的redo不完整那就resetlog -如果完整,仅仅是控制文件丢了,那就

HII mate , It's Frank ~ 2004

AHB—SRAMC项目(结构图,核心代码、Testbench架构)

文章目录一、AHB_SRAMC项目介绍1.1.AHB总线控制单元(ahb_slv_if.v)1.2.SRAM控制单元(sramc_top.v)1.3.主要的传输路径二、结构框图2.1.AHB_SRAMC结构图(重点)2.2.总线控制单元与SRAM控制单元结构图三、部分核心代码(重点理解)四、SystemVerilog Testbench架构(重点)五、目录结构 一、AHB_SRAMC项目介绍 本项...

Mr.翟的博客 3万+

ORACLE SCN 深入解析

最近在学习备份恢复,发现SCN号在深入理解恢复还是很重要的,于是就整理了一下网上关于SCN的各种讲解和实验。 在理解SCN之前,我们先看下oracle事务中的数据变化是如何写入数据文件的: 1、事务开始; 2、在buffer cache中找到需要的数据块,如果没有找到,则从数据文件中载入buffer cache中; 3、事务修改buffer cache的数据块,

lamuyangjinhouzi的专栏 1080

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

Oracle SCN概念和说明

Oracle scn Oracle SCN: oracle system change number 记录数据库变更的时间号 The system change number (SCN) is a database ordering primitive. The value of an SCN is the logical point in time at which changes are ma...

Martin201609的博客 825

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

SCN专题+介质恢复+实例恢复

SCN专题+介质恢复+实例恢复 一,四个SCN的概念。 二,Timestamp和SCN的暧昧关系大揭秘 三,SCN如何在数据库恢复中起作用。 四,四种SCN不等的各种情况分析: 4.1、系统正常关闭: 4.2、系统异常关闭: 4.3、旧数据文件 4.4、备份控制文件 4.5、重建noresetlogs控制文件 4.6、重建resetlogs控制文件 五,事务中SCN的作用 ...

lanmh的专栏 157

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

从SCN 看基于时间点的恢复

在研究数据库恢复的时候,想到数据库可以基于时间点恢复,前提条件是数据库要在自动归档模式下运行,并且有有效的冷备份或者热备份文件。在研究的时候,试图确定数据库恢复的时间精确度。在eygle的网站上有一篇文章...

cjrwnfhl239221的博客 315

oracle RedoLog Checkpoint 和 SCN关系

http://blog.youkuaiyun.com/tianlesoftware/article/details/5251916 一. Redo log 作用 数据库异常关机(比如突然断电,shutdown abort: 它会立即关闭数据库,等同于断电)之后,这时已经commit的事务

mzwang123的专栏 2416

Oracle的SCN

一、检查点概述 大多数关系型数据库都采用“在提交时并不强迫针对数据块的修改完成”而是“提交时保证修改记录(以重做日志的形式)写入日志文件”的机制,来获得性能的优势。这句话的另外一...

congga5951的博客 180

oracle scn会重用吗,测试Oracle SCN的变化以及和数据库恢复的关系(一)

测试Oracle SCN的变化以及和数据库恢复的关系。(1) 打开数据库到Mount状态V$DATAFILE中的CHECKPOINT_CHANGE#(控制文件中记录的各个数据文件的SCN号),LAST_CHANGE#(控制文件中记录的各个数据文件的最后改变的SCN号)V$DATABASE中的CHECKPOINT_CHANGE#(控制文件中记录的系统的SCN号)V$DATAFILE_HEADER中的...

weixin_33573700的博客 268

RedoLog Checkpoint 和 SCN关系

一. Redo log 作用 数据库异常关机(比如突然断电,shutdown abort: 它会立即关闭数据库,等同于断电)之后,这时已经commit的事务已经记录到online redo log中,下次启动数据库时,Oracle进行恢复操作,将online redo log中的事务操作调入内存中,进行相应操作后将数据记入到数据文件中,数据操作完成。对于没有commit而已经写入数据文件或回

Perry 361

oracle数据库SCN概念

首先这里我们先介绍四个SCN概念。 1、系统检查点scn 当一个检查点动作完成后,Oracle就把系统检查点的SCN存储到控制文件中。 select checkpoint_change# from v$database; 2,数据文件检查点scn 当一个检查点动作完成后,Oracle就把每个数据文件的scn单独存放在控制文件中。 select na...

weixin_34255793的博客 174

关于SCN的理解(全面)

1.oracle正常运行时,control文件的SCN是个很大的数,与redo log文件、数据文件的SCN不同,正常关闭时,做完checkpoint后,三者的SCN值相同;Biti:日志文件中scn有起始和结束2个(高低),在...

cuixie2370的博客 829

进程结构之CKPT与SCN (小猫爪印二)

检查点概述 大多数关系型数据库都采用"在提交时并不强迫针对数据块的修改完成"而是"提交时保证修改记录(以重做日志的形式)写入日志文件"的机制,来获得性能的优势。这句话的另外一种描述是:当用户提交事务,写数据文件是"异步"的,写...

congza2755的博客 154

SCN Headroom与时光倒流到1988年的Oracle数据库

最近一阵关于scn headroom的讨论很热, 这是由于在最新的2012 Apr的PSU中例如10.2.0.5上的PSU 13632743和 patch 13916709: SCN: HIGH CALLS TO KCMGAS AFTER APPLYING SCN PATCHES 中引入了对scn增长过快的FIX修复。 Oracle SCN(System Change Number)也叫做系...

weixin_30340819的博客 124

Oracle的SCN相关问题 ---载自别人的博客(待验证)

下面摘录一些Oracle控制一致性的方法,来直观得了解一下,DBMS是如何来处理一致性的问题的: 1、SCN的介绍 Oracle中的SCN有下面几种: ①系统检查点scn(v$database(checkpoint_change#)) 当一个检查点动作完成之后,Oracle就把系统检查点的SCN存储到控制文件中 select checkpoint_change# from v$database;

甲骨文可乐的专栏 706
上一篇: 丢失所有控制文件,noresetlogs重建控制文件,alter database open
下一篇: centos6.5 x86_64安装oracle 11.2.0.3grid
offbeatmine
博客等级 码龄13年 14粉丝 48原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值