RAC 下Oracle default 用户全部可以locked,包括sysrac

The following error occur while trying to change the password for SYSRAC or while trying to lock/unlock in BETA:DB23C.

/home/oracle >sqlplus / as sysdba

SQL*Plus: Release 23.0.0.0.0 - Beta on Do Dec 15 09:06:24 2022
Version 23.1.0.0.0

Copyright (c) 1982, 2022, Oracle. All rights reserved.
Oracle Database 23c Enterprise Edition Release 23.0.0.0.0 - Beta
Version 23.1.0.0.0

SQL> alter user SYSRAC identified by Passw0rd;
alter user SYSRAC identified by Passw0rd
*
ERROR at line 1:
ORA-28222: may not modify reserved user


SQL> alter user SYSRAC account lock;
alter user SYSRAC account lock
*
ERROR at line 1:
ORA-28222: may not modify reserved user


SQL> alter user SYSRAC password expire account lock;
alter user SYSRAC password expire account lock
*
ERROR at line 1:
ORA-28222: may not modify reserved user

- The same error occur in version 21.3 

/refresh/home> sqlplus / as sysdba

SQL*Plus: Release 21.0.0.0.0 - Production on Thu Dec 15 13:54:44 2022
Version 21.3.0.0.0
Copyright (c) 1982, 2021, Oracle. All rights reserved.

Connected to:
Oracle Database 21c Enterprise Edition Release 21.0.0.0.0 - Production
Version 21.3.0.0.0

SQL> set pages 500
SQL> set line 300
SQL> col username for a30
SQL> select username,account_status,authentication_type from dba_users where username='SYSRAC';

USERNAME         ACCOUNT_STATUS      AUTHENTI
--------------   --------------     ------------
SYSRAC           OPEN                NONE

SQL> alter user SYSRAC account lock;
alter user SYSRAC account lock
*
ERROR at line 1:
ORA-28222: may not modify reserved user

SQL> alter user SYSRAC identified by Passw0rd;
alter user SYSRAC identified by Passw0rd
*
ERROR at line 1:
ORA-28222: may not modify reserved user


 

SOLUTION

It's not allowed to lock (and unlock) SYSRAC and the authentication type cannot be changed, ONLY is allowed OS Authentication for SYSRAC.

According to the following Manual,after Upgrade to 19.3, account will be set to NO AUTHENTICATION. How to check it?

https://docs.oracle.com/en/database/oracle/oracle-database/19/upgrd/schema-only-accounts-upgraded-expired-password-accounts.html#GUID-D2C22951-2BBA-4A18-85C2-F0DF38839EF8

  During upgrades to Oracle Database 19c, default Oracle accounts that have not had their passwords reset before upgrade (and are set to EXPIRED status),

  and that are also set to LOCKED status, are set to NO AUTHENTICATION after the upgrade is complete.

SOLUTION

The authentication type is listed as NONE in the DBA_USERS view.
 

Before Upgrade (11.2.0.4)

SQL> SELECT username,
  2         account_status,
  3         authentication_type
  4  FROM   dba_users
  5  WHERE ROWNUM < 10;

USERNAME                       ACCOUNT_STATUS       AUTHENTI
------------------------------ -------------------- --------
SYSTEM                         OPEN                 PASSWORD
SYS                            OPEN                 PASSWORD
SYSBACKUP                      EXPIRED & LOCKED     PASSWORD
SYSRAC                         EXPIRED & LOCKED     PASSWORD
OJVMSYS                        EXPIRED & LOCKED     PASSWORD
SYSKM                          EXPIRED & LOCKED     PASSWORD
OUTLN                          EXPIRED & LOCKED     PASSWORD
SYS$UMF                        EXPIRED & LOCKED     PASSWORD
SYSDG                          EXPIRED & LOCKED     PASSWORD

9 rows selected.

SQL>

After Upgrade (19.3.0.0)

SQL> SELECT username,
  2         account_status,
  3         authentication_type
  4  FROM   dba_users
  5  WHERE ROWNUM < 10;

USERNAME                       ACCOUNT_STATUS       AUTHENTI
------------------------------ -------------------- --------
SYSTEM                         OPEN                 PASSWORD
SYS                            OPEN                 PASSWORD
SYSBACKUP                      LOCKED               NONE
SYSRAC                         LOCKED               NONE
OJVMSYS                        LOCKED               NONE
SYSKM                          LOCKED               NONE
OUTLN                          LOCKED               NONE
SYS$UMF                        LOCKED               NONE
SYSDG                          LOCKED               NONE

9 rows selected.

SQL>

相关推荐

  1. RFC4861 中文版

    2023-12-06 15:50:04       43 阅读
  2. 【android systrace学习】

    2023-12-06 15:50:04       29 阅读
  3. url中可以包含@吗

    2023-12-06 15:50:04       39 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2023-12-06 15:50:04       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2023-12-06 15:50:04       106 阅读
  3. 在Django里面运行非项目文件

    2023-12-06 15:50:04       87 阅读
  4. Python语言-面向对象

    2023-12-06 15:50:04       96 阅读

热门阅读

  1. AGI = 大模型 + 知识图谱 + 强化学习

    2023-12-06 15:50:04       67 阅读
  2. 数据库事务

    2023-12-06 15:50:04       59 阅读
  3. Angular中的单向和双向数据绑定

    2023-12-06 15:50:04       53 阅读
  4. php时间和centos时间不一致

    2023-12-06 15:50:04       51 阅读
  5. 苍穹外卖--在redis中缓存菜品数据,加快查询速度

    2023-12-06 15:50:04       51 阅读
  6. 1091 Acute Stroke (三维搜索)

    2023-12-06 15:50:04       62 阅读
  7. HTML h1和h2的三点区别

    2023-12-06 15:50:04       57 阅读
  8. 如何在centos服务器上安装docker保姆教程

    2023-12-06 15:50:04       51 阅读
  9. 代码随想录二刷 |字符串 |右旋转字符串

    2023-12-06 15:50:04       62 阅读
  10. 深入理解Python包管理工具pip的基本命令和使用

    2023-12-06 15:50:04       43 阅读
  11. Linux ubuntu20.04 安装使用 Intel sgx

    2023-12-06 15:50:04       50 阅读
  12. [Ubuntu 18.04] RK3399搭建NFS服务实现共享目录

    2023-12-06 15:50:04       74 阅读
  13. Linux C语言 33-排序算法

    2023-12-06 15:50:04       58 阅读
  14. Vue学习笔记-activated和deactivated生命周期

    2023-12-06 15:50:04       61 阅读