0

我在脚本中有以下命令:

ALTER SESSION SET CONTAINER = orclpdb
ALTER session set "_ORACLE_SCRIPT"=true;
CREATE PROFILE test_profile LIMIT password_life_time unlimited;

CREATE USER test IDENTIFIED BY test123
PROFILE test_profile

删除用户时使用:

ALTER SESSION SET CONTAINER = orclpdb;
DROP USER test cascade;

我正进入(状态 :

ora-28014 cannot drop administrative users

我首先关心的是这个test用户如何获得管理权限。其次,无论如何有更好的方法来做到这一点。

4

1 回答 1

1

用户成为 ADMIN 的原因是因为您使用的是下划线参数_oracle_script=true

ORA-28014:无法删除管理用户(文档 ID 1566042.1)

https://support.oracle.com/epmos/faces/DocumentDisplay?_afrLoop=267287602351459&id=1566042.1&_afrWindowMode=0&_adf.ctrl-state=w6ehg2ftt_53

正如 Oracle 在该文档中所述:

当使用脚本 catcon.pl 创建用户时,用户被视为管理用户,或者在该会话中,参数“_oracle_script”设置为 TRUE。

当您创建用户或其他任何事情时,您不应该使用它,除非您需要删除管理用户,在这种情况下您必须这样做。

为避免这种情况,在创建用户时_oracle_script完全避免使用该参数。

于 2020-08-05T06:44:10.980 回答