sql >> データベース >  >> RDS >> Database

コンテナ・データベース(CDB)でユーザー・パスワードを変更するときのエラーORA-65048

    ユーザーのパスワードを変更しようとすると、エラーORA-65048が発生しました。これは12R1インスタンスです:

    
    $ sqlplus / as sysdba
    
    SQL*Plus: Release 12.1.0.2.0 Production on Thu Jun 19 07:15:51 2020
    
    Copyright (c) 1982, 2014, Oracle. All rights reserved.
    
    Connected to:
    Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
    With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,
    Advanced Analytics and Real Application Testing options
    
    SQL> alter user "C##USRMASTER" identified by values password container=all;
    
    ERROR at line 1:
    ORA-65048: error encountered when processing the current DDL statement in pluggable database HPDBSERV
    ORA-01918: user 'C##USRMASTER' does not exist
    
    

    PDB HPDBSERVは、PDBが親コンテナーと同期されるのを妨げるUSERSテーブルスペースなしで作成されました。 pdb_plug_in_violationsには次のメッセージが含まれていました:

    
    'CREATE USER C##USRMASTER
    IDENTIFIED BY * DEFAULT TABLESPACE USERS
    TEMPORARY TABLESPACE TEMP
    PROFILE DEFAULT
    ACCOUNT UNLOCK container = all'
    
    

    次の解決策を使用して問題を修正しました:

    1.テーブルスペースが欠落しているコンテナに接続します:

    
    SQL> alter session set container=HPDBSERV;
    Session altered.
    
    SQL> show con_name
    
    CON_NAME
    ------------------------------
    HPDBSERV
    
    

    2.不足しているテーブルスペースを作成します:

    
    SQL> create tablespace USERS datafile size 8M autoextend on next 2M maxsize 3G;
    Tablespace created.
    

    3.プラガブルデータベースを閉じて再度開きます:

    
    SQL> alter pluggable database HPDBSERV close;
    Pluggable database altered.
    
    SQL> alter pluggable database HPDBSERV open read write;
    
    Pluggable database altered.
    
    

    4.ユーザーパスワードを変更します:

    
    SQL> alter user "C##USRMASTER" identified by values password container=all;
    
    User altered.
    
    
     
    1. Oracle PL / SQL:スタック・トレース、パッケージ名、およびプロシージャ名を取得する方法

    2. 条件付きリード/ラグ関数PostgreSQL?

    3. IRIWorkbenchでのインクリメンタルデータレプリケーション

    4. PL / SQLで静的ddlが許可されないのはなぜですか?