SQLNET.AUTHENTICATION_SERVICES总结

数据库版本:oracle 11.2.0.4


1. 官网概念


SQLNET.AUTHENTICATION参数,官网给出一下解释说明

Purpose
To enable one or more authentication services. If authentication has been installed, then it is recommended that this parameter be set to either none or to one of the authentication methods.

Default
ALL

Note:
When installing the database with Database Configuration Assistant (DBCA), this parameter may be set to nts in the sqlnet.ora file.
Values
Authentication Methods Available with Oracle Net Services:
NONE  for no authentication methods, including Microsoft Windows native operating system authentication. When SQLNET.AUTHENTICATION_SERVICES is set to none, a valid user name and password can be used to access the database.
ALL  for all authentication methods.
NTS  for Microsoft Windows native operating system authentication.
Authentication Methods Available with Oracle Advanced Security:
kerberos5 for Kerberos authentication.
radius for RADIUS authentication.
tcps for SSL authentication.


2. windows平台


   对于windows平台 ,参数SQLNET.AUTHENTICATION_SERVICES 主要是以下几种情况:

    (1). sqlnet.ora文件为空,或用#注释掉              --密码文件验证通过,操作系统认证无法通过
    (2). SQLNET.AUTHENTICATION_SERVICES = (NTS)       --操作系统验证通过,密码文件认证也能通过
    (3). SQLNET.AUTHENTICATION_SERVICES = (NONE)      --密码文件验证通过,操作系统认证无法通过
    (4). SQLNET.AUTHENTICATION_SERVICES = (NONE,NTS)  --操作系统验证通过(前后顺序颠倒也一样),密码文件认证也能通过

    (5).  SQLNET.AUTHENTICATION_SERVICES = (ALL)    --在windows下,该种为错误方式,会报如下错误:


 


3.Linux平台


   对于Linux平台,参数SQLNET.AUTHENTICATION_SERVICES主要是以下几种情况:

    (1). sqlnet.ora文件为空,或用#注释掉                             --操作系统验证通过,密码文件认证无法通过
    (2). SQLNET.AUTHENTICATION_SERVICES = (NTS)       --操作系统验证无法通过,密码文件认证也无法通过
    (3). SQLNET.AUTHENTICATION_SERVICES = (NONE)      --操作系统验证无法通过,密码文件认证也无法通过
    (4). SQLNET.AUTHENTICATION_SERVICES = (NONE,NTS)  --基于操作系统验证(前后顺序颠倒也一样),密码文件认证也能通过

    (5).  SQLNET.AUTHENTICATION_SERVICES = (ALL)         --操作系统验证通过,密码文件认证无法通过



4.总结


 (1) 该参数默认值为ALL,当通过DBCA建库时,该参数可能为NTS。

 (2) 在windows中,sqlnet.ora文件里默认会包含SQLNET.AUTHENTICATION_SERVICES参数,设置方式参见上述;但是在Linux中默认不包含SQLNET.AUTHENTICATION_SERVICES参数,所以我们刻意配置该参数也没有必要。
 (3)  SQLNET.AUTHENTICATION_SERVICES参数只会影响我们在数据库服务器本地登录管理员账号(sys),但是不会影响我们plsql登录数据库。


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

转载于:http://blog.itpub.net/69902769/viewspace-2653983/

C# MES通信从入门到精通(1)——串口传输文件 本文详细介绍了在Mes通信领域如何使用串口发送文件,由实战经验总结,堪称MES通信领域的葵花宝典! 阅读详情

相关推荐

线上专利申请(超详细)| 签名确认

在【法人登录】页面点击【证书登录】按钮,弹出证书登录提示框,点击【确 认】按钮,进入到输入证书密码页面,点击【取消】按钮,取消本次操作。企业在提交申请时,需要增加签名,如使用企业账户点击提交,会弹出“法人、代理机构不能签名,请使用经办人签名”,这个时候就需要换个账号了。在需要签名时,将专利官网的登录方式点击法人登录,选择扫码登录,使用移动端经办人账户的扫一扫功能扫描登录。登录完成后,再点击签名,使用移动端扫一扫功能,扫描签名,输入证书号,确认签名,并提交。最后,祝大家的申请都成功!

weixin_62112323的博客 9112

SQLNET.AUTHENTICATION_SERVICES

<br />$ORACLE_HOME/network/admin/sqlnet.ora<br /> <br />如果使用了SQLNET.AUTHENTICATION_SERVICES=(NTS)<br /> 则说明可以使用OS认证就,只要conn / as sysdba 就可以登陆<br /> 但如果注释掉或SQLNET.AUTHENTICATION_SERVICES=(none)<br /> 必须要使用conn sys/password@oracle as sysdba才能登陆<br />1、在wi

来去 的BLOG 1万+

SuccessFactors入门篇

SuccessFactors入门篇—— Employee Central(一)最近通过一个月左右的学习,拿到了SF EC(SuccessFactors Employee Central )模块SAP认证,所以打算把自己学习SF的整个过程以及相关资料和大家分享一下,相互切磋,共同进步。Employee Central简单了解Employee Central简单了解新的改变功能快捷键合理的创建标题,有...

qq_42288853的博客 1万+

小议SQLNET.AUTHENTICATION_SERVICES

 一直以来,我记住的一个知识点就是:SQLNET.AUTHENTICATION_SERVICES=(NTS)是使用OS认证的必须条件之一。今天一个偶然的机会,才知道这个结论是不完全准确的。在本文的测试中,remote_login_passwordfile的值都为EXCLUSIVE,相关用户所属组也设置正确。先看windows下的测试:--设置为NTS,OS验证成功E:oracleora92in>

ArduousBonze的专栏 4268

PD虚拟机网络初始化失败的权限修复指南

本文针对Parallels Desktop虚拟机常见的“网络初始化失败”问题,提供了详细的权限修复指南。通过分析问题根源,指导用户安全备份并修改关键的`network.desktop.xml`和`dispatcher.desktop.xml`配置文件,以恢复PD虚拟机的网络连接。文章还包含了修复后的验证步骤及预防措施,帮助用户彻底解决并避免此类权限问题。

qqq44的博客 851

VSCode上搭建C/C++开发环境(vscode配置c/c++环境)Windows系统---保姆级教程

关于VSCode上搭建C/C++开发环境的内容,到这里就结束了,这里博主感叹一下,VSCode真的挺强大的,作为一个编辑器,可以通过和编译器链接成为开发环境,将环境配置好的话,在这上面写代码似乎也是个不错的选择。大家有任何疑问,欢迎在评论区中提出,本篇博客有任何问题和错误也欢迎来和博主讨论,真心希望能和大家一起进步。最后,如果本篇博客对你有帮助的话,能不能给博主一个三连啊!

2303_79329831的博客 8万+

sqlnet.ora里面的sqlnet.authentication_services设置错误导致sqlplus “/as sysdba“登录失败

srvctl stop database /stop instance也无法运行 报错。所以sqlplus "/as sysdba"会报错。因为srvctl依赖 操作系统认证这种登录方式。导致没有了操作系统认证这种登录方法。将sqlnet.ora里面的。

wgz7747147820的博客 966

Android面试必考问题:Android性能优化最全面试题及参考答案(8万字长文)

Android 中的 OOM(Out Of Memory,内存溢出)异常是指应用程序在运行过程中,由于申请的内存空间超过了系统所能提供的最大内存限制而导致的错误。在 Android 中,内存泄漏是指应用中的某些对象在不再被使用后,仍然被其他对象持有引用,导致这些对象无法被垃圾回收器回收,从而占用内存空间,随着时间的推移可能会导致应用内存不足,甚至崩溃。在一次开发 Android 应用的过程中,我发现应用在长时间运行后会出现内存占用过高的情况,导致应用变得卡顿,甚至可能会被系统强制关闭。

大模型大数据攻城狮的专栏 2532

oracle: 浅谈sqlnet.ora文件的作用,及SQLNET.AUTHENTICATION_SERVICES设置

关于sqlnet.ora的说明: *****************************************************FROM ORACLE11G DOCS************************************* The sqlnet.

懒猫会打盹的专栏 1万+

嵌入式Linux&Android开发-环境搭建

目录 一、环境要求 二、相关软件&SDK下载 三、环境安装 3.1 VMware Worksation 3.2 Ubuntu1804 3.3 VSCode安装 3.4 Samba服务器搭建 一、环境要求 编译 Android 对机器的配置要求较高: 64 位 CPU 大于12GB 物理内存+交换内存(最好16GB以上) 30GB 空闲的磁盘空间用于构建,源码树另外占用大约 25GB, 如果要编译源码则还需要 150GB 的磁盘空间。 RK官方推荐使用 Ubuntu 16..

嵌入式成长手册 549

AI产品经理面试宝典第94天:RAG知识库构建与预处理策略面试指南

本文深入解析RAG知识库构建的核心挑战与预处理策略,涵盖文档格式转换、问答对生成及自动化测试全流程,为AI产品经理提供面试必备的实战方法论与避坑指南,助你精准应对技术深度类问题。

打造全国最全的AI Agent开发知识领域的博客 312

oracle authentication_services,SQLNET.AUTHENTICATION_SERVICES 的设置

转载一篇关于SQLNET.AUTHENTICATION_SERVICES的设置的文章。原文链接如下:http://space.itpub.net/231499/viewspace-63849一直以来,我记住的一个知识点就是:SQLNET.AUTHENTICATION_SERVICES=(NTS)是使用OS认证的必须条件之一。今天一个偶然的机会,才知道这个结论是不完全准确的。在本文的测试中,remo...

weixin_30682043的博客 528

光伏微电网蓄电池储能控制系统设计及动态性能分析

本文构建了光伏微电网蓄电池储能控制系统的完整理论体系。在系统架构方面,提出了基于直流母线电压平衡的多时间尺度能量管理理论,建立了光伏发电单元的二阶物理模型和MPPT动态跟踪算法。针对蓄电池系统,设计了融合二阶RC等效电路与扩展卡尔曼滤波的SOC估计方法,误差控制在3%以内。双向DC-DC变换器采用状态空间平均建模方法,推导了小信号传递函数,为闭环控制提供理论基础。该体系实现了从瞬时功率平衡到长期能量调度的多层级协同控制,为微电网稳定运行提供了系统的解决方案。

AI的内部世界的博客 191

oracle authentication_services,SQLNET.AUTHENTICATION_SERVICES总结

数据库版本:oracle 11.2.0.41. 官网概念SQLNET.AUTHENTICATION参数,官网给出一下解释说明PurposeTo enable one or more authentication services. If authentication has been installed, then it is recommended that this parameter be ...

weixin_33411250的博客 321

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

lwip-2.0.3

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

oracle authentication_services,理解SQLNET.AUTHENTICATION_SERVICES参数

理解SQLNET.AUTHENTICATION_SERVICES参数1、官方说明:SQLNET.AUTHENTICATION_SERVICESPurposeUse the parameter SQLNET.AUTHENTICATION_SERVICES to enable one or more authentication services. If authentication has been...

weixin_39907133的博客 371

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

SQLNET.AUTHENTICATION_SERVICES= (NTS)和SQLNET.AUTHENTICATION_SERVICES= (NONE)区别

C:\oracle\product\11.2.0\dbhome_1\NETWORK\ADMIN\sqlnet.ora中SQLNET.AUTHENTICATION_SERVICES值的含义 1.SQLNET.AUTHENTICATION_SERVICES= (NONE)    这样就不允许使用操作系统本地验证了,例如:   C:\>sqlplus /nolog   sqlplus>conne

拼老命的程序猿 6022

关于 SQLNET.AUTHENTICATION_SERVICES 验证方式的说明

今天去客户那里巡检,客户提出为了提高数据库安全性考虑,需要修改sys/system密码,并通过数据库验证方式来替代默认的操作系统方式,这里,我就把这两种验证方式总结一下。 操作系统验证,即通过操作系统账户的权限访问数据库,举个例子,如果已经拥有了windows下的系统管理员administrator的权限,那么当采用该方式验证的话,无需输入用户/密码就可以访问,比如:sqlplus /

aaron8219's Oracle&Linux Technology Blog 4247

oracle authentication_services,SQLNET.AUTHENTICATION_SERVICES说明

背景说明:在windodws平台上面的一台数据库通过sqlplus / as sysdba的方式登录的的时候报ORA-01031:权限不足的错误。$ORACLE_HOME/network/admin/sqlnet.ora,SQLNET.AUTHENTICATION_SERVICES = (None),把这个修改成SQLNET.AUTHENTICATION_SERVICES = (NTS)即可;以下...

weixin_34927903的博客 314

【转载】SQLNET.AUTHENTICATION_SERVICES

$ORACLE_HOME/network/admin/sqlnet.ora 如果使用了SQLNET.AUTHENTICATION_SERVICES=(NTS)则说明可以使用OS认证就,只要conn / as sysdba 就可以登陆但如果注释掉或SQLNET.AUTHENTICATION_SERVICES=(none)必须要使用conn sys/password@oracle ...

weixin_34111819的博客 235

ORACLE 身份验证SQLNET.AUTHENTICATION_SERVICES=(NTS)

SQLNET.AUTHENTICATION_SERVICES=(NTS)   1、在windows下,SQLNET.AUTHENTICATION_SERVICES必须设置为NTS或者ALL才能使用OS认证;不设置或者设置为其他任何值都不能使用OS认证。     sqlnet.ora文件为空时采用Oracle密码文件验证   SQLNET.AUTHENTICATIO

A87610799的博客 5483

SQLNET.AUTHENTICATION_SERVICES 参数

最近在客户那边实施DG时,通过sqlplus sys/oracle as sysdba 连接数据库是成功的,但是通过RMAN TARGET sys/oracle 连接总是报 ORA-01017: invalid username...

cnjl42150的博客 611

理解SQLNET.AUTHENTICATION_SERVICES参数

理解SQLNET.AUTHENTICATION_SERVICES参数 1、官方说明: SQLNET.AUTHENTICATION_SERVICES Purpose Use the parameter SQLNET.AUTHENTICATION_SERVICES to enable one or more authentication services. If authent

欧辰的专栏 1121

sqlnet.ora SQLNET.AUTHENTICATION_SERVICES 参数

sqlnet.ora SQLNET.AUTHENTICATION_SERVICES 参数[@more@]在 window 平台下: 只有在 sqlnet.ora 中的参数 SQLNET.AUTHENTICATION_SERV...

crhwkrhpunow61910的博客 184
上一篇: 诡异的TNS-12531、ORA-25253错误
下一篇: 查看DBID的方法
cssma46022
博客等级 码龄11年 0粉丝 0原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值