Oracle忘记用户名密码怎么办
- 格式:wps
- 大小:25.50 KB
- 文档页数:1
oracle提⽰登录密码过期完美解决⽅法oracle 提⽰登录密码过期解决1.登录到oracle的服务器2.切换到oracle ⽤户3.设置到当前操作的实例名:export ORACLE_SID=XXX4.连接数据库的命令⾏模式:sqlplus /nolog5.sql: conn /as sysdba;⽤dba的⾝份登录6.修改过期的⽤户密码设置:修改⽤户密码:alter user XXX identified by XXX修改⽤户密码之后,重新使⽤修改的⽤户密码连接数据库就ok了,假如仍然还有锁定⽤户操作,记得执⾏解锁命令:alter user XXX unlock;Oracle使⽤scott⽤户登录提⽰密码过期--------------------------------------------------------------------------------在初次安装oracle的时候,很多⼈在解锁scott⽤户的同时会忘记给scott ⽤户初始化密码,但是oracle会给scott ⽤户设置⼀个默认的密码那就是tiger ,可是在安装成功之后使⽤scott⽤户登录oracle数据库却提⽰密码过期。
出现上述这种情况时,我们可以在cmd⾏中输⼊:sqlplus /nolg ;(使⽤的是⽆⽤户名的⽅式登录)然后在SQL> 命令中输⼊:conn sys/password as sysdba;(此处的sys⽤户的密码是我们给数据库设置的密码)在登录成功之后,会提⽰已连接最后输⼊:alter user scott identified by tiger;(修改scott⽤户的密码)alter user scott account unlock;(对SCOTT解锁)然后我们就可以使⽤scott⽤户登录了。
总结以上所述是⼩编给⼤家介绍的oracle 提⽰登录密码过期完美解决⽅法,希望对⼤家有所帮助,如果⼤家有任何疑问欢迎给我留⾔,⼩编会及时回复⼤家的!。
Oracle数据库连接的⼏种⽅式⼀、本地通过JDBC获得Oracle数据库连接通过JDBC获得Oracle数据库连接,有三种⽅式:OCI⽅式、thin⽅式和JdbcOdbc桥⽅式。
OCI⽅式依赖于本地的动态链接库,如果在本地安装了Oracle数据库客户端可以采⽤该⽅式;⽽thin⽅式为纯java的数据库连接⽅式;JdbcOdbc桥⽅式依赖于本地ODBC数据库源的配置,这种⽅式⼀般不太被采⽤。
1、OCI⽅式 先在本地安装Oracle客户端,安装完之后,在安装的路径中可以找到…/jdbc/lib/classes12.zip⽂件,我们在环境变量classpath中设置classes12.zip所在的路径。
然后通过以下的数据库连接类,在本地通过OCI⽅式获得Oracle数据库连接。
/*** 在本地获得数据库连接*/package com.j2ee.db;import java.util.*;import java.sql.*;import javax.sql.*;import java.io.*;import oracle.jdbc.driver.*;import javax.naming.*;/*** 通过OCI⽅式获得Oracle数据库连接*/public class DbConnection{ final static String sDBDriver = "oracle.jdbc.driver.OracleDriver"; final static String sConnStr = "jdbc:oracle:oci8:sr/sr@ora199"; /** * */ public DbConnection() { } /** * 获得Oracle数据库连接 */ public java.sql.Connection connectDbByOci() { java.sql.Connection conn=null; try { Class.forName(sDBDriver); conn = DriverManager.getConnection(sConnStr); } catch (Exception e) { System.out.println("ERROR:"+e.getMessage()); } return conn; }}/*** 在本地获得数据库连接*/package com.j2ee.db;import java.util.*;import java.sql.*;import javax.sql.*;import java.io.*;import oracle.jdbc.driver.*;import javax.naming.*;/*** 通过thin⽅式获得Oracle数据库连接*/public class DbConnection{ private String sConnStr = ""; /** * 缺省构造器 */ public DbConnection() { sConnStr = "jdbc:oracle:thin:@10.1.4.199:1521:ora199"; } /** * @param ip,serviceName */ public DbConnection(String ip,String serviceName) { sConnStr = "jdbc:oracle:thin:@"+ip+":1521:"+serviceName; } /** * 通过thin⽅式获得Oracle数据库的连接. */ public java.sql.Connection connectDbByThin() { java.sql.Connection conn=null; try { Class.forName(sDBDriver); conn = DriverManager.getConnection(sConnStr,"sr","sr"); } catch (Exception e) { System.out.println("ERROR:"+e.getMessage()); } return conn; } /** * 通过thin⽅式获得Oracle数据库的连接. * @param userId,password */ public java.sql.Connection connectByJdbc(String userId,String password) { java.sql.Connection conn=null; try { Class.forName(sDBDriver); conn = DriverManager.getConnection(sConnStr,userId,password); } catch (Exception e) { System.out.println("ERROR:"+e.getMessage()); } return conn; }} 这种⽅式运⽤起来⽐较灵活,简单,具有较强的移植性和适⽤性。
解决oracle数据库忘记系统管理员密码下面我分两步讲解这个问题,1)Oracle数据库的三种认证机制;2)oracle数据库忘记系统管理员密码怎么办?1.Oracle数据库的三种认证机制a)操作系统验证b)密码文件验证c)数据库验证注:一般系统用户验证是先操作系统验证,再密码文件验证。
而普通用户直接是数据库验证。
在你电脑上启动oracle数据库监听和对应的oracle实例。
然后在CMD输入sqlplus / as sysdba;用户名和密码可随便写或者不写,但必须按照这种格式来写,能够进去;因为oracle 数据库首先是操作系统验证,当安装oracle数据库时,在电脑里面会自动添加一组oracle 用户组,登录oracle数据库系统管理员时默认是用这个oracle用户组进去的(如下图)。
当删除oracle数据库的Administrator的时候,这时候登录必须用sqlplus sys/password as sysdba;也就是说现在操作系统不认证,变为密码文件验证。
必须输入正确的用户名和密码。
2.oracle数据库忘记系统管理员密码怎么办?a)将你oracle数据库的PWDorcl.ora文件删除,路径为:E:\oracle\product\10.2.0\db_1\database\PWDorcl.ora;如果实例为orcl2,那么对应的文件名称为PWDorcl2.orab)启动oracle数据库监听和对应的oracle实例。
c)在CMD窗口中输入orapwd指令,会有相应的提示:orapwd file=<fname>password=<password> entries=<users> force=<y/n>,说明:file为你的密码文件的路径;password为系统管理员的密码;entries为能够放的系统管理员的个数;force 为强制覆盖,可写可不写。
今天整个一天我都在oracle中晃悠,修复PLSQL无法登陆的问题,到现在终于解决了。
感觉走了很多弯路,希望在这里能给大家一些帮助。
指导一下大家解决:忘记密码、用户被锁住,登陆时出现的ORA-12154 TNS无法解析指定的连接标识符、ORA-12514 TNS:监听进程不能解析描述符和ORA-12541 无监听程序。
这三类错误是经常见的,命名都十分相似。
下面我们来一一解决。
首先我要申明,这里提供多种解决方式,因为每个人电脑环境都不一样,造成这种错误的原因也各不相同,所以大家多尝试肯定会解决你的问题。
第一个问题:忘记密码怎么办?用户锁住了怎么办?1进入cmd2 sqlplus / as sysdba3alter user sys identified by 新密码;(例如:alter user scott identified by tiger) 这句话的意思是将scott用户的密码设置成by后面的字符串tiger。
当然你也可以新建一个用户,步骤如下1 进入cmd2sqlplus / as sysdba或者sqlplus sys/密码as sysdba3 create user 用户名identified by 密码;4grant connect,resource to 用户名;5 conn 用户名/密码说明:如果第5步可以连接成功说明,用户建立成功,就可以用这个用户登录了。
提示:这里的输入口令,你只要输入就可以,它不会显示出来的,输入完密码之后按下Enter就可以了,出现连接到:就说明成功连接数据库。
那么我们用刚刚修改了密码的scott登录时候出现了,用户锁住了,我们可以用sys登录,然后使用Alter user scott account unlock;出现用户已更改,说明解锁成功,可以使用scott用户登陆了。
这样对于密码的问题,我们就已经解决了。
---ORA-12154 TNS无法解析指定的连接标识符。
PLSQL⾃动登录,记住⽤户名密码⽇常使⽤技巧配置启动时的登录⽤户名和密码这是个有争议的功能,因为记住密码会给带来数据安全的问题。
但假如是开发⽤的库,密码甚⾄可以和⽤户名相同,每次输⼊密码实在没什么意义,可以考虑让PLSQL Developer记住密码。
1、如果只登录⼀个,⽤户名密码都是固定的,可以修改执⾏程序的快捷⽅式:在桌⾯上建⽴plsqldev的快捷⽅式,然后点击右键,打开属性对话框,在⽬标后的⽂本框中输⼊:"D:\Program Files\PLSQL Developer\plsqldev.exe" userid=uname/upwd@172.16.89.22/dbname上⾯的两⾏不要换⾏,就可以⽤uname⽤户名、upwd密码直接登录到dbname的oracle数据库。
2、登录多个数据库,或者⼀个数据库但有多个⽤户和密码,修改PLSQL的选项(Tools->Preferences),记住登录Oracle的⽤户名和密码,然后在启动程序时选择所需的⽤户即可,如下图所⽰。
点击⽤户名旁边的按钮,选择登录⽤户:让PLSQL记住登录过的⽤户名和密码1 保存⽤户名tools -> Preferences -> User Interface - Options勾选 Autosave username ,保存即可。
2 保存密码1. tools -> Preferences -> Oracle -> logon History->fixed user按格式:user/password@数据库添加⼀个fixed user保存即可。
附录:其它技巧1、登录后默认⾃动选中My Objects默认情况下,PLSQL Developer登录后,Brower⾥会选择All objects,如果你登录的⽤户是dba,要展开tables⽬录,正常情况都需要Wait ⼏秒钟,⽽选择My Objects后响应速率则是以毫秒计算的。
O r a c l e常见错误及解决方案问题1:Oracle服务器进入PL/SQL Developer时报ora-01033:oracle initialization or shutdown in progress 错误提示,应用系统无法连接Oracle服务。
解决方法如下:⑴进入CMD,执行set ORACLE_SID=fbms,确保连接到正确的SID;⑵运行sqlplus "/as sysdba"SQL>shutdown immediate停止服务SQL>startup启动服务,观察启动时有无数据文件加载报错,并记住出错数据文件标号SQL>shutdown immediate再次停止服务SQL>startup mountSQL> recover datafile 2恢复出错的数据文件SQL>shutdown immediate再次停止服务SQL>startup启动服务,此次正常。
⑶进入PL/SQL Developer检查,没有再提示错误。
问题2:Oracle密码忘记了怎么办?解决方法有很多种,这里讲述以下三种:⑴打开cmd,输入sqlplus /nolog,回车;输入“conn / as sysdba”;输入“alter user sys identified by 新密码”。
注意:新密码最好以字母开头,否则可能出现错误Ora-00988。
有了这个方法后,只要自己对oracle 服务器有管理员权限,Oracle密码忘记了也不用着急,可以随意修改密码。
⑵在命令行执行如下命令:sqlplus "/@服务名as sysdba"然后在sqlplus中运行以上命令即可修改密码:alter user sys identified by 新密码;alter user system identified by 新密码;⑶运行到C盘根目录输入:SET ORACLE_SID = 你的SID名称输入:sqlplus/nolog输入:connect/as sysdba输入:alert user sys identified by sys输入:alert user system identified by system完成以上5步,则密码更改完成,密码是Oracle数据库的初始密码。
oracle数据库忘记sys(或system)账户密码怎么办⼀、忘记除SYS、SYSTEM⽤户之外的⽤户的登录密码。
⽤SYS (或SYSTEM)⽤户登录: sqlplus sys/password as sysdba 使⽤如下语句修改⽤户的密码: alter user user_name identified by newpassword; 注意:密码不能全是数字。
并且不能是数字开头。
否则会出现:ORA-00988: ⼝令缺失或⽆效⼆、忘记SYS⽤户,或者是SYSTEM⽤户的密码。
如果是忘记SYSTEM⽤户的密码,可以⽤SYS⽤户登录。
然后⽤ALTER USER 命令修改密码: CONN SYS/PASS_WORD AS SYSDBA; ALTER USER SYSTEM IDENTIFIED BY “newpass”; 如果是忘记SYS⽤户的密码,可以⽤SYSTEM⽤户登录。
然后⽤ALTER USER 命令修改密码。
CONN SYSTEM/PASS_WORD ; ALTER USER SYSTEM IDENTIFIED BY newpass; 三、如果SYS,SYSTEM⽤户的密码都忘记或是丢失。
可以使⽤ORAPWD.EXE ⼯具修改密码。
开始菜单->运⾏->输⼊‘CMD’,打开命令提⽰符窗⼝,输⼊如下命令: orapwd file=D:\oracle10g\database\pwdctcsys.ora password=newpass 这个命令重新⽣成了数据库的密码⽂件。
密码⽂件的位置在ORACLE_HOME⽬录下的\database⽬录下。
这个密码是修改sys⽤户的密码。
除sys其他⽤户的密码不会改变。
不过Oracle提供了两种验证⽅式,⼀种是OS验证,另⼀种密码⽂件验证⽅式,如果是第⼀种⽅式⽤以下⽅法修改密码: sqlplus /nolog; connect / as sysdba alter user sys identified by ; alter user system identified by ; 如果是第⼆种⽅法就⽤上述⽅式修改,也可以下⽅法修改密码: orapwd file=pwdxxx.ora password=你设定的新密码 entries=10 设定完后,重新启动服务,再次登陆就可以了。