Como Criar banco de dados oracle 19c em silent mode

Criando do banco de dados CDB single instance em Silent Mode


Após a instalação do software gerenciador de base de dados (SGBD), é necessário proceder à criação do banco de dados. Para isso, pode-se utilizar a ferramenta Database Configuration Assistant (DBCA), localizada no diretório $ORACLE_HOME/bin. Esta ferramenta permite a criação do banco de dados tanto em modo gráfico como em silent mode (modo texto), dependendo das necessidades e preferências do ambiente

1) Criação do response file

Para criação de um banco de dados utilizando Silent mode, por linha de comando, é necessário criar um arquivo de configuração passando os parâmetros de criação do banco de dados. Existe no caminho $ORACLE_HOME/assistants/dbca, um arquivo padrão chamado dbca.rsp para o preenchimento manual, porém, iremos criar o nosso próprio arquivo de configuração.

Acesse o servidor de banco de dados com o usuário oracle e crie um arquivo de configuração chamado create_db.rsp seguindo os passos abaixo:

Levando em consideração que as variáveis mencionadas a seguir, como ORACLE_BASE e ORACLE_HOME, são específicas para o meu ambiente, é importante destacar que estas podem variar em outros ambientes e devem ser ajustadas conforme necessário.

Além disso, é fundamental prestar atenção aos parâmetros de senha, como sysPassword, systemPassword e pdbAdminPassword. No exemplo apresentado, foi utilizada uma senha fraca, que deve ser substituída por uma senha mais robusta em ambientes produtivos, garantindo maior segurança.

Por fim, o nome do banco de dados container, configurado pelo parâmetro gdbName, está definido como orcl no exemplo. Este valor também pode ser alterado para atender às necessidades específicas do seu ambiente.

## Configurar variáveis de ambiente Oracle
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/product/19.0.0/db_home1

## criar arquivo de configuração
vi /u01/app/oracle/product/19.0.0/db_home1/assistants/dbca/db_create.rsp


## Copiar o conteúdo abaixo para dentro do arquivo de configuração db_create.rsp

responseFileVersion=/home/oracle/assistants/rspfmt_dbca_response_schema_v19.0.0
databaseConfigType=SI
gdbName=orcl
createAsContainerDatabase=true
pdbName=pdb1
useLocalUndoForPDBs=true
sysPassword=oracle
systemPassword=oracle
pdbAdminPassword=oracle
templateName=General_Purpose.dbc
storageType=FS
datafileDestination=/u01/app/oracle/oradata
characterSet=AL32UTF8
databaseType=OLTP
totalMemory=2048

Será criado um banco de dados container com um pdb, utilizando a configuração padrão, os datafiles, controlfiles e redo log files estarão localizados no caminho: /u01/app/oracle/oradata.

Se a criação do seu banco de dados for em diskgroup ASM, basta substituir os parametros relacionado ao storage diskGroupName e storageType conforme abaixo, por exemplo, diskgroup DATA.

storageType=ASM
diskGroupName=DATA

2) Criação do banco de dados

Após a configuração do reponse file, com o usuário oracle, execute a criação do banco de dados em modo Silent conforme abaixo:

## Acessar diretório ORACLE_HOME
cd $ORACLE_HOME

## Executar instalação em Silent Mode
dbca -silent -createDatabase -responseFile /u01/app/oracle/product/19.0.0/db_home1/assistants/dbca/db_create.rsp

No processo de criação poderá aparecer alguns alertas devido a complexidade das senhas, pode ignorar os alertas.

Criação do banco de dados finalizado

3) Validação do banco de dados

É possível validar no arquivo /etc/oratab as instâncias de banco de dados que estão registradas no servidor, podemos ver a nova instância que foi criada.

cat /etc/oratab | grep orcl

Para acessar o banco de dados é necessário configurar as variáveis de ambiente, ORACLE_HOME e ORACLE_SID, para isso, executar os comandos abaixo.

## Configurar varíaveis de ambiente
. oraenv
orcl

## Acessar o banco de dados
sqlplus / as sysdba

## Verificar pluggables databases 
SQL> show pdbs

## Verificar estatus da instância
SQL> select instance_name,status from v$instance;

Configurar variáveis e acessar a instância orcl

Verificar status da instância

Que tal resolver agora?