在安装和使用Oracle过程中可能遇到的困难及其相应的解决措施

遇到的问题及其解决措施
1.忘记登录密码
此时可以在SQL plus中重新创建一个用户
可行解决方法(来源于此博客)
https://blog.csdn.net/lovfree59/article/details/81201279
oracle12c 可行的解决办法:ORA-01017: invalid username/password; logon denied
开启服务OracleServiceORCL和OracleOraDB12Home1TNSListener用Oracle SQL developer 连接测试报错:ORA-01017: invalid username/password; logon denied,用户名和密码我都忘了。
然后去网上找到了一些答案,现在整理总结如下:
注意:Oracle12c规定用户名都必须以C##开头,否则无法使用。
解决办法:新建用户
打开sqlplus
第一步:以系统身份登录:
用户名:sys
密 码 :manager as sysdba
指令:sys/manager as sysdba;
第二步:创建新用户:
语法:create user 用户名 identified by 密码;
指令:create user C##zhangJun identified by zhangJun; (后面要加”;”)
第三步:为刚创建的用户解锁语法:
语法:alter user 用户名 account unlock;
指令:alter user C##zhangJun account unlock; //用户解锁
指令:alter user C##zhangJun account lock; //用户锁住
第四步:授予新登陆的用户创建权限
语法:grant create session to 用户名 ;
指令:grant create session to C##zhangJun;
授予新创建的用户数据库管理员权限:
语法:grant dba to 用户名;
指令:grant dba to C##zhang;
为用户授予其它权限:
指令:GRANT CREATE USER,DROP USER,ALTER USER ,CREATE ANY VIEW ,DROP ANYVIEW,EXP_FULL_DATABASE,IMP_FULL_DATABASE, DBA;

CONNECT,RESOURCE,CREATE SESSION TO C##zhangJun;
切换到新创建的用户登陆语法:connect 用户名/密码;
指令:connect C##zhangJun/zhangJun;
删除用户语法:drop user 用户名;
指令:drop user C##user;
如果用户拥有数据表,则不能直接删除,要用上关键字cascade:
指令:drop user user01 cascade;
注意所有操作都必须在结尾加上“;”才能执行成功。
在这里插入图片描述

修改用户和密码成功后再次用Oraclee SQL Developer连接,连接成功。
在这里插入图片描述
2.SQL developer 连接不了数据库(打开监听器)
错误代码12505解决措施
今天在使用SQL Developer的时候连不上去,报ORA-12505错误,但是SQLPLUS可以连接。
检查服务名,是OracleServiceORCL,那SID应当就是orcl,但是使用该SID仍然无法连接。
查阅资料后解决方法如下:

  1. 打开数据库实例的目录(我的是C:\app\Administrator\product\11.2.0\dbhome_1\NETWORK\ADMIN)
    找到listener.ora文件(listener监听器进程的配置文件),使用文本编辑器打开。
    内容如下:
    [plain] view plaincopy
    listener.ora Network Configuration File: C:\app\Administrator\product\11.2.0\dbhome_1\network\admin\listener.ora
    Generated by Oracle configuration tools.

SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = CLRExtProc)
(ORACLE_HOME = C:\app\Administrator\product\11.2.0\dbhome_1)
(PROGRAM = extproc)
(ENVS = “EXTPROC_DLLS=ONLY:C:\app\Administrator\product\11.2.0\dbhome_1\bin\oraclr11.dll”)
)
)

LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
)

ADR_BASE_LISTENER = C:\app\Administrator

  1. 添加SID信息(红色字体部分)
    [plain] view plaincopy
    listener.ora Network Configuration File: C:\app\Administrator\product\11.2.0\dbhome_1\network\admin\listener.ora
    Generated by Oracle configuration tools.
    SID_LIST_LISTENER =
    (SID_LIST =
    (SID_DESC =
    (SID_NAME = CLRExtProc)
    (ORACLE_HOME = C:\app\Administrator\product\11.2.0\dbhome_1)
    (PROGRAM = extproc)
    (ENVS = “EXTPROC_DLLS=ONLY:C:\app\Administrator\product\11.2.0\dbhome_1\bin\oraclr11.dll”)
    )
    (SID_DESC =
    (GLOBAL_DBNAME = orcl)
    (ORACLE_HOME = C:\app\Administrator\product\11.2.0\dbhome_1)
    (SID_NAME = orcl)
    )
    )
    LISTENER =
    (DESCRIPTION_LIST =
    (DESCRIPTION =
    (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    )
    )
    ADR_BASE_LISTENER = C:\app\Administrator
  2. 重新启动 OracleServiceORCL 和 OracleOraDb11g_home1TNSListener 服务。最后试一试,连接成功!
    附:
    PL/SQL DEVELOPER 和 SQLPLUS 采用 service_name 进行连接
    而应用程序是按照 sid_name 进行连接,所以出现 PL/SQL DEVELOPER和SQLPLUS 能够连接而应用程序却无法连接的问题。
    使用 SELECT INSTANCE_NAME FROM V$INSTANCE 语句,就可以查看当前数据库实例的sid_name了。
    出处:http://blog.csdn.net/mdifferent/article/details/7887832

在安装过程中错误安装一些用户被锁定
ORA-28000: the account is locked-的解决办法
ORA-28000: the account is locked
第一步:使用PL/SQL,登录名为system,数据库名称不变,选择类型的时候把Normal修改为Sysdba;
第二步:选择myjob,查看users;
第三步:选择system,右击点击“编辑”;
第四步:修改密码,把“帐户被锁住”的勾去掉;
第五步:点击“应用”再点击“关闭”;
第六步:重新登录就可以通过验证了;
第二种
ALTER USER username ACCOUNT UNLOCK;

第三种
在plsql developer中要是以scott/tiger登录时提示ora-28000 the account is locked。
解决办法:
新装完Oracle10g后,用scott/tiger测试,会出现以下错误提示:
oracle10g the account is locked
oracle10g the password has expired
原因:默认Oracle10g的scott不能登陆。
解决:
(1)conn sys/sys as sysdba; //以DBA的身份登录
(2)alter user scott account unlock;// 然后解锁
(3)conn scott/tiger //弹出一个修改密码的对话框,修改一下密码就可以了
在运行里面输入cmd在DOS模式下输入sqlplus,以system用户名登录,密码是刚装oracle时自己填写的密码orcl,登录进去以后。
SQL> conn sys/sys as sysdba; (分号是必须的但是我是以system登录的所在这不应该写conn sys/sys as sysdba应该写conn system/orcl as sysdba;)
Connected.
SQL> alter user scott account unlock;
User altered.
SQL> commit;
Commit complete.
SQL> conn scott/tiger//请输入新密码,并确认后OK
Password changed
Connected.
这时再到plsql developer里面以scott/tiger登录就可以了。。。。。
偶在数据库的问题处理过程中遇到了ORA-28000:the account is locked的错误,现将详细的处理情况介绍如下供大家参考:
ERROR:
ORA-01017: invalid username/password; logon denied
警告: 您不再连接到 ORACLE。
原因:非法的用户名或者密码,导致登录失败 set linesize

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值