更改";系统“;使用sql developer的Oracle12c数据库中的用户

更改";系统“;使用sql developer的Oracle12c数据库中的用户,sql,oracle,oracle-sqldeveloper,ddl,oracle12c,Sql,Oracle,Oracle Sqldeveloper,Ddl,Oracle12c,我想使用sql developer更改“系统”用户的密码,但运行此命令时出现以下错误 我使用系统用户创建连接并运行以下命令 alter user system identified by "myPass" replace "myPass" CONTAINER=ALL ; 这就是我得到的错误 Error SQL: ORA-65050: Las DDL comunes solo se permiten en CDB$ROOT 65050. 00000 - "Common DDLs onl

我想使用sql developer更改“系统”用户的密码,但运行此命令时出现以下错误

我使用系统用户创建连接并运行以下命令

    alter user system identified by "myPass" replace "myPass" CONTAINER=ALL ;
这就是我得到的错误

Error SQL: ORA-65050: Las DDL comunes solo se permiten en CDB$ROOT
65050. 00000 -  "Common DDLs only allowed in CDB$ROOT"
*Cause:    An attempt was made to issue a Common DDL in a pluggable database.
*Action:   Switch to CDB$ROOT and issue the Common DDL there.
Confirmación terminada.

它说我需要切换到CDB$ROOT,但我不知道这是什么,也不知道如何使用sql developer切换到该模式。错误消息非常清楚:
切换到CDB$ROOT
-这一点没有任何混淆

你不知道怎么做

alter session set container = cdb$root

这里有两个数据库,一个容器数据库,它有运行在其中的所有数据库的共同点-比如用户,比如系统,和您连接的数据库,这是一个可插入的数据库。您需要找到容器的服务或SID,并在sql developer中连接到该服务或SID,然后您可以更改该用户的密码。而且,一旦您作为系统出现,您可能会做非常糟糕的事情-因此,在您了解CDBI的用途之前不要去那里。如果他需要更改系统密码,则别无选择。至于做坏事——我敢猜测OP和我一样,是在学习沙盒上工作,而不是在任何重要的实际数据库上工作,所以造成真正灾难的可能性可能很低。谢谢你的回答,但是不要抱这种态度。@Mieszko-欢迎你。至于你的另一个评论——我在家,所以我想我们很好?我不会用评论来让它显得高贵。