Como navegar arquitetura multitenant em 12c oráculo
A grande diferença com o trabalho em uma arquitetura multitenant é como você se conectar a seus bancos de dados 12c Oracle. Porque há apenas um Sistema Global Area (SGA) e um conjunto de processos em segundo plano, simplesmente conectando a uma instância como você tem sido ensinado para bancos de dados não-contentores (CDBs) não se aplica no exatamente da mesma maneira.
Conteúdo
Video: Construindo e mantendo aplicações multi-tenant - Aryel Tupinambá
Você vai querer estar ciente de alguns dos novos comandos de teclas e visões de dicionário de dados.
Primeiro de tudo, como é que você se conectar à CDB e ou plugáveis Databases (PDBs)? Você se conectar à CDB da mesma forma que costumava fazer no passado. Você pode configurar seu ORACLE_SID e se conectar com SQL * Plus ou RMAN como SYSDBA. Conectando-se a bancos de dados conectáveis é onde as coisas são diferentes. Você pode se conectar a um PDB de duas maneiras:
Video: Build 2016 Building Multitenant SaaS Applications with Tenant Isolation and Unlimited Scale on Azure
Você pode se conectar à CDB e, em seguida, alterar a sua sessão para definir o ambiente para um APO.
Você pode configurar o Oracle Net para encaminhar você a um PDB através de um nome de serviço usando o arquivo TNSNAMES.ORA.
Video: 2014-04 Multi-tenant Architectures in Spring
Para conectar a um PDB através do CDB no Linux, siga estes passos:
Abra um terminal para um usuário com os privilégios necessários para se conectar ao banco de dados através do SQL * Plus.
Defina o seu ambiente para o CDB usando a ferramenta oraenv digitando
lt ;. oraenvgt;
Você vê algo como isto:
[Oracle @ orasvr01 ~] $. oraenvORACLE_SID = [Oracle]? devcdbThe de base do Oracle permanece inalterado com valor / u01 / app / oracle
Conectar-se à CDB exatamente como faria qualquer não-CDB, digitando
Você algo como isto:
SQL * Plus: Release 12.1.0.1.0 Produção em Sex 16 agosto 23:34:59 2013Copyright (c) 1982, 2013, Oracle. Todos os direitos reserved.Connected a Oracle 12c banco de dados Enterprise Edition versão 12.1.0.1.0 - 64bit ProductionWith o particionamento, OLAP, Análise Avançada e opções de teste Real Application
Para ver onde na arquitetura multitenant estiver conectado, digite o novo comando 12c:
Você vê algo como isto:
CON_NAME ------------------------------ CDB $ ROOT
Obter uma lista de seus PDBs consultando uma das novas visualizações de dicionário de dados para suportar um ambiente multitenant, digitando
Alternativamente, você pode usar esse atalho para obter o mesmo resultado:
SQLgt; Mostrar pdbs
Você vê algo como isto:
NAMEOPEN_MODE ---------- ---------- PDB $ SEED LEIA ONLYDEVPDB1 Read Write
Note que a SEED PDB $ é visível no modo de somente leitura. É raro que você poderia precisar se conectar a esse banco de dados - é usado principalmente internamente para fins de otimização ao criar PDBs.
Para se conectar ao seu APO DEVPDB1 de dentro do seu CBD, digite:
lt; alterar sessão recipiente conjunto = devpdb1-gt;
Você vê algo como isto:
Sessão alterada.
Para mostrar que você está agora no recipiente PDB, tipo
Você vê algo como isto:
CON_NAME ------------------------------ DEVPDB1
A outra maneira de se conectar a seus recipientes é diretamente através do Oracle Net. Este método oferece suporte a garantia de que o ambiente multitenant será inteiramente compatível com ambientes não-CDB.
Certifique-se de que as bases de dados são listados com o ouvinte no servidor. Para fazer isso, faça login no sistema operacional como o proprietário do software Oracle e tipo
Você vê algo como isto:
Serviço "devcdb" tem uma instância (s) .Instance "devcdb", Estado READY, tem 1 handler (s) para este serviço ... Serviço "devpdb1" tem uma instância (s) .Instance "devcdb", Estado READY, tem 1 handler (s) para este serviço ...
Este resultado mostra que a CDB e PDB ter serviço registrada com o ouvinte.
Certifique-se há entradas TNS nos clientes a partir do qual pretende ligar.
Por exemplo, você deve ter entradas modelado após este exemplo:
DEVPDB1 = (DESCRIÇÃO = (ENDEREÇO = (protocolo TCP =) (HOST = orasvr01) (PORT = 1,521)) (CONNECT_DATA = (SERVIDOR = DEDICADO) (SERVICE_NAME = devpdb1)))
Depois de confirmar as configurações anteriores, você pode se conectar a partir do seu Oracle SQL * Plus cliente digitando
Você vê algo como isto:
A última vez login bem-sucedido: Fri 01 de fevereiro de 2013 09:48:20 -04: 00Connected a Oracle 12c banco de dados Enterprise Edition versão 12.1.0.1.0 - 64bit ProductionWith o particionamento, OLAP, Análises Avançadas e Real Application Testing optionsSQLgt;