解决Oracle中,用户作为SYSDBA可以以任何密码登录
oracle认证方式分为操作系统认证和口令文件认证2种方式,操作系统认证有时候也叫本地认证。
--操作系统认证:即oracle认为操作系统用户是可靠的,即既然能登陆到操作系统那么oracle数据库你也能登陆
--口令文件认证:oracle认证认为操作系统用户是不可信任的,如果要访问数据库,必须进行再次认证。
具体实现如下:
--操作系统认证:
配置sqlnet.ora文件中的参数:SQLNET.AUTHENTICATION_SERVICES=(NTS)
spfile(pfile)文件参数:REMOTE_LOGIN_PASSWORDFILE=('NONE')
这个时候,只要你登陆操作系统oracle用户后,就可以直接conn /as sysdba登陆数据库了。但是不能通过oracle的client去直接连接/as sysdba。如客户端SQLPLUSw或者其它客户端软件直接conn /as sysbd 。
--口令文件认证:
配置sqlnet.ora文件中的参数:SQLNET.AUTHENTICATION_SERVICES=(NONE)
spfile(pfile)文件参数:REMOTE_LOGIN_PASSWORDFILE=('EXCLUSIVE')或('SHARED')
这个时候需要配置口令文件PWDorcl.ora。(orcl为数据库SID)可以通过orapwd命令进行配置口令,具体用法man orapwd。
这种情况下,就是口令认证模式,不能使用本地用户conn /as sysdba 这个时候会报错:ORA-01031 权限不足。你必须使用conn sys/pwd@orcl as sysdba进行登陆:就是说必须提供用户名和密码才能登陆。(orcl 为SID)
系统默认是操作系统认证模式。
另解:
如果用的是Win系统的话,操作系统里面有一个ora_dba组,这个组里面
Members can connect to the Oracle database as a DBA without a password
去掉这个组里的所有成员,这样sys登陆就一定要正确的密码
相关文档:
Oracle命令全集
第一章:日志管理
第二章:表空间管理
第三章:表
第四章:索引
第五章:约束
第六章:LOAD数据
第七章:reorganizing data
第八章: managing password security and resources
第九章:Managing users
第十章:managing privileges
第十一章: manager role
第十二章: BACKUP and RECOV ......
dba_users 数据库用户信息
dba_segments 表段信息
dba_extents 数据区信息
dba_objects 数据库对象信息
dba_tablespaces 数据库表空间信息
dba_data_files 数据文件设置信息
dba_temp_files 临时数据文件信息
dba_rollback_segs 回滚段信息
dba_ts_quotas 用户表空间配额信息
dba_free_space 数据库空闲空间 ......
user_objects 用户对象信息
user_source 数据库用户的所有资源对象信息
user_segments 用户的表段信息
user_tables 用户的表对象信息
user_tab_columns 用户的表列信息
user_constraints 用户的对象约束信息
user_sys_privs 当前用户的系统权限信息
user_tab_privs 当前用户的对象权限信息
user_col_privs 当 ......
关键字: oracle
Oracle安装中的DHCP问题
1.Linux
修改hosts文件 将ip地址与localhost设定就可以了,如下
vi /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
192.168.193.129 www.myzhtc.com
192.168.193.129 localhost myzhtc.com
......