Usar o Oracle Repository Creation Utility no RDS for Oracle - Amazon Relational Database Service

Usar o Oracle Repository Creation Utility no RDS for Oracle

Você pode usar o Amazon RDS para hospedar uma instância de banco de dados do RDS for Oracle que contém os esquemas para oferecer compatibilidade com seus componentes do Oracle Fusion Middleware. Para poder usar os componentes do Fusion Middleware, você deve criar e preencher esquemas para eles no seu banco de dados. Você cria e preenche os esquemas usando o Oracle Repository Creation Utility (RCU).

Versões e opções de licenciamento compatíveis para RCU

O Amazon RDS não oferece suporte para o Oracle Repository Creation Utility (RCU) versão 12c somente. Você pode usar o RCU nas seguintes configurações:

  • RCU 12c com Oracle Database 21c

  • RCU 12c com Oracle Database 19c

  • RCU 12c com Oracle Database 12c versão 2 (12.2)

  • RCU 12c com Oracle Database 12c versão 1 (12.1) usando 12.1.0.2.v4 ou posterior

Antes de poder usar o RCU, faça o seguinte:

O Fusion MiddleWare é compatível com repositórios no Oracle Database Enterprise Edition e Standard Edition 2. A Oracle recomenda a Enterprise Edition para instalações de produção que exigem particionamento e instalações que exigem a reconstrução do índice online.

Antes de criar sua instância do RDS for Oracle, confirme a versão do banco de dados Oracle que você precisa usar para oferecer compatibilidade com os componentes que deseja implantar. Para encontrar os requisitos para os componentes e as versões do Fusion Middleware que deseja implantar, use a Matriz de Certificação. Para obter mais informações, consulte Configurações do sistema compatíveis com o Oracle Fusion Middleware na documentação da Oracle.

O Amazon RDS oferece suporte para atualizações de versões do banco de dados Oracle conforme necessário. Para obter mais informações, consulte Atualizar a versão de mecanismo de uma instância de banco de dados.

Requisitos e limitações do RCU

Para usar o RCU, você precisa de um Amazon VPC. Sua instância de banco de dados do Amazon RDS precisa estar disponível somente para os componentes do Fusion Middleware, e não para a internet pública. Portanto, hospede sua instância de banco de dados do Amazon RDS em uma sub-rede privada, fornecendo melhor segurança. Para obter informações sobre como criar uma Amazon VPC para uso com uma instância do RDS for Oracle, consulte Criar uma VPC para usar com banco de dados Oracle.

Você também precisa de uma instância de banco de dados do RDS for Oracle. Para obter informações sobre como criar uma instância de banco de dados do RDS for Oracle para uso com metadados do Fusion Middleware, consulte Como criar uma instância de banco de dados Oracle.

Você pode armazenar os esquemas para qualquer componente do Fusion Middleware na sua instância de banco de dados do Amazon RDS. Os esquemas a seguir foram verificados para instalar corretamente:

  • Analytics (ACTIVITIES)

  • Audit Services (IAU)

  • Audit Services Append (IAU_APPEND)

  • Audit Services Viewer (IAU_VIEWER)

  • Discussions (DISCUSSIONS)

  • Metadata Services (MDS)

  • Oracle Business Intelligence (BIPLATFORM)

  • Oracle Platform Security Services (OPSS)

  • Portal and Services (WEBCENTER)

  • Portlet Producers (PORTLET)

  • Service Table (STB)

  • SOA Infrastructure (SOAINFRA)

  • User Messaging Service (UCSUMS)

  • WebLogic Services (WLS)

Diretrizes para usar o RCU

Veja a seguir algumas recomendações para trabalhar com a sua instância de banco de dados neste cenário:

  • Recomendamos que você use o Multi-AZ para cargas de trabalho de produção. Para mais informações sobre como trabalhar com várias zonas de disponibilidade, consulte Regiões, zonas de disponibilidade e Local Zones.

  • Para segurança adicional, a Oracle recomenda que você use o Transparent Data Encryption (TDE) para criptografar seus dados em repouso. Se você possui uma licença do Enterprise Edition que inclui a opção de segurança avançada, poderá habilitar a criptografia em repouso usando a opção TDE. Para obter mais informações, consulte Oracle Transparent Data Encryption.

    O Amazon RDS também fornece uma opção de criptografia em repouso para todas as edições de banco de dados. Para obter mais informações, consulte Criptografar recursos do Amazon RDS.

  • Configure seus security groups de VPC para permitir a comunicação entre seus servidores de aplicativos e sua instância de banco de dados do Amazon RDS. Os servidores de aplicativos que hospedam os componentes do Fusion Middleware podem estar no Amazon EC2 ou no ambiente local.

Executando o RCU

Para criar e preencher os esquemas para dar suporte aos seus componentes do Fusion Middleware, use o Oracle Repository Creation Utility (RCU). Você pode executar o RCU de diferentes maneiras.

Executar RCU usando a linha de comando em uma etapa

Se você não precisa editar nenhum dos seus esquemas antes de os preencher, pode executar o RCU em uma única etapa. Caso contrário, consulte a seção a seguir para executar o RCU em várias etapas.

Você pode executar o RCU no modo silencioso usando o parâmetro da linha de comando -silent. Quando você executa o RCU no modo silencioso, pode evitar digitar senhas na linha de comando, criando um arquivo de texto contendo as senhas. Crie um arquivo de texto com a senha para dbUser na primeira linha e a senha para cada componente nas linhas subsequentes. Você especifica o nome do arquivo de senha como o último parâmetro para o comando RCU.

exemplo

O exemplo a seguir cria e preenche esquemas para o componente SOA Infrastructure (e suas dependências) em uma única etapa.

Para Linux, macOS ou Unix:

export ORACLE_HOME=/u01/app/oracle/product/12.2.1.0/fmw export JAVA_HOME=/usr/java/jdk1.8.0_65 ${ORACLE_HOME}/oracle_common/bin/rcu \ -silent \ -createRepository \ -connectString ${dbhost}:${dbport}:${dbname} \ -dbUser ${dbuser} \ -dbRole Normal \ -honorOMF \ -schemaPrefix ${SCHEMA_PREFIX} \ -component MDS \ -component STB \ -component OPSS \ -component IAU \ -component IAU_APPEND \ -component IAU_VIEWER \ -component UCSUMS \ -component WLS \ -component SOAINFRA \ -f < /tmp/passwordfile.txt

Para obter mais informações, consulte Execução do utilitário de criação de repositórios a partir da linha de comando na documentação da Oracle.

Executar o RCU usando a linha de comando em várias etapas

Para editar manualmente seus scripts de esquema, execute o RCU em várias etapas:

  1. Execute o RCU no modo Prepare Scripts for System Load (Preparar scripts para o carregamento do sistema) usando o parâmetro da linha de comando -generateScript para criar os scripts para os seus esquemas.

  2. Edite e execute manualmente o script gerad script_systemLoad.sql.

  3. Execute o RCU novamente no modo Perform Product Load (Realizar o carregamento do produto) usando o parâmetro da linha de comando -dataLoad para preencher os esquemas.

  4. Execute o script de limpeza gerado script_postDataLoad.sql.

Para executar o RCU no modo silencioso, especifique o parâmetro da linha de comando -silent. Quando você executa o RCU no modo silencioso, pode evitar digitar senhas na linha de comando, criando um arquivo de texto contendo as senhas. Crie um arquivo de texto com a senha para dbUser na primeira linha e a senha para cada componente nas linhas subsequentes. Especifique o nome do arquivo de senha como o último parâmetro para o comando do RCU.

exemplo

O exemplo a seguir cria scripts de esquema para o componente SOA Infrastructure (e suas dependências).

Para Linux, macOS ou Unix:

export ORACLE_HOME=/u01/app/oracle/product/12.2.1.0/fmw export JAVA_HOME=/usr/java/jdk1.8.0_65 ${ORACLE_HOME}/oracle_common/bin/rcu \ -silent \ -generateScript \ -connectString ${dbhost}:${dbport}:${dbname} \ -dbUser ${dbuser} \ -dbRole Normal \ -honorOMF \ [-encryptTablespace true] \ -schemaPrefix ${SCHEMA_PREFIX} \ -component MDS \ -component STB \ -component OPSS \ -component IAU \ -component IAU_APPEND \ -component IAU_VIEWER \ -component UCSUMS \ -component WLS \ -component SOAINFRA \ -scriptLocation /tmp/rcuscripts \ -f < /tmp/passwordfile.txt

Agora, você pode editar o script gerado, conectar-se à sua instância de banco de dados Oracle e executar o script. O script gerado se chama script_systemLoad.sql. Para obter informações sobre como se conectar à sua instância de banco de dados Oracle, consulte Etapa 3: Conectar seu cliente SQL a uma instância de banco de dados Oracle..

O exemplo a seguir preenche os esquemas do componente SOA Infrastructure (e suas dependências).

Para Linux, macOS ou Unix:

export JAVA_HOME=/usr/java/jdk1.8.0_65 ${ORACLE_HOME}/oracle_common/bin/rcu \ -silent \ -dataLoad \ -connectString ${dbhost}:${dbport}:${dbname} \ -dbUser ${dbuser} \ -dbRole Normal \ -honorOMF \ -schemaPrefix ${SCHEMA_PREFIX} \ -component MDS \ -component STB \ -component OPSS \ -component IAU \ -component IAU_APPEND \ -component IAU_VIEWER \ -component UCSUMS \ -component WLS \ -component SOAINFRA \ -f < /tmp/passwordfile.txt

Para terminar, você se conecta à sua instância de banco de dados Oracle e executa o script de limpeza. O nome do script é script_postDataLoad.sql.

Para obter mais informações, consulte Execução do utilitário de criação de repositórios a partir da linha de comando na documentação da Oracle.

Executar o RCU no modo interativo

Para usar a interface de usuário gráfica do RCU, execute o RCU no modo interativo. Inclua o parâmetro -interactive e omita o parâmetro -silent. Para obter mais informações, consulte Noções básicas sobre as telas do utilitário de criação de repositórios na documentação da Oracle.

exemplo

O exemplo a seguir inicia o RCU no modo interativo e pré-preenche as informações de conexão.

Para Linux, macOS ou Unix:

export ORACLE_HOME=/u01/app/oracle/product/12.2.1.0/fmw export JAVA_HOME=/usr/java/jdk1.8.0_65 ${ORACLE_HOME}/oracle_common/bin/rcu \ -interactive \ -createRepository \ -connectString ${dbhost}:${dbport}:${dbname} \ -dbUser ${dbuser} \ -dbRole Normal

Solução de problemas do RCU

Esteja ciente dos seguintes problemas.

Oracle Managed Files (OMF)

O Amazon RDS usa arquivos de dados OMF para simplificar o gerenciamento do armazenamento. Você pode personalizar atributos de espaço de tabela, como o gerenciamento do tamanho e da extensão. No entanto, se você especificar um nome de arquivo de dados ao executar o RCU, o código do espaço de tabela falhará com ORA-20900. É possível usar o RCU com o OMF das seguintes maneiras:

Privilégios de objeto

Como o Amazon RDS é um serviço gerenciado, você não tem acesso completo SYSDBA à sua instância de banco de dados do RDS para Oracle. No entanto, o RCU 12c oferece suporte a usuários com privilégios menores. Na maioria dos casos, o privilégio de usuário mestre é suficiente para criar repositórios.

A conta principal pode conceder diretamente privilégios que já foram concedidos WITH GRANT OPTION. Em alguns casos, ao tentar conceder privilégios de objeto SYS, o RCU pode falhar com ORA-01031. Você pode tentar novamente e executar o procedimento armazenado rdsadmin_util.grant_sys_object, conforme mostrado no exemplo a seguir:

BEGIN rdsadmin.rdsadmin_util.grant_sys_object('GV_$SESSION','MY_DBA','SELECT'); END; /

Se você tentar conceder privilégios SYS no objeto SCHEMA_VERSION_REGISTRY, a operação poderá falhar com ORA-20199: Error in rdsadmin_util.grant_sys_object. Você pode qualificar a tabela SCHEMA_VERSION_REGISTRY$ e a visualização SCHEMA_VERSION_REGISTRY com o nome do proprietário do esquema, que é SYSTEM, e repetir a operação. Como alternativa, você pode criar um sinônimo. Faça login como usuário principal e execute as seguintes instruções:

CREATE OR REPLACE VIEW SYSTEM.SCHEMA_VERSION_REGISTRY AS SELECT * FROM SYSTEM.SCHEMA_VERSION_REGISTRY$; CREATE OR REPLACE PUBLIC SYNONYM SCHEMA_VERSION_REGISTRY FOR SYSTEM.SCHEMA_VERSION_REGISTRY; CREATE OR REPLACE PUBLIC SYNONYM SCHEMA_VERSION_REGISTRY$ FOR SCHEMA_VERSION_REGISTRY;

Enterprise Scheduler Service

Quando você usa o RCU para remover um repositório do Enterprise Scheduler Service, o RCU pode falhar com Error: Component drop check failed.