You are on page 1of 7

Administrando uma instância Oracle

Olá pessoal, andei um pouco sumido do Blog nestes últimos meses, devido a algumas mudanças e a dedicação em novos projetos na Empresa na qual trabalho o tempo foi muito curto e não consegui me dedicar a tantas tarefas. Mas agora decidi me dedicar mais a este blog, afim de passar informações, dicas e atualizações sobre tecnologia e principalmente assuntos relacionados a Oracle e Linux.

Vamos então ao meu segundo post, neste irei passar algumas informações básicas da administração de uma instância Oracle. Basicamente na linguagem do Oracle podemos definir que uma instância Oracle é a combinação da memória e dos processos que são parte de uma instalação em funcionamento.

Existem algumas considerações que devemos ter conhecimentos, como:

- Não há necessidade de que uma instância exista sem um banco de dados, claro, isso é possível sim, podemos criar uma instância e ela não ter acesso a nenhum arquivo do banco de dados. Contudo essa não é uma prática usual. O procedimento para criação de uma banco de dados é isso, primeiramente criamos uma instância do Oracle e logo depois é criado o banco de dados dentro desta mesma instância.

- Existe uma opção do Oracle chamada ASM (Automatic Storage Management), esta utiliza uma instância, mas não esta associada a um banco de dados.

- Pode-se dizer que um banco de dados pode existir sem uma instância, mais isso seria totalmente inútil.

- Uma instância acessa somente um banco de dados por vez, podemos dizer que é possível configurar múltiplas instâncias para acessar o mesmo grupo de arquivos ou um banco de dados. Quando uma instância é criada, o próximo procedimento é fazer a montagem desta instância em um banco de dados. Uma instância pode montar apenas um banco de dados por vez.

Agora irei detalhar um pouco alguns dos principais comandos para administrar uma instância do Oracle. Lembrando que os comandos a seguir foram executados em ambiente Linux, mais nada impede de executar em ambiente Windows também.

Bom, mãos na massa.

2 Iniciar o Banco sqlplus / as sysdba SQL> startup SQL> exit #2. Parar o Servidor Oracle #1.1 Iniciar Listener lsnrctl start #2. Parar Listener lsnrctl stop #2. Parar Enterprise Manager emctl stop dbconsole #1. Iniciar o Servidor Oracle #2.2. Acessar SQLPlus #4.3.3 Iniciar Enterprise Manager emctl start dbconsole #3.#1. Parar o Banco sqlplus / as sysdba SQL> shutdown immediate SQL> exit #1. Acessar SQLPlus com Autenticação Normal . Acessar Enterprise Manager no Servidor firefox http://localhost:1158/em #4.1.1.

sqlplus system/oracle #4. Acessar iSQLPlus #5. Visualizar todos os parâmetros da Instância show parameters #6. Manipular Arquivos de Inicialização (conectado no SQLPlus) #6. Alterar parâmetros no SPFile alter system set sga_target=256M scope=memory. Acessar SQLPlus com Autenticação pelo Arquivo de Senhas sqlplus sys/oracle as sysdba sqlplus sys/oracle as sysoper #4. alter system set pga_aggregate_target=70M scope=spfile. Acessar iSQLPlus no Servidor firefox http://localhost:5560/isqlplus #6. show parameter sga_target.3.2.1.2. Iniciar iSQLPlus isqlplusctl start #5.1.2. Visualizar parâmetro da Instância show parameters sga_target show parameter pga_aggregate_target #6. Acessar SQLPlus com Autenticação pelo Sistema Operacional sqlplus / as sysdba sqlplus / as sysoper #5. Parar iSQLPlus isqlplusctl stop #5.3. .3.

ora'. Editar arquivo de parâmetros no Sistema Operacional (Terminal do Linux) vim $ORACLE_HOME/dbs/initorcl. Processos de Inicialização do Servidor Oracle (conectado no SQLPlus) #7. Alterar para modo MOUNT alter database mount. alter system set sga_target=50M scope=spfile. #6.2.5. shutdown immediate startup show parameter sga_target.ora'.1. #7. show parameter pga_aggregate_target. show parameter pga_aggregate_target.ora' from spfile='$ORACLE_HOME/dbs/spfileorcl. Iniciar em modo NOMOUNT shutdown immediate startup nomount #7. startup show parameter sga_target. #7. shutdown immediate startup #6.show parameter pga_aggregate_target.ora' from pfile='$ORACLE_HOME/dbs/initorcl.4. Criar SPFile com base no PFile editado manualmente create spfile='$ORACLE_HOME/dbs/spfileorcl.3.ora #6.6. Criar PFile com base no SPFile para edição manual create pfile='$ORACLE_HOME/dbs/initorcl. Iniciar em modo MOUNT shutdown immediate startup mount . alter system set sga_target=50M scope=both.

7. #7.10. Iniciar em modo OPEN utilizando um pfile específico shutdown immediate startup pfile='$ORACLE_HOME/dbs/initorcl. commit. Alterar para modo OPEN para somente leitura alter database open read only.9. #7. Opção Normal shutdown startup #8.8. Habilitar modo OPEN restrito alter system enable restricted session. Shutdown Limpo (conectado no SQLPlus) #8. #7. #7. shutdown immediate startup restrict alter system disable restricted session. Desabilitar modo OPEN restrito alter system disable restricted session.5.#7. #7.1.4. Alterar para modo OPEN shutdown immediate startup mount alter database open.ora' shutdown immediate startup #8.2. Iniciar em modo OPEN restrito e desabilitar modo restrito. Opção Transactional shutdown transactional startup .

#10.2.1. Opção Abort shutdown abort startup #9.3. . col program format a30. Localizar diretório do log de alerta (conectado no SQLPLus) show parameter background_dump_dest.1. Acessar Log de Alerta #10. set pagesize 100. #11. Ajustar SQLPlus set linesize 200.2.3. Visualizar log de alerta (no terminal do linux) vim /alert_orcl.2. Opção Immediate shutdown immediate startup #9. Reinicialização forçada startup force #10. Acessar views dinâmicas de desempenho (conectado no SQLPLus) #11.log #11. Consultar sessões correntes col machine format a10.#8. #11. Consultar views dinâmicas select * from v$fixed_table.1. Shutdown Sujo (conectado no SQLPlus) #9.

PS. col program format a30. executions from v$sql where cpu_time > 1000000.6. pga_freeable_mem. é basicamente isso que podemos fazer quando estamos administrando uma instância Oracle. pga_alloc_mem.5. . #11. pga_used_mem. col executions format 99999. Consultar instruções SQL que demoram mais de um segundo col sql_text format a50. #11. select sql_text. Consultar informações dos processos servidores col username format a10.4. #11. pga_max_mem from v$process. username. col osuser format a10. espero que tenham gostado do post e até o próximo. select pid.: agradeçimentos ao meu professor e DBA Oracle Adriano Sousa Santos por ter ministrado esta aula para mim e ao meu grande amigo também DBA Oracle David Ricardo por ter indicado o livro "Oracle 11g for Dummies" para mim e por estar sempre me ajudando e apoiando no dia a dia. Bom pessoal. program. Consultar informações da sga select * from v$sgainfo. select machine. osuser from v$session where username is not null. program.col username format a10. username.