Oracle18cXE新建用户及使用新建用户登录问题解决
【本篇内容提供问题与解决办法,相关的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.exeSQL*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.exeSQL*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 12c创建用户时出现“ORA-65096: invalid common user or role name”的错误
Oracle 12c中新建pdb用户登录问题分析
新建oracle 19c创建用户名密码,登录提示用户名密码错误ora-01017?
以上是 Oracle18cXE新建用户及使用新建用户登录问题解决 的全部内容, 来源链接: utcz.com/z/535534.html