本文环境配置:Oracle10gR2,Windows XP
Oracle的用户信息一般来说是保存在数据字典里的,所以常规用户在Oracle数据库没有启动的时候是无法登陆的。但有两类用户例外,这就是具有sysdba或者sysoper权限的用户。Oracle sysdba或者sysoper用户的登陆有两种方式:一是通过OS认证,二是通过密码文件验证。
究竟使用哪一种验证方式以及能否成功登陆取决于三个方面的因素:
1. sqlnet.ora中SQLNET.AUTHENTICATION_SERVICES的设置
2. 参数文件中REMOTE_LOGIN_PASSWORDFILE的设置
3. 密码文件 PWD%sid%.ora
Oracle进行权限验证的大致顺序如下:
1. 根据SQLNET.AUTHENTICATION_SERVICES的值决定是进行os验证还是密码文件验证。
2. 如果是os验证,根据当前用户的用户组判断是否具有sysdba权限。如果os验证失败,则进行密码文件验证。
2. 如果是密码文件验证,REMOTE_LOGIN_PASSWORDFILE的值以及密码文件是否存在决定了验证是否成功。
1. OS
验
证
要启用os验证,就必须在qlnet.ora中设置SQLNET.AUTHENTICATION_SERVICES=(NTS),然后在Windows中建立ora_dba用户组,把相关用户加入到这个组中(e.g., administrator),这样administrator就可以在不用提供用户名和密码(或者提供任意的用户名和密码)的情况下以sysdba身份本地登陆。因为操作系统已经代替Oracle进行了验证。
测试一:ora_dba用户本地登陆
C:\>sqlplus / as sysdba
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the OLAP and Data Mining options
SQL>
C:\>sqlplus wrong_user/wrong_password as sysdba
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the OLAP and Data Mining options
SQL>
测试二:非ora_dba用户本地登陆
C:\>sqlplus / as sysdba
ERROR:
ORA-01031: insufficient privileges
Enter user-name:
C:\>sqlplus wrong_user/wrong_password sysdba
ERROR:
ORA-01017: invalid username/password; logon denied
Enter user-name:
C:\>sqlplus sys/change_on_install as sysdba
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the OLAP and Data Mining options
SQL>
2. 密码文件验证
密码文件包含了被授予sysdba和sysoper权限的用户的用户名和密码。这是一个加密文件,一般来说存放在%oracle_home%/database目录下,文件名为PWD%sid%.ora。
如果要使用密码文件验证,则把sqlnet.ora改为SQLNET.AUTHENTICATION_SERVICES=none,或者从sqlnet.ora中删除SQLNET.AUTHENTICATION_SERVICES。同上匿名登陆sqlplus会失败,给出用户名和密码就可以成功登陆。
C:\>sqlplus / as sysdba
ERROR:
ORA-01031: insufficient privileges
Enter user-name:
C:\>sqlplus sys/change_on_install as sysdba
Connected to an idle instance.
idle>
测试一:删除密码文件。使用用户名和密码登陆,失败!
C:\>sqlplus sys/change_on_install as sysdba
ERROR:
ORA-01031: insufficient privileges
Enter user-name:
测试二:恢复密码文件,设置REMOTE_LOGIN_PASSWORDFILE=none。使用用户名和密码登陆,失败!
SQL> alter system set remote_login_passwordfile=none scope=spfile;
System altered.
C:\>sqlplus sys/change_on_install as sysdba
ERROR:
ORA-01017: invalid username/password; logon denied
Enter user-name:
测试三:恢复密码文件,设置REMOTE_LOGIN_PASSWORDFILE为EXCLUSIVE或者SHARED。使用用户名和密码登陆,成功!
SQL> alter system set remote_login_passwordfile=exclusive scope=spfile;
System altered.
C:\>sqlplus sys/change_on_install as sysdba
Connected to an idle instance.
SQL>
3. 密码文件
查看具有sysdba或者sysoper权限的用户:
SQL> select * from v$pwfile_users;
USERNAME SYSDB SYSOP
------------------------------ ------- -------
SYS TRUE TRUE
每次使用grant sysdba/sysoper授予新用户特殊权限或是alter user命令修改拥有sysdba/sysoper权限的用户密码的时候,Oracle都会自动的同步密码文件,这样保证在数据库没有打开的情况拥有特殊权限的用户能正常的登陆数据库以进行管理操作。
SQL> grant sysdba to logicgate;
Grant succeeded.
SQL> select * from v$pwfile_users;
USERNAME SYSDB SYSOP
------------------------------- -------- --------
SYS TRUE TRUE
LOGICGATE TRUE FALSE
使用orapwd命令可以重建密码文件。
C:\>orapwd
Usage: orapwd file=<fname> password=<password> entries=<users> force=<y/n>
where
file - name of password file (mandatory),
password - password for SYS (mandatory),
entries - maximum number of distinct DBA (optional),
force - whether to overwrite existing file (optional)
其中文件名和密码是必需的。entries设置了密码文件可包含的dba用户的最大数目。force定义了是否覆盖当前文件。重建密码文件会清除系统内除了sys用户以外所有sysdba用户的密码。必须使用grant sysdba同步密码文件。
C:\>orapwd file=%oracle_home%\database\PWDepcit.ora password=temp entries=20 force=y;
C:\>sqlplus sys/temp as sysdba
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the OLAP and Data Mining options
SQL> select * from v$pwfile_users;
USERNAME SYSDB SYSOP
------------------------------- -------- --------
SYS TRUE TRUE
分享到:
相关推荐
反编译工具,可以看C#代码
谷歌浏览器,安卓离线版APK
Delphi 12.3控件之SiComponents TsiLang Components Suite V7.6.0.1 for D7-DX10.3 WIN32-WIN64 ONLY.7z
MySQL课程考试题.txt
内容概要:本文详细探讨了深度神经网络(DNN)并行化技术的发展历程、现有技术和未来挑战。文章首先介绍了DNN的发展背景及其在图像分析、语音识别、自动驾驶等领域的广泛应用。随着DNN模型复杂度和训练数据量的增长,训练时间和计算成本急剧上升,促使研究人员寻求并行化解决方案。文中讨论了多核CPU、GPU、MIC、FPGA和ASIC等多种硬件平台的并行计算能力,并分析了CUDA、OpenCL、OpenMP、MPI和Spark等并行编程框架的特点和适用范围。接着,文章深入讲解了DNN的模型并行和数据并行两种主要并行化方法,并通过AlexNet案例展示了这两种方法的具体实施过程。此外,文章还比较了几款流行的DNN开源软件系统(如Caffe、TensorFlow、MXNet等)的并行化策略。最后,文章总结了当前DNN并行化存在的挑战,包括性能可移植性、任务自动划分、通信瓶颈等,并对未来的发展方向进行了展望。 适合人群:从事深度学习研究的科研人员、工程师和技术爱好者。 使用场景及目标:帮助读者全面了解DNN并行化技术的现状和发展趋势,指导他们在实际工作中选择合适的硬件平台和编程框架,优化DNN模型的训
网络工程师备考资源库80M(笔记和历年真题).zip
Java项目基于ssm框架的课程设计,包含LW+ppt
chromedriver-win32-135.0.7049.41.zip
Delphi 12.3控件之文件系统生成器GenFs(File System Generator)源代码包.zip
Fannker 3D Metahuman UE开发资源合集 探索UE5的高效开发利器!本合集整合Fannker精选3D Metahuman资源,涵盖角色模型、材质、动画及插件,助你快速打造逼真数字人。适用于游戏、影视及虚拟制作,提升工作流效率。兼容UE5先进功能,如Nanite与Lumen,让创作更流畅。立即获取,开启次世代角色开发之旅!
uTPLb_StreamUtils.pas
Delphi 12.3控件之UPXShell.rar
Java项目基于ssm框架的课程设计,包含LW+ppt
发嘎嘎撒日嘎三个人个人嘎斯人噶世人公认嘎嘎微软给我个如果
My project aims to develop a brain tumor segmentation model using DeepLabV3+ with ResNet-50 使用DeepLabV3+和ResNet-50开发一个脑肿瘤分割模型 具有resnet50骨干的deeplabv3开发脑肿瘤分割的正在进行的项目
第六周上课内容.odt
java面向对象 - 类与对象 java面向对象:用Java写一个计算器.
内容概要:本文详细介绍了三菱PLC在日本六层电梯控制系统中的应用及其具体实现方法。首先概述了电梯系统的工作原理,然后重点讲解了三菱PLC在电梯控制系统中的优势,包括高性能、高可靠性和易用性。接着深入探讨了电梯控制程序设计的关键环节,如系统初始化、中断处理机制、人机界面设计以及具体的梯形图编程逻辑。文中展示了如何通过位移寄存器、矩阵扫描法、方向判断、停靠逻辑等技术手段实现电梯的高效运行,并强调了故障处理机制的重要性。最后,通过对硬件配置、按钮处理、方向控制和联锁逻辑等方面的讨论,进一步揭示了三菱PLC在电梯控制系统中的核心地位。 适合人群:从事工业自动化、电梯控制系统设计的技术人员,尤其是熟悉三菱PLC编程的专业人士。 使用场景及目标:适用于需要深入了解三菱PLC在电梯控制系统中具体应用的场合,旨在帮助技术人员掌握电梯控制系统的编程技巧和优化方法,提高系统的稳定性和安全性。 其他说明:本文不仅提供了理论知识,还结合了大量实际代码示例,有助于读者更好地理解和实践三菱PLC在电梯控制系统中的应用。
Delphi 12.3控件之PowerPDF for D12.7z
内容概要:本文详细介绍了为农村三轮车定制的48V直流供电8极12槽永磁同步电机的设计过程。作者通过Maxwell软件进行电磁场仿真,优化了磁钢形状、绕组布局以及控制策略,成功将转矩脉动控制在3%以内。具体措施包括采用斜槽结构、Halbach阵列V型磁钢、双层短距绕组等技术手段,确保电机在复杂工况下仍能保持高效稳定运行。此外,文中还提供了多个Python脚本用于辅助设计和自动化生产流程。 适合人群:从事电机设计、电磁兼容性研究的技术人员,特别是关注农业机械化领域的工程师。 使用场景及目标:适用于需要改进现有车辆动力系统的场合,尤其是希望提高电机效率、减少振动噪音的应用场景。目标是帮助技术人员理解和掌握如何利用现代仿真工具和技术优化电机性能。 其他说明:文章不仅涵盖了理论分析,还包括大量实战经验和技巧分享,如磁钢形状优化、绕组路径规划、温度对转矩影响等方面的内容。同时,附带的实际测量数据和图表有助于读者更好地理解设计方案的有效性和优越性。