Oracle 18c XE 新建用户及使用新建用户登录问题解决「建议收藏」

Oracle 18c XE 新建用户及使用新建用户登录问题解决「建议收藏」【本篇内容提供问题与解决办法,相关的Oracle数据库概念、原理等不做说明(我还没弄明白)】 问题描述: 数据库:Oracle Database Express Edition (XE) Relea…

Oracle 18c XE 新建用户及使用新建用户登录问题解决

【本篇内容提供问题与解决办法,相关的Oracle数据库概念、原理等不做说明(我还没弄明白)】
问题描述:
数据库:Oracle Database Express Edition (XE) Release 18.4.0.0.0 (18c)
1、使用SYS用户登录后,创建新用户提示ORA-65096: invalid common user or role name
2、新用户创建完成后,登录提示ORA-01017: 用户名/口令无效; 登录被拒绝
解决方案:
问题1:
①使用sqlplus登录SYS用户;
②查看当前会话所处的容器(container);
③查看可以切换的数据库(pdb);
④打开数据库(根据情况看是否需要执行):SQL> alter pluggable database xepdb1 open;
⑤将当前会话从容器切换到数据库;
⑥创建新用户;
⑦对新用户授权;
(还有种方案是使用sqlplus登录SYS用户后,创建用户时在用户名前面加上c##,例如create user c##testuser identified by 123;,具体的看参考链接吧)

PS C:UsersAdmin> sqlplus.exe

SQL*Plus: Release 18.0.0.0.0 - Production on 星期一 4月 19 16:18:54 2021
Version 18.4.0.0.0

Copyright (c) 1982, 2018, Oracle.  All rights reserved.

请输入用户名:  sys as sysdba
输入口令:

连接到:
Oracle Database 18c Express Edition Release 18.0.0.0.0 - Production
Version 18.4.0.0.0

SQL> show con_name;

CON_NAME
------------------------------
CDB$ROOT
SQL> show pdbs;

    CON_ID CON_NAME                       OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
         2 PDB$SEED                       READ ONLY  NO
         3 XEPDB1                         READ WRITE NO
SQL> alter session set container=xepdb1;

会话已更改。

SQL> show con_name;

CON_NAME
------------------------------
XEPDB1
SQL>  create user testuser identified by 123;

用户已创建。

SQL> grant connect,resource,dba to testuser;

授权成功。

SQL> exit
从 Oracle Database 18c Express Edition Release 18.0.0.0.0 - Production
Version 18.4.0.0.0 断开

问题2:
Oracle 18c XE数据库安装目录dbhomeXE etworkadmin下找到tnsnames.ora文件,新增SERVICE_NAME配置(以下为参考,根据实际情况做修改),修改完成后重启Oracle数据库

XEPDB1 =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = XEPDB1)
    )
  )

重启Oracle:

PS C:UsersAdmin> sqlplus.exe

SQL*Plus: Release 18.0.0.0.0 - Production on 星期一 4月 19 15:55:48 2021
Version 18.4.0.0.0

Copyright (c) 1982, 2018, Oracle.  All rights reserved.

请输入用户名:  sys
输入口令:
ERROR:
ORA-28009: 应当以 SYSDBA 身份或 SYSOPER 身份建立 SYS 连接


请输入用户名:  sys as sysdba
输入口令:

连接到:
Oracle Database 18c Express Edition Release 18.0.0.0.0 - Production
Version 18.4.0.0.0

SQL> shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup
ORACLE 例程已经启动。

Total System Global Area 1610610664 bytes
Fixed Size                  9029608 bytes
Variable Size             788529152 bytes
Database Buffers          805306368 bytes
Redo Buffers                7745536 bytes
数据库装载完毕。
数据库已经打开。
SQL> exit
从 Oracle Database 18c Express Edition Release 18.0.0.0.0 - Production
Version 18.4.0.0.0 断开

最后,放一张连接成功的截图(软件为DBeaver 社区版):
oracle_18c_xe_new_user_login

参考链接:
Oracle 12c创建用户时出现“ORA-65096: invalid common user or role name”的错误
Oracle 12c中新建pdb用户登录问题分析
新建oracle 19c创建用户名密码,登录提示用户名密码错误ora-01017?

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/6269.html

(0)
上一篇 2023-04-13
下一篇 2023-04-13

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注