Com a mudança de arquitetura no Oracle Database 12c, surgiu a necessidade de um USER/SCHEMA que tenha acesso tanto ao banco de dados de contêiner (CDB) quanto ao banco de dados plugável (PDB). Com o lançamento do Oracle Database 12c, a Oracle introduziu um novo conceito que é chamado de “Usuário Comum “.
Todo usuário comum pode se conectar e executar operações no contêiner raiz e em qualquer PDB em que tenha privilégios. Vamos aprender como criar um usuário comum. E como atribuir SYSBACKUP privilégio a isso.
Atribuindo SYSBACKUP privilégio para um USUÁRIO COMUM você pode ter um esquema dedicado para realizar operações de backup e recuperação em seu banco de dados Oracle.
Características do usuário comum
Aqui estão algumas características de um usuário comum do Oracle Database
- Um usuário comum pode fazer login em qualquer contêiner (incluindo CDB$ROOT) no qual tenha o privilégio CREATE SESSION.
- O nome de cada usuário comum criado pelo usuário deve começar com os caracteres c## ou C##.
- Os nomes de usuários comuns devem conter apenas caracteres ASCII ou EBCDIC.
- Cada usuário comum tem um nome exclusivo em todos os contêineres.
- Os esquemas de um usuário comum podem ser diferentes em cada contêiner.
Agora vamos criar um usuário comum para realizar backup e recuperação do Oracle Database usando o Recovery Manager (RMAN).
Como criar um usuário comum?
A criação de um usuário comum para backup e recuperação no banco de dados Oracle é um processo muito simples de 2 etapas. Na etapa 1 criamos um usuário comum e na etapa 2 concedemos a ele os privilégios necessários.
Vamos começar com o passo número 1
Etapa 1:criar o usuário comum
Para criar o usuário, usaremos o comando DDL “Criar usuário” como este –
C:/> SQLPLUS / as sysdba
primeiro conecte-se com seu banco de dados de contêiner raiz usando o usuário SYS. Agora vamos limpar a tela rapidamente e verificar o usuário e o contêiner.
SQL> cl scr
tela clara.
SQL> SHOW user;
Estamos conectados com o banco de dados usando o usuário sys.
SQL> SHOW con_name
e também estamos conectados com o contêiner raiz. Em seguida, não criaremos uma conta de usuário normal, mas criaremos um usuário comum
SQL> CREATE USER c##BackupAdmin
IDENTIFIED BY pass101
DEFAULT TABLESPACE users
QUOTA 10M ON users
TEMPORARY TABLESPACE temp
ACCOUNT UNLOCK;
Na execução bem-sucedida da instrução CREATE USER DDL acima, você terá seu usuário comum com o nome c##BackupAdmin criado.
Para entender melhor esta instrução CREATE USER, você pode consultar meu tutorial em CREATE USER DDL – Basta clicar aqui.
Etapa 2:conceder privilégios
Antes do Oracle 12c, tínhamos apenas um privilégio que podíamos atribuir ao usuário para operações de backup e recuperação, que era
SYSDBA
. Como o SYSDBA é um privilégio administrativo de banco de dados totalmente habilitado, não é uma boa ideia atribuí-lo aleatoriamente a qualquer usuário. Pode levar a eventos catastróficos.
Mantendo essa falha em mente A Oracle introduziu um novo privilégio com o lançamento do Oracle Database 12c. E isso foi
SYSBACKUP
. SYSBACKUP
privilégio tinha todos os privilégios necessários para realizar backup e recuperação do banco de dados Oracle. E esses privilégios também eram um subconjunto de SYSDBA
privilégios. Isso significa que o usuário que tem
SYSBACKUP
privilégio tinha todo o poder para realizar backup e recuperação, mas não os privilégios que poderiam torná-lo uma ameaça potencial ao banco de dados. Agora vamos aprender como atribuir
SYSBACKUP
privilégio para o usuário de banco de dados comum que acabamos de criar. Atribuindo
SYSBACKUP
privilégio para um usuário no banco de dados Oracle precisa apenas de uma instrução simples. Assim - SQL> GRANT SYSBACKUP TO c##BackupAdmin;
Isso é tudo que você tem que fazer -
Caso você queira revogar
SYSBACKUP
privilégio do usuário, então você pode emitir uma instrução REVOKE DCL como esta – SQL> REVOKE sysbackup FROM c##BackupAdmin;
SYSBACKUP
revogado com sucesso. É assim que criamos um Usuário Comum e atribuir SYSBACKUP privilégio a isso. Você pode assistir a esta demonstração ao vivo no meu vídeo do YouTube. E, para mais tutoriais informativos, inscreva-se no meu canal do YouTube.
Obrigado e tenha um ótimo dia!