sql >> Database teknologi >  >> RDS >> Oracle

Almindelig bruger med SYSBACKUP-privilegium

Med skiftet af arkitektur i Oracle Database 12c er der opstået et behov for en USER/SCHEMA, der har adgang til både containerdatabasen (CDB) og den pluggbare database (PDB). Med lanceringen af ​​Oracle Database 12c introducerede Oracle et nyt koncept, som kaldes "Common User “.

Alle almindelige brugere kan forbinde og udføre operationer i rodbeholderen og i enhver PDB, hvor den har privilegier. Lad os lære, hvordan du opretter en fælles bruger. Og hvordan man tildeler SYSBACKUP privilegium til det.

Ved at tildele SYSBACKUP privilegium til en FÆLLES BRUGER du kan have et dedikeret skema til at udføre sikkerhedskopiering og gendannelse i din Oracle-database.

Karakteristika for den almindelige bruger

Her er et par karakteristika for en almindelig bruger af Oracle Database

  1. En almindelig bruger kan logge ind på en hvilken som helst container (inklusive CDB$ROOT), hvori den har CREATE SESSION-privilegiet.
  2. Navnet på hver brugeroprettet almindelig bruger skal begynde med tegnene c## eller C##.
  3. Navne på almindelige brugere må kun indeholde ASCII- eller EBCDIC-tegn.
  4. Hver almindelige bruger er unikt navngivet på tværs af alle containere.
  5. Skemaerne for en almindelig bruger kan variere i hver container.

Lad os nu oprette en fælles bruger til at udføre backup og gendannelse af Oracle Database ved hjælp af Recovery Manager (RMAN).

Hvordan opretter man en fælles bruger?

Oprettelse af en fælles bruger til backup og gendannelse i Oracle Database er en meget enkel 2-trins proces. I trin 1 opretter vi en fælles bruger, og i trin 2 giver vi den de nødvendige rettigheder.

Lad os starte med trin nummer 1

Trin 1:Opret den almindelige bruger

For at oprette brugeren bruger vi "Opret bruger" DDL-kommando som denne -

C:/> SQLPLUS / as sysdba

først oprette forbindelse til din root container database ved hjælp af SYS bruger. Lad os nu hurtigt rydde skærmen og bekræfte brugeren og beholderen.

SQL> cl scr

skærm klar.

SQL> SHOW user;

Vi er forbundet med databasen ved hjælp af sys-bruger.

SQL> SHOW con_name

og vi er også forbundet med rodbeholderen. Dernæst vil vi ikke oprette en normal brugerkonto, men oprette en fælles bruger

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

Ved vellykket udførelse af ovenstående CREATE USER DDL-sætning vil du have din Common User med navnet c##BackupAdmin oprettet.

For bedre at forstå denne CREATE USER-sætning, kan du henvise til min tutorial om CREATE USER DDL – Klik bare her.

Trin 2:Giv privilegier

Før Oracle 12c havde vi kun ét privilegium, som vi kunne tildele brugeren til sikkerhedskopiering og gendannelse, som var SYSDBA .

Da SYSDBA er et fuldt bemyndiget databaseadministrativt privilegium, er det derfor ikke en god idé at tildele det tilfældigt til enhver bruger. Det kan føre til katastrofale begivenheder.

Med denne fejl i tankerne, introducerede Oracle et helt nyt privilegium med lanceringen af ​​Oracle Database 12c. Og det var SYSBACKUP .

SYSBACKUP privilegiet havde alle de nødvendige rettigheder, der var nødvendige for at udføre backup og gendannelse af Oracle-databasen. Og disse privilegier var tilfældigvis også en undergruppe af SYSDBA privilegier.

Det betød brugeren som har SYSBACKUP privilegiet havde al magt til at udføre backup og gendannelse, men ikke de privilegier, der kunne gøre ham eller hende til en potentiel trussel mod databasen.

Lad os nu lære, hvordan du tildeler SYSBACKUP privilegium til den almindelige databasebruger, som vi lige har oprettet.

Tildeler SYSBACKUP privilegium til en bruger i Oracle Database behøver kun én simpel erklæring. Sådan –

SQL> GRANT SYSBACKUP TO c##BackupAdmin; 

Det er alt, du skal gøre –

I tilfælde af at du ønsker at tilbagekalde SYSBACKUP privilegium fra brugeren, så kan du udstede en REVOKE DCL-sætning som denne –

SQL> REVOKE sysbackup FROM c##BackupAdmin; 

SYSBACKUP tilbagekaldt med succes.

Det er sådan, vi opretter en almindelig bruger og tildel SYSBACKUP privilegium til det. Du kan se denne live demonstration på min YouTube-video. Og for flere sådanne informative tutorials Abonner på min YouTube-kanal.

Tak og hav en god dag!


  1. TCL-kommandoer i SQL

  2. Hvorfor Oracle-skærme ??? for specialtegn som åäö

  3. Sådan kortlægger du et PostgreSQL-array med Hibernate

  4. MySQL – FOUND_ROWS() Funktion for det samlede antal berørte rækker