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

SYSBACKUP権限を持つ一般ユーザー

    Oracle Database 12cのアーキテクチャの移行に伴い、コンテナデータベース(CDB)とプラガブルデータベース(PDB)の両方にアクセスできるUSER/SCHEMAが必要になりました。 Oracle Database 12cの発売に伴い、オラクルは「共通ユーザー」と呼ばれる新しい概念を導入しました。 「。

    すべての一般ユーザー ルートコンテナ内、および権限を持つ任意のPDB内で接続して操作を実行できます。一般的なユーザーを作成する方法を学びましょう。そして、 SYSBACKUPを割り当てる方法 それに対する特権。

    SYSBACKUPを割り当てる 一般ユーザーへの特権 Oracleデータベースでバックアップおよびリカバリ操作を実行するための専用スキーマを使用できます。

    一般ユーザーの特徴

    OracleDatabaseの一般的なユーザーの特徴をいくつか示します

    1. 一般ユーザーは、CREATE SESSION権限を持つ任意のコンテナ(CDB $ ROOTを含む)にログインできます。
    2. ユーザーが作成したすべての共通ユーザーの名前は、文字c##またはC##で始まる必要があります。
    3. 一般ユーザーの名前には、ASCII文字またはEBCDIC文字のみを含める必要があります。
    4. すべての一般的なユーザーには、すべてのコンテナで一意の名前が付けられます。
    5. 一般ユーザーのスキーマは、コンテナーごとに異なる場合があります。

    次に、Recovery Manager(RMAN)を使用してOracleDatabaseのバックアップとリカバリを実行するための共通ユーザーを作成しましょう。

    一般的なユーザーを作成するには?

    Oracle Databaseでのバックアップとリカバリ用の共通ユーザーの作成は、非常に単純な2ステップのプロセスです。ステップ1で共通ユーザーを作成し、ステップ2で必要な特権を付与します。

    ステップ1から始めましょう

    ステップ1:共通ユーザーを作成する

    ユーザーを作成するには、次のような「ユーザーの作成」DDLコマンドを使用します–

    C:/> SQLPLUS / as sysdba
    

    まず、SYSユーザーを使用してルートコンテナデータベースに接続します。次に、画面をすばやくクリアして、ユーザーとコンテナを確認しましょう。

    SQL> cl scr
    

    画面がクリアになります。

    SQL> SHOW user;
    

    sysユーザーを使用してデータベースに接続しています。

    SQL> SHOW con_name
    

    また、ルートコンテナにも接続されています。次に、通常のユーザーアカウントを作成するのではなく、共通のユーザーを作成します

    SQL> CREATE USER c##BackupAdmin 
         IDENTIFIED BY pass101
         DEFAULT TABLESPACE users 
         QUOTA 10M ON users 
         TEMPORARY TABLESPACE temp
         ACCOUNT UNLOCK;
    

    上記のCREATEUSERDDLステートメントが正常に実行されると、 c ## BackupAdminという名前の共通ユーザーが作成されます。 作成されました。

    このCREATEUSERステートメントをよりよく理解するには、 CREATE USER DDL –ここをクリックしてくださいに関するチュートリアルを参照してください。

    ステップ2:権限を付与する

    Oracle 12cより前は、バックアップおよびリカバリ操作のためにユーザーに割り当てることができる特権は、SYSDBAの1つだけでした。 。

    SYSDBAは完全に権限を与えられたデータベース管理特権であるため、任意のユーザーにランダムに割り当てることはお勧めできません。壊滅的なイベントにつながる可能性があります。

    この不具合を念頭に置いて、OracleはOracleDatabase12cのリリースでまったく新しい特権を導入しました。そしてそれはSYSBACKUPでした 。

    SYSBACKUP 特権には、Oracleデータベースのバックアップとリカバリを実行するために必要なすべての必要な特権がありました。また、これらの特権は、たまたまSYSDBAのサブセットでした。 特権。

    これは、SYSBACKUPを持っているユーザーを意味します 特権には、バックアップとリカバリを実行するためのすべての権限がありましたが、データベースに対する潜在的な脅威となる可能性のある特権はありませんでした。

    それでは、SYSBACKUPを割り当てる方法を学びましょう。 作成したばかりの共通データベースユーザーに対する特権。

    SYSBACKUPの割り当て Oracle Databaseのユーザーに対する特権には、1つの簡単なステートメントのみが必要です。このように–

    SQL> GRANT SYSBACKUP TO c##BackupAdmin; 
    

    あなたがしなければならないのはそれだけです–

    SYSBACKUPを取り消す場合 ユーザーからの特権の場合、次のようなREVOKE DCLステートメントを発行できます–

    SQL> REVOKE sysbackup FROM c##BackupAdmin; 
    

    SYSBACKUP 正常に取り消されました。

    これが、一般ユーザーを作成する方法です。 SYSBACKUPを割り当てます それへの特権。このライブデモンストレーションは私のYouTubeビデオで見ることができます。そして、そのような情報チュートリアルの詳細については、私のYouTubeチャンネルを購読してください。

    ありがとう、そして素晴らしい一日を!


    1. SQLの別の列に基づいて列を更新する方法

    2. mysqlにutf-8mb4文字(ios5の絵文字)を挿入するにはどうすればよいですか?

    3. JavaからOracleへの一括挿入

    4. Oracle Convert Seconds to Hours:Minutes:Seconds