Oracle 修改SYS、system用户密码

Oracle 修改SYSsystem用户密码

by:授客 QQ1033553122

概念

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 的口令

新口令:

重新键入新口令:

口令已更改

注:法3只适用于SYSTEM

 

验证:

SQL> conn system/huozhe

已连接。

SQL> show user

USER "SYSTEM"

SQL> exit

 

注:SYSSYSTEM用户之间可以相互修改口令

 

修改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认证。(windowsunix平台有大同小异)

 

要将认证方式设置为操作系统认证:

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

说明现在有sysSTUDY账户拥有sysdbasysoper的权限[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\目录下。

 

 

转载于:https://www.cnblogs.com/shouke/p/10158031.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/259691.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

春节小作业总结1

1、x Double.parseDouble(X);字符串转Double类型; 2、使用正则表达式判断输入的是字母还是数字 要import java.util.regex.Pattern 和 java.util.regex.Matcher public boolean isNumeric(String str){ Pattern pattern Pattern.compile("[0-9]*&q…

简单工厂模式,工厂方法模式,抽象工厂模式,spring的狂想

菜鸟D在项目中遇见一个比较纠结的高耦合,所以就想办法来解耦。情况是这样的:系统通过用户选择treeview控件的节点判断调用不同的处理,这些处理中某些东西又是类似的。同事的建议是采用简单工厂,耦合就耦合吧,反正treev…

堆、栈及静态数据区详解 转

内存分为代码区、全局数据区、堆区和栈区。堆一般存放动态数据,栈里一般存放局部成员。 关于堆栈和堆的概念[问题] C中创建本地(或者说局域)变量是在堆栈(stack)中分配内存地址,而创建全局变量则是在堆&…

如何使用CSS实现居中

前言: 这一篇主要是翻译 《how-to-center-anything-with-css》这一篇文章的主要内容,再加上自己的一些概括理解;主要问题是解决垂直居中的问题。我们知道实现水平居中的方式很多种,比如: text-align:center; margin:0 …

java布局_运用 BoxLayout 进行 Swing 控件布局

引言在用户使用 Java Swing 进行用户界面开发过程中,会碰到如何对 Java Swing 的控件进行布局的问题。Swing 的控件放置在容器 (Container) 中,容器就是能够容纳控件或者其它容器的类,容器的具体例子有 Frame、Panel 等等。容器需要定义一个布…

js变量类型

js中有null和undefined,null是指对象不存在,undefined是指原生数据不存在 var h {name:lisi,age:28};console.log(h.name)//对象用的是点语法,php中是name->lisi 下面是数组,数组用的是【】语法 1 var arr [a,3,hello,true];…

OPENCV MFC 程序出错修改

error C2146: 语法错误 : 缺少“;”(在标识符“PVOID64”的前面) 来源:http://houjixin.blog.163.com/blog/static/356284102009112395049370/ DirectShow 2009-12-23 09:50:49 阅读311 评论0 字号:大中小打开winnt.h文件,发现问题就是在winnt.h头文件中…

测试人员报BUG的正确姿势

每次我提需求的时候,都会和开发一言不合就上BUG。曾经看到一个段子,告诉了我,吵架是不行滴!影响心情,正确报bug的姿势应该是这样:不要对程序员说,你的代码有BUG。他的第一反应是:1、…

java链表实现_链表的原理及java实现

一:单向链表基本介绍链表是一种数据结构,和数组同级。比如,Java中我们使用的ArrayList,其实现原理是数组。而LinkedList的实现原理就是链表了。链表在进行循环遍历时效率不高,但是插入和删除时优势明显。下面对单向链表…

python和django中的常见错误

int() argument must be a string or a number, not tupleError in formatting: coercing to Unicode: need string or buffer, int foundData truncated for column content at row 1sql语句中单引号的设置字段类型字段长度 ascii codec cant decode byte 0xe7 in position 0:…

20141126-解决联网问题-笔记

当你的网络出现故障或无法连通时,如何才能简单高效的找出故障?其实只需要一个ping命令,就可以判断TCP/IP协议故障…… 1、Ping 127.0.0.1: 127.0.0.1是本地循环地址,如果本地址无法Ping通,则表明本地机TCP/…

inittab脚本启动解析 (zz)

http://blog.chinaunix.net/uid-17188120-id-4073497.html 1,启动inittab第一步:启动内核第二步:执行init (配置文件/etc/inittab)第三步:启动相应的脚本,执行inittab脚本,并且执行其…

java缓存技术_java缓存技术

最近在做java缓存,了解了一下.以下仅是对map对方式讨论。没有对点阵图阵讨论。作缓存要做以下2点:1:清理及更新缓存时机的处理:. 虚拟机内存不足,清理缓存.. 缓存时间超时,或访问次数超出, 启动线程更新2:类和方法的反射 (线程嵌套调用)reflect.invoke的使用。代码如下&#xf…

xss challenge 解题思路(1-3)

challenge1: 用很基本的方法即可&#xff0c;截图如下&#xff1a; 提交后成功弹窗&#xff0c;完成。 challenge2 这次我们发现我们输入的内容被放入value”“ 中&#xff0c;所以需要将前面的结构闭合&#xff0c;构造如下&#xff1a; "><script>alert(docume…

宾得准饼干广角镜头DA15

DA15的挂机效果图&#xff0c;感觉还是超级的小&#xff0c;是最小的广角镜头了&#xff1a; 主要特点1. 超广视角当安装在宾得数码单反相机上时&#xff0c;这款全新的镜头提供相当于35mm胶片规格的约23mm画面视角&#xff0c;可使拍摄者拍摄出独特的诱人影像和超广角镜头独有…

无限“递归”的python程序

如果一个函数直接或者间接调用了自己&#xff0c;那么就形成了递归&#xff08;recursion&#xff09;&#xff0c;比如斐波那契数列的一个实现 def fib(n):if n < 2:return 1else:return fib(n - 1) fib(n - 2) 递归一定要有结束条件&#xff0c;否则就形成了死循环&#…

java slf4j_SLF4J 使用手册

原文链接 译者&#xff1a;zivyuJava的简单日志门面( Simple Logging Facade for Java SLF4J)作为一个简单的门面或抽象&#xff0c;用来服务于各种各样的日志框架&#xff0c;比如java.util.logging、logback和log4j。SLF4J允许最终用户在部署时集成自己想要的日志框架。需要…

[译]Java 垃圾回收介绍

说明&#xff1a;这篇文章来翻译来自于Javapapers 的Java Garbage Collection Introduction 在Java中&#xff0c;对象内存空间的分配与回收是由JVM中的垃圾回收进程自动完成的。和C语言不一样的是&#xff0c;开发中不需要在Java中写垃圾回收代码。这也是使Java更加流行而且帮…

打印三角形

直角三角形 #include<iostream> using namespace std; int main() { int i,j; for(i1;i<10;i) {for(j1;j<i;j) cout<<"*"; cout<<endl; } } ———————————————————————————…

Linux基础入门学习笔记之二

第三节 用户及文件权限管理 Linux用户管理 Linux是可以实现多用户登录的操作系统 查看用户who命令用于查看用户 shiyanlou是当前登录用户的用户名 pts/0中pts表示伪终端&#xff0c;后面的数字表示伪终端的序号。 后面是当前伪终端启动时间 创建用户创建用户需要root权限&#…