11gR2 rac更换存储

rac更换存储
动手前要备份的请务必备份。不然后果自负。HEHE
环境:在老存储上面有三个ASM组,+VDISK,+DBDATA,+FRA 分别存放 votedisk,ocr dbfile flash_recovery_area 有9个LUN
        oracle 11.2.0.3
步聚:
1.更换votedisk
 2.挂载新的存储区到各节点(滚动升级 挂载分区的时候有可能操作系统重启)
 3.分区和条带化,新建+NVDISK
4.转移votedisk 和ocr 到+NVDISK
6.处理(+DBDATA)将新存储分区的LUN加到ASM组中 rebalance 删除老存储的分区 
7 .处理(+FRA)将新存储分区的LUN加到ASM组中 rebalance 删除老存储的分区 
8.将ASM实例的配置文件转移到新+NVDISK中

[grid@rac1 ~]$ crsctl query css votedisk
##  STATE    File Universal Id                File Name Disk group
--  -----    -----------------                --------- ---------
 1. ONLINE   8bbeca1710004f5ebf55bc7a1b495555 (/dev/oracleasm/disks/VDISK1) [VDISK]
 2. ONLINE   a42ac7c1d4604f08bfacac6c5413cffe (/dev/oracleasm/disks/VDISK2) [VDISK]
 3. ONLINE   8e704e7bec5a4fa2bf106ed094f34a46 (/dev/oracleasm/disks/VDISK3) [VDISK]
Located 3 voting disk(s).


[root@rac1 grid]# crsctl replace votedisk +nvdisk
Successful addition of voting disk 287d35bbbb6e4f7cbf82c46c245e7237.
Successful addition of voting disk 5c649c986f554f31bf62a8718668a29c.
Successful addition of voting disk 3e3fda5c31414f74bf4aa2d27ca73692.
Successful deletion of voting disk 8bbeca1710004f5ebf55bc7a1b495555.
Successful deletion of voting disk a42ac7c1d4604f08bfacac6c5413cffe.
Successful deletion of voting disk 8e704e7bec5a4fa2bf106ed094f34a46.
Successfully replaced voting disk group with +nvdisk.


[root@rac1 bin]# crsctl query css votedisk
##  STATE    File Universal Id                File Name Disk group
--  -----    -----------------                --------- ---------
 1. ONLINE   287d35bbbb6e4f7cbf82c46c245e7237 (/dev/oracleasm/disks/NVDISK1) [NVDISK]
 2. ONLINE   5c649c986f554f31bf62a8718668a29c (/dev/oracleasm/disks/NVDISK2) [NVDISK]
 3. ONLINE   3e3fda5c31414f74bf4aa2d27ca73692 (/dev/oracleasm/disks/NVDISK3) [NVDISK]
Located 3 voting disk(s)

[grid@rac1 ~]$ ocrcheck
Status of Oracle Cluster Registry is as follows :
     Version                  :          3
     Total space (kbytes)     :     262120
     Used space (kbytes)      :       2944
     Available space (kbytes) :     259176
     ID                       : 1788602175
     Device/File Name         :     +vdisk
                                    Device/File integrity check succeeded

                                    Device/File not configured

                                    Device/File not configured

                                    Device/File not configured

                                    Device/File not configured

     Cluster registry integrity check succeeded

     Logical corruption check bypassed due to non-privileged user


[root@rac1 bin]# ocrconfig -add +nvdisk   
[root@rac1 bin]# ocrcheck
Status of Oracle Cluster Registry is as follows :
     Version                  :          3
     Total space (kbytes)     :     262120
     Used space (kbytes)      :       2972
     Available space (kbytes) :     259148
     ID                       : 1788602175
     Device/File Name         :     +vdisk
                                    Device/File integrity check succeeded
     Device/File Name         :    +nvdisk
                                    Device/File integrity check succeeded

                                    Device/File not configured

                                    Device/File not configured

                                    Device/File not configured

     Cluster registry integrity check succeeded

     Logical corruption check succeeded

[root@rac1 bin]# ocrconfig -delete +vdisk
[root@rac1 bin]# ocrcheck
Status of Oracle Cluster Registry is as follows :
     Version                  :          3
     Total space (kbytes)     :     262120
     Used space (kbytes)      :       2972
     Available space (kbytes) :     259148
     ID                       : 1788602175
     Device/File Name         :    +nvdisk
                                    Device/File integrity check succeeded

                                    Device/File not configured

                                    Device/File not configured

                                    Device/File not configured

                                    Device/File not configured

     Cluster registry integrity check succeeded

grid@rac1 ~]$ ll /dev/oracleasm/disks/*

brw-rw---- 1 grid asmadmin 8, 37 Nov 24 05:45 /dev/oracleasm/disks/DBFILE1
brw-rw---- 1 grid asmadmin 8, 38 Nov 24 05:45 /dev/oracleasm/disks/DBFILE2
brw-rw---- 1 grid asmadmin 8, 39 Nov 24 05:45 /dev/oracleasm/disks/FRA1
brw-rw---- 1 grid asmadmin 8, 40 Nov 24 05:45 /dev/oracleasm/disks/FRA2
brw-rw---- 1 grid asmadmin 8, 21 Nov 24 05:21 /dev/oracleasm/disks/NDBFILE1
brw-rw---- 1 grid asmadmin 8, 22 Nov 24 05:21 /dev/oracleasm/disks/NDBFILE2
brw-rw---- 1 grid asmadmin 8, 23 Nov 24 05:21 /dev/oracleasm/disks/NFRA1
brw-rw---- 1 grid asmadmin 8, 24 Nov 24 05:21 /dev/oracleasm/disks/NFRA2
brw-rw---- 1 grid asmadmin 8, 17 Nov 24 05:45 /dev/oracleasm/disks/NVDISK1
brw-rw---- 1 grid asmadmin 8, 18 Nov 24 05:45 /dev/oracleasm/disks/NVDISK2
brw-rw---- 1 grid asmadmin 8, 19 Nov 24 05:45 /dev/oracleasm/disks/NVDISK3
brw-rw---- 1 grid asmadmin 8, 33 Nov 24 05:45 /dev/oracleasm/disks/VDISK1
brw-rw---- 1 grid asmadmin 8, 34 Nov 24 05:45 /dev/oracleasm/disks/VDISK2
brw-rw---- 1 grid asmadmin 8, 35 Nov 24 05:45 /dev/oracleasm/disks/VDISK3

[root@rac1 bin]#chown grid:asmadmin /dev/sdc*
[root@rac1 bin]#chmod 664 /dev/sdc*

[root@rac2 ~]# ll /dev/sdc*
brw-rw-r-- 1 grid asmadmin 8, 32 Nov 24 05:21 /dev/sdc
brw-rw-r-- 1 grid asmadmin 8, 33 Nov 24 05:21 /dev/sdc1
brw-rw-r-- 1 grid asmadmin 8, 34 Nov 24 05:21 /dev/sdc2
brw-rw-r-- 1 grid asmadmin 8, 35 Nov 24 05:21 /dev/sdc3
brw-rw-r-- 1 grid asmadmin 8, 36 Nov 24 05:49 /dev/sdc4
brw-rw-r-- 1 grid asmadmin 8, 37 Nov 24 05:21 /dev/sdc5
brw-rw-r-- 1 grid asmadmin 8, 38 Nov 24 05:21 /dev/sdc6
brw-rw-r-- 1 grid asmadmin 8, 39 Nov 24 05:21 /dev/sdc7
brw-rw-r-- 1 grid asmadmin 8, 40 Nov 24 05:21 /dev/sdc8
brw-rw-r-- 1 grid asmadmin 8, 41 Nov 24 05:49 /dev/sdc9


[grid@rac2 ~]$ sqlplus / as sysasm


 
SQL> alter diskgroup dbdata add disk '/dev/oracleasm/disks/NDBFILE1'

Diskgroup altered.

SQL> alter diskgroup dbdata add disk '/dev/oracleasm/disks/NDBFILE1'      

Diskgroup altered.


SQL> col name for a10
SQL> set line 200
SQL> select NAME,ALLOCATION_UNIT_SIZE,STATE,TOTAL_MB,FREE_MB USABLE_FILE_MB from gv$asm_diskgroup
NAME       ALLOCATION_UNIT_SIZE STATE                    TOTAL_MB USABLE_FILE_MB
---------- -------------------- --------------------------------- ---------- --------------
DBDATA            1048576 MOUNTED                    30516          26093
FRA            1048576 MOUNTED                    15258          14182
NVDISK            1048576 MOUNTED                 2864           1940
VDISK            1048576 MOUNTED                 2864           2034
DBDATA            1048576 MOUNTED                    30516          26093
FRA            1048576 MOUNTED                    15258          14182
NVDISK            1048576 MOUNTED                 2864           1940
VDISK            1048576 MOUNTED                 2864           2034

8 rows selected.

SQL> alter diskgroup dbdata rebalance power 8;

Diskgroup altered.


SQL> select * from v$asm_operation;

GROUP_NUMBER OPERATION         STATE           POWER     ACTUAL      SOFAR   EST_WORK    EST_RATE EST_MINUTES
------------ --------------- ------------ ---------- ---------- ---------- ---------- ---------- -----------
ERROR_CODE
------------------------------------------------------------------------------------------------------------------------------------
       1 REBAL         RUN           8          8        654     2302         225       7


SQL> select * from v$asm_operation;

no rows selected

 1* select failgroup, name, path from v$asm_disk where group_number=(select group_number from v$asm_diskgroup where name ='DBDATA')
SQL> /

FAILGROUP  NAME       PATH
---------- ----------  ------------------------------
DBDATA_0001 DBDATA_0001 /dev/oracleasm/disks/DBFILE2
       

DBDATA_0000 DBDATA_0000 /dev/oracleasm/disks/DBFILE1
       

DBDATA_0003 DBDATA_0003 /dev/oracleasm/disks/NDBFILE2
       

DBDATA_0002 DBDATA_0002 /dev/oracleasm/disks/NDBFILE1
       

---------- ---------- ----------
select group_number,disk_number,name,failgroup,create_date,path from v$asm_disk;


GROUP_NUMBER DISK_NUMBER NAME        FAILGROUP               CREATE_DATE           PATH
------------ ----------- ---------- ------------------------------ ------------------- ----------------------------------------
       0           7                                   /dev/oracleasm/disks/NFRA2
       0           8                                   /dev/oracleasm/disks/NFRA1
       2           1 FRA_0001   FRA_0001               2014/11/23 13:16:37 /dev/oracleasm/disks/FRA2
       2           0 FRA_0000   FRA_0000               2014/11/23 13:16:37 /dev/oracleasm/disks/FRA1
       1           1 DBDATA_000 DBDATA_0001            2014/11/23 13:15:36 /dev/oracleasm/disks/DBFILE2
             1

       1           0 DBDATA_000 DBDATA_0000            2014/11/23 13:15:36 /dev/oracleasm/disks/DBFILE1
             0

       4           2 VDISK_0002 VDISK_0002               2014/11/23 11:34:01 /dev/oracleasm/disks/VDISK3

GROUP_NUMBER DISK_NUMBER NAME        FAILGROUP               CREATE_DATE           PATH
------------ ----------- ---------- ------------------------------ ------------------- ----------------------------------------
       4           1 VDISK_0001 VDISK_0001               2014/11/23 11:34:01 /dev/oracleasm/disks/VDISK2
       4           0 VDISK_0000 VDISK_0000               2014/11/23 11:34:01 /dev/oracleasm/disks/VDISK1
       1           3 DBDATA_000 DBDATA_0003            2014/11/24 05:56:30 /dev/oracleasm/disks/NDBFILE2
             3

       1           2 DBDATA_000 DBDATA_0002            2014/11/24 05:55:49 /dev/oracleasm/disks/NDBFILE1
             2

       3           2 NVDISK_000 NVDISK_0002            2014/11/24 03:07:11 /dev/oracleasm/disks/NVDISK3
             2


GROUP_NUMBER DISK_NUMBER NAME        FAILGROUP               CREATE_DATE           PATH
------------ ----------- ---------- ------------------------------ ------------------- ----------------------------------------
       3           1 NVDISK_000 NVDISK_0001            2014/11/24 03:07:11 /dev/oracleasm/disks/NVDISK2
             1

       3           0 NVDISK_000 NVDISK_0000            2014/11/24 03:07:11 /dev/oracleasm/disks/NVDISK1
             0


14 rows selected.
SQL> alter diskgroup dbdata drop disk DBDATA_0001

Diskgroup altered

SQL> alter diskgroup dbdata drop disk DBDATA_0001

Diskgroup altered

 
SQL> alter diskgroup dbdata rebalance power 10

Diskgroup altered

SQL> select * from v$asm_operation;

GROUP_NUMBER OPERATION         STATE           POWER     ACTUAL      SOFAR   EST_WORK    EST_RATE EST_MINUTES
------------ --------------- ------------ ---------- ---------- ---------- ---------- ---------- -----------
ERROR_CODE
------------------------------------------------------------------------------------------------------------------------------------
       1 REBAL         RUN           1          1        320     3192         360       7

 
SQL> alter diskgroup dbdata undrop disks

Diskgroup altered.


SQL>select failgroup, name, path from v$asm_disk where group_number=(select group_number from v$asm_diskgroup where name ='FRA')

FAILGROUP               NAME      PATH
------------------------------ ---------- ----------------------------------------
FRA_0001               FRA_0001   /dev/oracleasm/disks/FRA2
FRA_0000               FRA_0000   /dev/oracleasm/disks/FRA1


SQL> alter diskgroup fra add disk '/dev/oracleasm/disks/NFRA1';

Diskgroup altered.

SQL> alter diskgroup fra add disk '/dev/oracleasm/disks/NFRA2';

Diskgroup altered.

SQL> alter diskgroup FRA rebalance power 10;

Diskgroup altered.

SQL> select * from v$asm_operation;

GROUP_NUMBER OPERATION         STATE           POWER     ACTUAL      SOFAR   EST_WORK    EST_RATE EST_MINUTES
------------ --------------- ------------ ---------- ---------- ---------- ---------- ---------- -----------
ERROR_CODE
------------------------------------------------------------------------------------------------------------------------------------
       2 REBAL         RUN          10         10        376      385         196       0



SQL> /

no rows selected

SQL> alter diskgroup fra drop disk fra_0000

Diskgroup altered.

 
SQL> alter diskgroup fra drop disk fra_0001

Diskgroup altered.

SQL> select * from v$asm_operation;

GROUP_NUMBER OPERATION         STATE           POWER     ACTUAL      SOFAR   EST_WORK    EST_RATE EST_MINUTES
------------ --------------- -------          ---------- ---------- ---------- ---------- ---------- -----------
ERROR_CODE
------------------------------------------------------------------------------------------------------------------------------------
       2 REBAL         RUN           1          1      7      954           0       0



SQL> alter diskgroup fra rebalance power 10;

Diskgroup altered.


SQL>  select * from v$asm_operation;

no rows selected


最后还要迁移ASM实列的参数文件。

/u01/app/11.2.0/grid/bin/gpnptool.bin get -o-

<?xml version="1.0" encoding="UTF-8"?>aAJDfIK5wZSEW6b0NnRKBMYZAkY=BsmIA0dmXuoQRmNoxOSaPCfhKT2B1O69qxO3INzLHni4xqTj3HCKtF4jsG6neQ4Wovyj3Eqhic7RTNuqXTRjFBXYM1RRZH27GrFg9pPhelt66AuBeWMMESRTd5bgdAmHpulFOISW7em/9JfygyGRjmAISV53LwScKuaeNSEYzY0=
Success.

SQL> create pfile='/tmp/pfile.asm' from spfile;

File created.



SQL> create spfile='+NVDISK' from pfile='/tmp/pfile.asm';

File created.



/u01/app/11.2.0/grid/bin/gpnptool.bin get -o-
<?xml version="1.0" encoding="UTF-8"?>MYZiK4O5JwoWisp6a/9msQb4dA4=fzLhQRCk6H/7PZ9UqS7P+gX5QkZcXL6bQa4l0bFGjKrhzTBXmSY5D7+bK0v5YTCDzUORYtPponHRWi2UGUl6M6+NBBzG8zLQilpXj9PQp50TCCz6npmJSFbHRiyIETc9lg76YUx+jZupWwweWpwdy3d0Trt0fEPvl4tNisDNFAY=
Success.

这里证明create asm spfile会自动修改spfile在gpnptool对应的profile里面的配置,无需人工干预
SQL> show parameter spfile;

NAME                     TYPE    VALUE
------------------------------------ ---------- ------------------------------
spfile                     string    +VDISK/rac-cluster/asmparamete
                        rfile/registry.253.864387277
最后删除最的磁盘组!

srvctl remove diskgroup -g vdisk

为了验证实验的成功性,我停掉旧的存储。生新启动所有节点
srvctl stop database -d hndb
crsctl stop cluster -all
reboot

[grid@rac1 ~]$ crs_stat -t
Name           Type           Target    State     Host        
------------------------------------------------------------
ora.DBDATA.dg  ora....up.type ONLINE    ONLINE    rac1        
ora.FRA.dg     ora....up.type ONLINE    ONLINE    rac1        
ora....ER.lsnr ora....er.type ONLINE    ONLINE    rac1        
ora....N1.lsnr ora....er.type ONLINE    ONLINE    rac1        
ora....N2.lsnr ora....er.type ONLINE    ONLINE    rac2        
ora....N3.lsnr ora....er.type ONLINE    ONLINE    rac2        
ora.NVDISK.dg  ora....up.type ONLINE    ONLINE    rac1        
ora.asm        ora.asm.type   ONLINE    ONLINE    rac1        
ora.cvu        ora.cvu.type   ONLINE    ONLINE    rac2        
ora.gsd        ora.gsd.type   OFFLINE   OFFLINE               
ora.hndb.db    ora....se.type OFFLINE   OFFLINE               
ora....network ora....rk.type ONLINE    ONLINE    rac1        
ora.oc4j       ora.oc4j.type  ONLINE    ONLINE    rac2        
ora.ons        ora.ons.type   ONLINE    ONLINE    rac1        
ora....SM1.asm application    ONLINE    ONLINE    rac1        
ora....C1.lsnr application    ONLINE    ONLINE    rac1        
ora.rac1.gsd   application    OFFLINE   OFFLINE               
ora.rac1.ons   application    ONLINE    ONLINE    rac1        
ora.rac1.vip   ora....t1.type ONLINE    ONLINE    rac1        
ora....SM2.asm application    ONLINE    ONLINE    rac2        
ora....C2.lsnr application    ONLINE    ONLINE    rac2        
ora.rac2.gsd   application    OFFLINE   OFFLINE               
ora.rac2.ons   application    ONLINE    ONLINE    rac2        
ora.rac2.vip   ora....t1.type ONLINE    ONLINE    rac2        
ora.scan1.vip  ora....ip.type ONLINE    ONLINE    rac1        
ora.scan2.vip  ora....ip.type ONLINE    ONLINE    rac2        
ora.scan3.vip  ora....ip.type ONLINE    ONLINE    rac2

[oracle@rac1 ~]$ srvctl start database -d hndb

[oracle@rac1 ~]$ ps -ef |grep ora_
oracle    4789     1  0 10:07 ?        00:00:00 ora_pmon_hndb1
oracle    4791     1  0 10:07 ?        00:00:00 ora_psp0_hndb1
oracle    4793     1  1 10:07 ?        00:00:02 ora_vktm_hndb1
oracle    4797     1  0 10:07 ?        00:00:00 ora_gen0_hndb1
oracle    4799     1  0 10:07 ?        00:00:00 ora_diag_hndb1
oracle    4801     1  0 10:07 ?        00:00:00 ora_dbrm_hndb1                
oracle    4803     1  0 10:07 ?        00:00:00 ora_ping_hndb1
oracle    4805     1  0 10:07 ?        00:00:00 ora_acms_hndb1
oracle    4807     1  0 10:07 ?        00:00:01 ora_dia0_hndb1
oracle    4809     1  0 10:07 ?        00:00:00 ora_lmon_hndb1
oracle    4811     1  1 10:07 ?        00:00:03 ora_lmd0_hndb1
oracle    4813     1  2 10:07 ?        00:00:03 ora_lms0_hndb1
oracle    4817     1  0 10:07 ?        00:00:00 ora_rms0_hndb1
oracle    4819     1  0 10:07 ?        00:00:00 ora_lmhb_hndb1
oracle    4821     1  0 10:07 ?        00:00:00 ora_mman_hndb1
oracle    4823     1  0 10:07 ?        00:00:00 ora_dbw0_hndb1
oracle    4825     1  0 10:07 ?        00:00:00 ora_lgwr_hndb1
oracle    4827     1  0 10:07 ?        00:00:00 ora_ckpt_hndb1
oracle    4829     1  0 10:07 ?        00:00:00 ora_smon_hndb1
oracle    4831     1  0 10:07 ?        00:00:00 ora_reco_hndb1
oracle    4833     1  0 10:07 ?        00:00:00 ora_rbal_hndb1
oracle    4835     1  0 10:07 ?        00:00:00 ora_asmb_hndb1
oracle    4837     1  0 10:07 ?        00:00:01 ora_mmon_hndb1
oracle    4839     1  0 10:07 ?        00:00:00 ora_mmnl_hndb1
oracle    4841     1  0 10:07 ?        00:00:00 ora_d000_hndb1
oracle    4845     1  0 10:07 ?        00:00:00 ora_s000_hndb1
oracle    4847     1  0 10:07 ?        00:00:00 ora_mark_hndb1
oracle    4849     1  0 10:07 ?        00:00:00 ora_ocf0_hndb1
oracle    4857     1  0 10:07 ?        00:00:01 ora_lck0_hndb1
oracle    4860     1  0 10:07 ?        00:00:00 ora_rsmn_hndb1
oracle    4935     1  0 10:07 ?        00:00:00 ora_o000_hndb1
oracle    4940     1  0 10:07 ?        00:00:00 ora_o001_hndb1
oracle    4944     1  0 10:07 ?        00:00:00 ora_arc0_hndb1
oracle    4946     1  0 10:07 ?        00:00:00 ora_arc1_hndb1
oracle    4948     1  0 10:07 ?        00:00:00 ora_arc2_hndb1
oracle    4950     1  0 10:07 ?        00:00:00 ora_arc3_hndb1
oracle    4958     1  0 10:08 ?        00:00:00 ora_gcr0_hndb1
oracle    4967     1  0 10:08 ?        00:00:00 ora_gtx0_hndb1
oracle    4969     1  0 10:08 ?        00:00:00 ora_rcbg_hndb1
oracle    4971     1  0 10:08 ?        00:00:00 ora_pz99_hndb1
oracle    4973     1  0 10:08 ?        00:00:00 ora_qmnc_hndb1
oracle    4976     1  0 10:08 ?        00:00:00 ora_q000_hndb1
oracle    4978     1  0 10:09 ?        00:00:00 ora_q001_hndb1
oracle    5024     1  2 10:10 ?        00:00:00 ora_cjq0_hndb1
oracle    5028     1  3 10:10 ?        00:00:00 ora_j000_hndb1
oracle    5030     1  1 10:10 ?        00:00:00 ora_j001_hndb1
oracle    5034     1  2 10:10 ?        00:00:00 ora_j002_hndb1
oracle    5036     1  0 10:10 ?        00:00:00 ora_j003_hndb1
oracle    5038  4649  0 10:10 pts/0    00:00:00 grep ora_

sqlplus / as sysdba

col member for a60
set line 150
select * from v$logfile;
SQL> /

    GROUP# STATUS  TYPE    MEMBER                          IS_
---------- ------- ------- -------------------------------------------------- ---
     2       ONLINE  +DBDATA/hndb/onlinelog/group_2.271.864399955       NO
     2       ONLINE  +FRA/hndb/onlinelog/group_2.261.864399969          YES
     1       ONLINE  +DBDATA/hndb/onlinelog/group_1.270.864399925       NO
     1       ONLINE  +FRA/hndb/onlinelog/group_1.260.864399939          YES
     3       ONLINE  +DBDATA/hndb/onlinelog/group_3.275.864401125       NO
     3       ONLINE  +FRA/hndb/onlinelog/group_3.262.864401141          YES
     4       ONLINE  +DBDATA/hndb/onlinelog/group_4.276.864401157       NO
     4       ONLINE  +FRA/hndb/onlinelog/group_4.263.864401171          YES

8 rows selected.

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29901741/viewspace-1345019/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/29901741/viewspace-1345019/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值