Oradata

Oracle Statspack – Parte I

O Statspack é uma package do Oracle database que armazena snapshots dos dados de performance da instância de banco de dados seja ela single ou RAC. Você pode usar o Statspack como uma alternativa ao relatório AWR (que é uma option do Oracle e precisa ser licenciado à parte no Oracle Diagnostic Pack). Diferentemente do AWR que já vem instalado e funcional, o Statspack precisa ser configurado manualmente para que funcione de forma correta. Esta etapa é muito simples, basta executar um script sql que fica na $ORACLE_HOME/rdbms/admin. Nesta pasta existem vários scripts sql que são usados na administração da instância, destes scripts todos aqueles que começarem com spXXXX.sql são…

Oracle com JSON

Olá tudo bom? (espero que sim!) Neste artigo quero falar um pouco de uma novidade do Oracle 12c que é a integração com JSON. Uma novidade bastante interessante já que de uns tempos pra cá JSON tem ganhado cada vez mais força dentro das aplicações (principalmente porque causa dos dos bancos de dados NoSql). Neste artigo vamos falar de uma maneira bem superficial, mais para entendermos como funciona, e nos próximos artigos iremos explorar este tema mais afundo. Para começar, vamos criar uma tabela que contenha uma coluna para receber os seus valores no formato JSON. Neste caso você pode criar uma coluna VARCHAR2 comum e na sequencia colocar uma…

Oracle Result Cache

O result cache é uma área de memória da instância que retém o resultado das instruções SQL para reutilização por outras sessões, a memória utilizada neste caso é a memória da shared pool, nela ficará contido o resultado de comandos “SELECT” e funções PL/SQL que estarão tirando proveito desta funcionalidade. Quando determinado comando SQL (select ou uma PL/SQL function) é utilizado por repetidas vezes, o banco de dados pode armazenar o resultado destes comandos no result cache para ser reutilizado por outras sessões que executarem o mesmo comando, evitando então a execução repetida e desnecessária destes comandos, porém quando o dado (que está no result cache) é modificado o resultado…

Sql*Plus SET HIST ON

Olá tudo bem? Neste breve artigo quero compartilhar com vocês uma novidade que a versão 12cR2 do Oracle trouxe, é algo que parece simples, mas para quem trabalha a maior parte do tempo no Sql*Plus (entenda-se DBAs) é um grande avanço, trata-se da função SET HIST do Sql*Plus. Essa funcionalidade não vem habilitada por default, ou seja você tem que explicitamente fazê-lo, mas é algo bem simples, basta digitar SET HIST ON vejamos abaixo: Assim que você  habilitar esta opção, por default já é estabelecido um limite para que os seus últimos 100 comandos fiquem registrados no histórico, sendo assim a partir de agora você pode sair executando seus comandos…

Certificações, ter ou não ter eis a questão?

Esta discussão é algo bem complexo entre os profissionais de TI (principalmente DBAs), seria mais ou menos como discutir se um copo com 50% de agua está metade cheio ou metade vazio, ou seja, vai depender do seu ponto de vista. Na minha modesta opinião, vale a pena ter sim! A mim pelo menos elas nunca atrapalharam e pelo contrário, só me abriram portas. Quando você tem uma certificação, você tem em mãos um atestado de determinada empresa atestando/confirmando/publicando a quem possa interessar que você é apto a trabalhar com sua tecnologia. Ninguém melhor do que o “dono” da tecnologia para atestar que alguém conhece de seu produto. Você confiaria…

Trace, TKPROF, trcsess e etc…

Neste artigo vamos falar um pouco sobre o processo de geração de “traces” dentro do Oracle, um recurso que é bastante útil quando você precisa rastrear as atividades de determinado usuário dentro da instancia de banco de dados. Dando uma explicação bem simples e direta, o processo de gerar traces nada mais é do escrever em arquivos texto tudo o que determinado usuário fizer, para que se possa fazer uma análise posterior, e para isso precisamos interagir com alguns componentes do Oracle, pois bem, vamos lá. Imagina que você tem uma reclamação de que a aplicação está tendo problemas de lentidão em determinado ponto, aí você pergunta para o desenvolvedor…

Subtotal no SQL*Plus

Olá pessoal, hoje vamos falar um pouco do SQL*Plus e obviamente de SQL (para Oracle é claro). O SQL*Plus para quem não conhece é uma ferramenta de prompt de comando (similar ao MS-DOS) para interagirmos com o banco de dados através de comandos na linguagem SQL. Se você tem o Oracle instalado em seu computador, seja ele uma base de dados ou um client, o SQL*Plus muito provavelmente deve estar instalado junto. Para que você acesse o SQL*Plus basta chama-lo via linha de comando digitando “sqlplus” como na imagem abaixo: Feito isso ele vai pedir que você digite suas credenciais de acesso, no meu caso vou me conectar a uma…

PL/SQL Transações Autônomas

Olá, normalmente nos posts que escrevo, sempre acabo falando de assuntos voltados para DBAs (até mesmo porque eu sou um rsrsrs), mas por muitas vezes nos meus treinamentos de SQL e PL/SQL os alunos acabam por me cobrar posts voltados para o processo de desenvolvimento, confesso que escrevo pouco ou quase nada a esse respeito, mas prometo pagar essa divida com vocês a partir de agora, escrevendo artigos úteis para desenvolvedores, até mesmo porque eu já fui um e gostava muito de programar, sendo assim vamos lá. Hoje vamos falar de transações autônomas, que são aquelas famosas transações que acontecem de maneira independente, ou seja, uma transação principal se inicia e…

Métodos de compilação PLSQL

Muitas vezes no seu dia a dia você tem objetos PLSQL que precisam ser executados com uma certa frequência e necessitam de uma velocidade bem agressiva. Nestes casos o primeiro passo é fazer um trabalho de otimização no código e também na instancia (caso seja preciso), mas se mesmo assim você ainda não conseguir chegar a um tempo de resposta adequado, ainda há uma solução. O método de compilação de seu código, interpretado ou nativo, vejamos na sequencia esse assunto com maiores detalhes. Na versão 9i do Oracle, foi introduzida capacidade de compilar seus códigos PLSQL de maneira “nativa” (diretamente na linguagem C) o que o torna bem mais rápido…

Oracle 12c Instalação (Linux)

A versão 12c do Oracle já está aí há um bom tempo, e eu até já escrevi alguns artigos a respeito, porém acredito que um dos principais eu não tenham produzido até então, mas chegou a hora de fazê-lo, enfim vamos lá falar da instalação do Oracle 12c, em ambiente Linux é claro! Preparando o sistema operacional: A primeira etapa deste processo consistem em preparar o sistema operacional para que se possa instalar o Oracle, sendo assim, precisamos fazer alguns ajustes dentro do Linux. Há duas formas de fazê-lo, uma é de maneira automática, onde você simplesmente baixa uma lib do “public-yum” da Oracle e essa lib faz tudo pra…

12c enable_ddl_logging.

No Oracle 12c uma das novas funcionalidades implementadas é a habilidade do banco de dados em monitorar e registrar em um arquivo de log (log.xml) todo e qualquer comando do tipo DDL (Data Definition Language), essa funcionalidade, por padrão vem desabilitada, porém você pode habilitá-la, através do parâmetro ENABLE_DDL_LOGGIN do spfile, para isso basta executar um simples ALTER SYSTEM trocando o valor para TRUE ou FALSE. Abaixo um exemplo: No nosso caso está com a opção default, ou seja desabilitado, para progredir vamos habilitar a funcionalidade com o comando “ALTER SYSTEM” vide imagem. Agora está pronto! De agora em diante todos os seus comandos DDL serão registrados em um arquivo…

DBMS_REDACT 12c

O que é? DBMS_REDACT é uma package do Oracle 12c que nos oferece a capacidade de ocultar dados sensíveis de usuários não privilegiados, exemplo:  usuários de um departamento de RH podem precisar de ver os dados dos funcionários de uma empresa, mas não necessariamente o salário de cada um, isso via de regra seria inerente somente a quem tem essa incumbência. Outro exemplo seriam usuários que tratam de determinado sistema que trabalhe com informações de cartões de credito, o número do cartão dos clientes jamais deve ser revelado. Para atender essa demanda o Oracle 12c vem com a package DBMS_REDACT, onde podemos escolher as informações de devem ser ocultadas e…

Linux, adicionando novo disco

Olá a todos! Neste novo artigo (o primeiro de 2015), vamos sair um pouco do Oracle propriamente dito e vamos falar um pouco de sistema operacional, mais especificamente Linux é claro. Quando se mantém um servidor de banco de dados, com o passar do tempo a tendencia é de que o volume de informações aumente e consequentemente você precisará expandir a capacidade de armazenamento de seu servidor adicionando mais discos, LUNs, LVM etc… Aqui vamos tratar da adição de um novo disco em um servidor. Um método prático e rápido, então vamos lá. Primeiramente veja como estão dispostos os discos em seu servidor, executando o comando df -h este comando responsável por…

Free Webcast Upgrade to Oracle Database 12c with Oracle Real Application Testing

Atenção aqueles que querem conhecer um pouco sobre processos de migração para o Oracle Database 12c, no próximo dia 28/10/14 das 15:00 às 16:00 a Oracle promoverá um webcast a respeito do assunto e o melhor, é grátis! Basta se registrar no site e acompanhar pela web (em inglês). O mais interessante desse evento é que será abordado o processo de migração, utilizando-se do “Real Application Testing”, uma ferramenta do Oracle que nos permite de certo modo comparar o cenário do “antes” e do “depois” de alguma alteração, migração, upgrade e etc. Vale a pena conferir.

Database ARCHIVELOG Mode

Olá a todos, A partir deste de hoje estaremos iniciando uma série de artigos falando sobre RMAN (desde o início) até os temas mais complexos, no intuito de passar além do conhecimento, muitas dicas e sugestões que podem ser úteis no seu dia a dia como DBA. E neste primeiro artigo, vamos falar de algo muito simples e fácil de fazer, porém apesar de simples algo muito importante para fazer backups com o RMAN, que é colocar o banco de dados no modo ARCHIVELOG. Quando você cria sua instância de banco de dados com o DBCA já é possível colocar o banco de dados no modo ARCHIVELOG (basta marcar um check…