Oracle 修改SYS、system用户密码
Oracle 修改SYS、system用户密码
by:授客 QQ:1033553122
概念
SYS用户是Oracle中权限最高的用户,而SYSTEM是一个用于数据库管理的用户。在数据库安装完之后,应立即修改SYS,SYSTEM这两个用户的密码,以保证数据库的安全。
安装完之后修改密码方法
cmd命令行下输入 sqlplus / as sysdba;
法1.SQL>alter user sys identified by huozhe
法2.SQL>grant connect to sys identified by 123456
法3. SQL> password system
更改 system 的口令
新口令:
重新键入新口令:
口令已更改
(只适用于SYSTEM)
验证:
SQL> conn system/huozhe
已连接。
SQL> show user
USER 为 "SYSTEM"
SQL> exit
注:SYS和SYSTEM用户之间可以相互修改口令
修改SYS用户口令后的登录
将SYS用户的口令修改成123456后,可按以下几种方法登录:
法1.sqlplus / as sysdba 【以操作系统认证的方式登录,不需要用户名和口令】
法2.sqlplus sys/abcde as sysdba;
法3.sqlplus sys/ as sysdba
SQL*Plus: Release 11.2.0.1.0 Production on 星期二 11月 6 19:10:54 2012
Copyright (c) 1982, 2010, Oracle. All rights reserved.
输入口令:
注意:这里提示输入口令,不输入口令直接回车
连接到:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing optionssqlplus sys as sysdba;
上述语句,都可以登录成功,然后查看当前用户:
SQL> show user
USER 为 "SYS"
这是为什么呢,为什么修改了口令没有效果,不用口令或者随便用什么口令都可以进入呢。
答案是:认证方法。
oracle的口令认证
SYS口令认证分为操作系统认证和Oracle认证方法。
操作系统认证方式
对于如果是Unix操作系统,只要是以DBA组中的用户登录的操作系统,就可以以SYSDBA的身份登录数据库,不会验证SYS的口令。
对于windows操作系统,在oracle数据库安装后,会自动在操作系统中安装一个名为ORA_DBA的用户组,只要是该组中的用户,即可以SYSDBA的身份登录数据库而不会验证SYS的口令。也可以创建名为ORA_SID_DBA(SID为实例名)的用户组,属于该用户组的用户也具备以上特权。
如何修改认证方式
如何修改认证方式为操作系统认证或oracle认证。(windows,unix平台有大同小异)
要将认证方式设置为操作系统认证:
1. 修改sqlnet.ora文件
….\ product\11.2.0\ dbhome_2\ NETWORK\ADMIN\sqlnet.ora
…\product\版本号\home目录\ NETWORK\ADMIN\sqlnet.ora
记事本打开该文件,修改参数为:
SQLNET.AUTHENTICATION_SERVICES= (NTS)
WINDOWS下,默认就是这样,即使用NT认证
2. 修改init.ora文件
….\ product\11.2.0\dbhome_2\dbs\init.ora
说明:…\product\版本号\home目录\dbs\init.ora
记事本打开该文件,修改参数为:
remote_login_passwordfile='NONE'
3.重新启动数据库。
SQL> shutdown immediate
SQL> startup open
将认证方式设置为oracle认证(密码文件认证):
1. 同上,修改sqlnet.ora
….\ product\11.2.0\ dbhome_2\ NETWORK\ADMIN\sqlnet.ora
记事本打开该文件,修改参数为:
#SQLNET.AUTHENTICATION_SERVICES= (NTS) ,#注释掉这句话,即不使用NT认证
或者
SQLNET.AUTHENTICATION_SERVICES= (NONE)
2. 同上,修改init.ora
记事本打开该文件,修改参数为:
remote_login_passwordfile='EXCLUSIVE'
或者
remote_login_passwordfile='SHARED'
EXCLUSIVE表示只有当前实例使用这个密码文件,且允许有别的用户作为SYSDBA登录进入系统,若选择了SHARED,则表示不止一个实例使用这个密码文件。
3.重新启动数据库。
SQL> shutdown immediate
SQL> startup open
如果发生sys密码丢失的情况,怎么办?
步骤1.使用system用户进行密码更改
SQL> conn system/huozhe
已连接。
SQL> alter user sys identified by huozhe
说明:
1)默认情况下,只要用户具有alter user的权限,那么可以修改 oracle中任意用户,包括alter user中的所有optional
2)默认情况下,system账户之所以能修改sys的密码,是因为它属于dba角色,而dba角色当然具有alter user权限
SQL> select * from v$pwfile_users;
USERNAME SYSDB SYSOP SYSAS
------------------------------ ----- ----- -----
SYS TRUE TRUE FALSE
STUDY TRUE FALSE FALSE
说明现在有sys及STUDY账户拥有sysdba与sysoper的权限[STUDY默认创建的]。
步骤2.创建密码文件
如果存在密码文件(PWDsid.ora),则删除它
路径
….\product\11.2.0\dbhome_2\database\PWDorcl.ora
….\product\版本\home目录\database\PWDsid.ora
然后用orapwd.exe创建密码文件
orapwd路径
…\product\11.2.0\dbhome_2\BIN\orapwd.exe
说明:…\product\版本号\home目录\BIN\orapwd.exe
--cmd下输入 cd 命令进入到….\product\版本号\home目录\BIN 目录下,然后键入命令
orapwd file=filepath\pwd.ora password=password_of_sys entries=N
其中filepath表示密码文件路径,pwd.ora为密码文件名,sid是数据库实例名
eg:
E:\app\Administrator\product\11.2.0\dbhome_2\dbs\PWDorcl.ora
entries表示允许最大的超级用户数。
当没有指定文件路径时,密码文件默认存放在…\product\版本号\dbs\目录下。
Oracle 修改SYS、system用户密码的更多相关文章
- oracle 12C SYS,SYSTEM用户的密码都忘记或是丢失
密码 conn / as sysdba alter user system identified by Abcd1234; manual script first -->manual_scrip ...
- KingbaseES R3 集群修改system用户密码方案
方案说明: 对于kingbaseES R3集群修改system密码相比单机环境有一定的复杂性,需要修改的位置如下: 1)数据库中system用户密码,可以用alter user命令修改 2)在reco ...
- oracle忘记sys/system/scott用户密码了,如何重置oracle密码?
今天用到的oracle数据库,但是发现以前设置的密码,忘记了,怎么输入都不对,所以从网上找了一下资料,解决了,然后整理分享给大家. 一.遇到的问题: 1..忘记除SYS.SYSTEM用户之外的用户的登 ...
- java修改AD域用户密码使用SSL连接方式
正常情况下,JAVA修改AD域用户属性,只能修改一些普通属性, 如果要修改AD域用户密码和userAccountControl属性就得使用SSL连接的方式修改, SSL连接的方式需要操作以下步骤: 1 ...
- KingbaseES R3 集群一键修改集群用户密码案例
案例说明: 在KingbaseES R3集群的最新版本中增加了kingbase_monitor.sh一键修改集群用户密码的功能,本案例是对此功能的测试. kingbaseES R3集群一键修改密码说明 ...
- KingbaseES R6 集群sys_monitor.sh change_password一键修改集群用户密码
案例说明: kingbaseES R6集群用户密码修改,需要修改两处: 1)修改数据库用户密码(alter user): 2)修改.encpwd文件中用户密码: 可以通过sys_monitor.sh ...
- oracle中sys,system,scott,hr用户
https://blog.csdn.net/xingfeng0501/article/details/6699390 scott 是个演示用户,是让你学习ORACLE用的 hr用户是个示例用户,是在创 ...
- 烦烦烦SharePoint2013 以其他用户登录和修改AD域用户密码
sharepoint默认是没有修改AD密码 和切换 用户的功能,这里我用future的方式来实现. 部署wsp前: 部署后 点击以其他用户身份登录 点击修改用户密码: 这里的扩展才菜单我们用Custo ...
- SharePoint2013 以其他用户登录和修改AD域用户密码 功能
sharepoint默认是没有修改AD密码 和切换 用户的功能,这里我用future的方式来实现. 部署wsp前: 部署后: 点击以其他用户身份登录 点击修改用户密码: 这里的扩展才菜单我们用Cust ...
随机推荐
- 01-01java概述 doc命令、jdk\jre下载安装、path、classpath配置、开发中常见小问题
1:计算机概述(了解) (1)计算机 (2)计算机硬件 (3)计算机软件 系统软件:window,linux,mac 应用软件:qq,yy,飞秋 (4)软件开发(理解) 软件:是由数据和指令组成的.( ...
- 九浅一深ThreadLocal
ThreadLocal的作用.使用示例 ThreadLocal是线程的本地存储,存储在其内的值只能被当前线程访问到,其他线程获取不到,可以存储任意对象.经常用来存储当前线程的一些上下文信息,这样不用通 ...
- MapReduce中的partitioner
1.日志源文件: 1363157985066 13726230503 00-FD-07-A4-72-B8:CMCC 120.196.100.82 i02.c.aliimg.com 24 27 2481 ...
- PHP的语言构造器
isset和empty看起来像是函数,我们也经常把它当作函数一样使用,但是实际上,它们是语言构造器. php中的语言构造器就相当于C中的预定义宏的意思,它属于php语言内部定义的关键词,不可以被修改, ...
- Vue笔记:使用 VS Code 断点调试
直接在 Chrome 的调试窗口中调试 Vue 代码有诸多不便, 好在 Visual Studio Code 中提供了 Debugger for Chrome 插件,能够通过配置直接在 VS Code ...
- Java中的简单工厂模式(转)
Java中的简单工厂模式 举两个例子以快速明白Java中的简单工厂模式: 女娲抟土造人话说:“天地开辟,未有人民,女娲抟土为人.”女娲需要用土造出一个个的人,但在女娲造出人之前,人的概念只存在于女娲的 ...
- springboot-29-security(二)用户角色权限控制
本博客基于上一个http://www.cnblogs.com/wenbronk/p/7379865.html 增加了角色的权限表, 可以进行权限校验 一, 数据准备 1, 数据表建立 /* Navic ...
- mybatis插入数据库 返回主键
传递参数为对象TaskEntity, 返回主键结果为Integer 与 主键 task_id 的类型一致即可 <insert id="addTask" parameterTy ...
- Nginx+uwsgi+Django 的web应用环境部署-完整记录
Python作为当前最火爆最热门,也是最主要的Web开发语言之一,在其二十多年的历史中出现了数十种Web框架,比如Django.Tornado.Flask.Twisted.Bottle和Web.py等 ...
- 大数据之presto
1.概述 Presto是一个分布式SQL查询引擎,用于查询分布在一个或多个不同数据源中的大数据集.presto可以通过使用分布式查询,可以快速高效的完成海量数据的查询.它是完全基于内存的,所以速度非常 ...