Arquivo mensal: junho 2014

Oracle RAC e Serviços

Este post será o primeiro relacionado ao Oracle RAC e mais especificamente sobre serviços.
Os serviços no Oracle RAC torna possível o listener fazer o balanceamento de conexões em um cluster.
Esse recurso é extremamente interessante principalmente em ambientes que utilizam pool de conexões.
A utilizar pool de conexões por questão de administração, torna-se complicado saber qual aplicação consumindo mais recurso se um só serviço, que é o padrão da criação do banco for utilizado.
Para resolver o problema podemos criar novos serviços e depois monitorar sua utilização.

Criando serviços em um Oracle RAC:

$ srvctl add service -d PROD -s SERVIÇO -r I1,I2 -a I3,I4

onde:

-d: Nome do banco
-s: Serviço
-r: Instâncias preferenciais (obrigatório)
-a: Instâncias disponíveis

Iniciar um serviço em todas as instâncias preferencial:

$srvctl start service -d PROD -s SERVIÇO

Parar um serviço em instâncias específicas:

$srvctl stop service -d PROD -s SERVIÇO -i I1,I2

Desabilitar um serviço em uma instância:

$srvctl disable service -d PROD -s SERVIÇO -i I4

Transformar uma instância disponível em preferencial:

$srvctl modify service -d PROD -s SERVICO -i I5 -r

Parâmetros de inicialização obsoletos do banco de dados Oracle na versão 12c

Estou aqui publicando o primeiro post relacionado a versão 12c do banco de dados Oracle.
Começaremos falando acerca dos parâmetros de inicialização que se tornaram obsoletos nesta versão. É importante estar familiarizado com os novos recursos desta versão e conhecer os recursos preteridos existentes da versão anterior, o que ajuda muito no processo de migração das aplicações para a nova versão do database.
Para obter uma lista de parâmetros de inicialização do banco de dados obsoleto na versão 12c,  use a seguinte instrução SQL:

SQL> SELECT name from v$parameter WHERE isdeprecated = ‘TRUE’  ORDER BY name;

Segue abaixo a lista dos parâmetros obsoletos:

active_instance_count
background_dump_dest
buffer_pool_keep
buffer_pool_recycle
commit_write
cursor_space_for_time
fast_start_io_target
global_context_pool_size
instance_groups
lock_name_space
log_archive_local_first
log_archive_start
max_enabled_roles
parallel_automatic_tuning
parallel_io_cap_enabled
parallel_server
parallel_server_instances
plsql_v2_compatibility
remote_os_authent
resource_manager_cpu_allocation
sec_case_sensitive_logon
serial_reuse
sql_trace
standby_archive_dest
user_dump_dest

A única surpresa que tive foi ver que o parâmetro sec_case_sensitive_logon esta obsoleto  na versão 12. Falamos sobre esse parâmetro em posts anteriores.

Segue o link da documentação do Oracle 12c que trata das obsolescências desta versão.

Startup e shutdown Database

Neste post estaremos abordando sobre as sintaxe de startup e shutdown da instâncias Oracle.

STARTUP –  sintaxe

STARTUP [FORCE][RESTRICT][NOMOUNT][MIGRATE][QUIET]
[PFILE=<file_name>] [MOUNT [EXCLUSIVE] <database_name> | OPEN <READ {ONLY | WRITE [RECOVER]} | RECOVER> <database_name>]

Obs: Você pode adicionar pfile=<caminho/arquivo>.ora ou spfile=<caminho/arquivo>.ora  caso queira especificar um arquivo de parâmetro  na hora de iniciar o banco.

STARTUP (Default OPEN)
STARTUP NOMOUNT (Inicia o banco sem montar os datafiles, sem ler o controlfile , etc).
STARTUP MOUNT (Inicia o banco lendo o controlfile, montando os datafiles, etc .  Ainda não fica disponível ao usuário final).
STARTUP OPEN (Monta e abre o banco para os usuários finais),
STARTUP OPEN READ ONLY (Monta e abre o banco para os usuários finais mas em modo somente leitura).
STARTUP OPEN RECOVERY (Monta e abre o banco para usu·rios finais e inicia recovery da instância caso necessário).
STARTUP RESTRICT (Conectam apenas usuários com restrict session).
STARTUP FORCE (Força o startup em caso de dificuldades para levantar a instância).

ALTER DATABASE

Você efetua comandos de ALTER DATABASE quando já possui a instância em determinado modo e quer alterar seu estado.
Ex: iniciou a instância com NOMOUNT. Para montar a mesma deverá ser efetuado a instrução ALTER DATABASE MOUNT e assim por diante.

ALTER DATABASE MOUNT (Altera a inst‚ncia de NOMOUNT para MOUNT)
ALTER DATABASE OPEN (Altera a instância de MOUNT para OPEN)
ALTER DATABASE OPEN READ ONLY (OPEN + Somente leitura)
ALTER SYSTEM ENABLE RESTRICTED SESSION; (Habilita o modo restricted sessions  na instancia, onde, somente usuários com grant de RESTRICTED SESSION são capazes de se conectar.)
ALTER SYSTEM DISABLE RESTRICTED SESSION; (Desabilita o modo restricted session)

SHUTDOWN  – sintaxe

SHUTDOWN <ABORT | IMMEDIATE | TRANSACTIONAL[LOCAL]>

SHUTDOWN NORMAL (também podemos utilizar somente o SHUTDOWN)
SHUTDOWN TRANSACTIONAL (espera concluir as transações e mata as sessões quando elas se concluem)
SHUTDOWN IMMEDIATE (faz rollback nas transações depois derruba o banco)
SHUTDOWN ABORT (Não faz rollback nem nada. … necessário recovery depois)

Senhas Case Sensitive

Na versão 11g do Oracle database, as senhas diferenciam maiúsculas de minúsculas por default .
Podemos ativar ou desativar esse recurso, definindo o parâmetro SEC_CASE_SENSITIVE_LOGON.

O parâmetro SEC_CASE_SENSITIVE_LOGON é um parâmetro dinâmico.
Na versão anterior do ORACLE, as senhas não diferenciam maiúsculas de minúsculas

SYS@orcl11g>  show parameter SEC_CASE_SENSITIVE_LOGON

NAME                                                 TYPE               VALUE
————————————        ———–       ———————–
sec_case_sensitive_logon                   boolean             TRUE

O parâmetro SEC_CASE_SENSITIVE_LOGON  habilitado como TRUE,  as senhas são case sensitive,  se o parâmetro estiver habilitado como FALSE, as senhas não serão case sensitive.

Ate o próximo post

Criar PFILE/SPFILE da Memória

Neste post veremos que o Oracle  na versão 11g fornece um novo recurso para criar PFILE ou SPFILE utilizando os valores atuais em memória.  Isso será útil se você excluir o spfile ou pfile por engano.

Vejamos os exemplos abaixo:

$ sqlplus “/ as sysdba”

SQL * Plus: Release 11.2.0.3.0 – Production on Wed 29 junho 2013 01:32:04
Copyright (c) 1982, 2008, Oracle.   Todos os direitos reservados.
Conectado a:
Oracle Database 11g Enterprise Edition Lançamento 11.2.0.3.0 – Produção 64bit Opções com o Partitioning, OLAP, Data Mining e Real Application Testing

SQL>  create pfile from memory;

File created.

No exemplo acima, o arquivo pfile sera criado no diretório $ORACLE_HOME/dbs.
Você pode especificar o local durante a criação do pfile.

SQL> create pfile=’/home/oracle/scott/initprod.ora’ from memory;

File created.
SQL>

Da mesma forma, podemos criar o arquivo SPFILE da memória usando o comando abaixo mencionados.

CREATE SPFILE from memory;

É necessário ter previlégio SYSDBA ou SYSOPER para executar os comandos acima. Você pode executar esta instrução antes ou após a inicialização da instância.
Em um banco de dados RAC, o arquivo criado conterá os ajustes de parâmetros para cada instância.A Fonte dos dados em  Memória é a visao V$SYSTEM_PARAMETER4.
A visao V$SYSTEM_PARAMETER4 retorna as linhas de todos os parâmetros que foram modificados internamente.

Fonte: Oracle 11g Manual de Referência