[ORACLE] Desabilitar expiração de senha no Oracle

Aqui vai mais uma dica para DBA Oracle, para evitar problemas na manutenção de contas de usuário no Oracle, que em alguns casos pré-requisito para implantação de sistemas ERP dentro do SGBD Oracle.

Desabilita expirao de senha no Oracle
ALTER PROFILE DEFAULT LIMIT FAILED_LOGIN_ATTEMPTS UNLIMITED PASSWORD_LIFE_TIME UNLIMITED;
Seleciona usuário/ data_expiração / status_conta
select username,expiry_date,account_status from dba_users;
Altera senha e desbloqueia a conta
alter user teste identified by "teste123" account unlock;
Publicado em ORACLE | Com a tag | Deixe um comentário

Por que programar em Java?

Publicado em Java | Com a tag , , | Deixe um comentário

Retornar a data de um intervalo da semana atual

Estou trabalhando em uma rotina trazer o periodo da semana atual de SEGUNDA A SEXTA. Minha idéia foi de trazer todos os registros da semana atual. Então como fazer para enviar os registros que estão entre Segunda e Sexta ? SQL abaixo foi muito util pra min, estou compartilhando.

select SYSDATE AS DATA_ATUAL, SYSDATE – (to_char(SYSDATE, ‘D’) – 2) AS SEGUNDA, SYSDATE + (6 – to_char(SYSDATE, ‘D’)) AS SEXTA from dual

 

Dúvida e só deixar seu comentário abaixo:

Abraços!

Publicado em Scripts | Com a tag , | Deixe um comentário

TRIM FUNCTION

Definição:
A Oracle tem a função TRIM que remove espaços anteriores e posteriores de uma cadeia ou coluna, resumindo de um texto por exemplo ” teste “.
Caracteres de espaço são o padrão, mas você também pode especificar o caractere (s) a ser removido.
Os personagens podem ser especificados como literais (‘A’, ‘m’, etc) ou por seus equivalentes da CDH:. CHR (112) ‘,’ CHR (68) ”
A função TRIM retorna um valor com tipo de dados VARCHAR2 . Exemplo (Padrão ) Sintaxe:

TRIM ();
Exemplo de sintaxe para especificar um caractere literal:

Select Trim (‘Z’ FROM ‘Zebra’) FROM dual;
Exemplo de sintaxe para especificar um personagem com o seu valor CHR ():

Select Trim (CHR (90) FROM ‘Zebra’) FROM dual;

Qualquer dúvida e so deixar os comentários abaixo:

Abraço



Publicado em Scripts | Com a tag , | Deixe um comentário

Alterando tamanho da SGA do Oracle

Para quem precisa alterar o tamanho da SGA do oracle, segue os comandos a baixo.

OBS: O parâmetro SGA_TARGET não pode ser alterado em memória, logo um simples ALTER SYSTEM não funciona pois sem passar o parâmetro SCOPE o utilizado como padrão é SCOPE=BOTH, ou seja, atualização na database ativa e no SPFILE, o segredo é utilizar o parâmetro SCOPE = SPFILE

$ sqlplus /nolog
$ SQLPLUS > CONNECT / as sysdba
$ SQLPLUS > ALTER SYSTEM SET SGA_TARGET = 9G SCOPE=SPFILE;
$ SQLPLUS > ALTER SYSTEM SET SGA_MAX_SIZE = 10240M SCOPE=SPFILE;
$ SQLPLUS > SHUTDOWN IMMEDIATE
$ SQLPLUS > STARTUP OPEN

 

Publicado em Scripts | Com a tag , , , | Deixe um comentário

Recuperação de datafiles e tablespaces – Oracle

Para que possamos implementar uma recuperação de datafile ou tablespace gerenciado pelo usuário, temos, é claro, que ter um backup do banco de dados, seja ele COLD (banco fora) ou HOT (banco no ar e utilizando archives).

Como iremos simular a recuperação de apenas uma tablespace ou datafile, faremos um backup apenas da tablespace USERS.

Uma das formas para se fazer esse backup é utilizando as técnicas mostradas no artigo anterior, ou seja, BEGIN BACKUP e END BACKUP. Então, vamos lá!

01. Coloque a tablespace no modo BEGIN BACKUP
ALTER TABLESPACE USERS BEGIN BACKUP;

02. Copie o datafile da tablespace USERS utilizando os comandos do sistema operacional (COPY do WINDOWS, ou cp do Linux…)
COPY D:\Oracle\Oradata\USERS01.DBF E:\Backup\Oracle\USERS01.DBF

1 arquivo(s) copiado(s).

03. Coloque a tablespace no modo END BACKUP
ALTER TABLESPACE USERS END BACKUP;

De forma a confirmar os dados que existem nas tabelas dessa tablespace, vamos fazer um select de forma a visualizar alguns dados.

SQL> select * from scott.emp;
truncando (conforme solicitado) antes da coluna DEPTNO

EMPNO
ENAME
JOB
MGR
HIREDATE
SAL
COMM
7369
SMITH
CLERK
7902
17/12/80
800
7499
ALLEN
SALESMAN
7698
20/02/81
1600
300
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
7902
FORD
ANALYST
7566
03/12/81
3000
7934
MILLER
CLERK
7782
23/01/82
1300

14 linhas selecionadas.

SQL> select to_char(sysdate,’dd/mm/yyyy hh:mi:ss’) from dual;

TO_CHAR(SYSDATE,’DD
——————-
25/05/2006 09:50:44

Perceba que às 09:50:44 do dia 25/05/2006, tabela EMP do usuário SCOTT possuia 14 linhas.

SQL> select tablespace_name, status
2  from dba_tablespaces;

TABLESPACE_NAME       STATUS
—————————— ———
SYSTEM                           ONLINE
UNDOTBS1                      ONLINE
SYSAUX                          ONLINE
TEMP                                ONLINE
USERS                             ONLINE
EXAMPLE                         ONLINE

6 linhas selecionadas.

Perceba que a tablespace USERS está online e, portanto, as tabelas podem ser acessadas.

Alguns minutos depois, o disco onde a tablespace estava armazenada apresentou um problema e você vai precisar fazer a recuperação novamente.

ERRO na linha 1:
ORA-01157: nÒo Ú possÝvel identificar/bloquear arquivo de dados 4 – consulte
arquivo de anßlise DBWR
ORA-01110: 4 do arquivo de dados:
‘D:\ORACLE\PRODUCT\10.1.0\ORADATA\ORCL\USERS01.DBF’

SQL> select tablespace_name, status
2  from dba_tablespaces;

TABLESPACE_NAME       STATUS
—————————— ———
SYSTEM                           ONLINE
UNDOTBS1                      ONLINE
SYSAUX                          ONLINE
TEMP                                ONLINE
USERS                             OFFLINE
EXAMPLE                        ONLINE

6 linhas selecionadas.

A tablespace agora se encontra offline, e os dados contidos nela não podem ser acessados.

E agora, o que fazer?

Após reconstruir o file system, seja ele Windows ou Linux, você vai restaurar o datafile que sofreu o crash a partir de um backup(USERS01.DBF), e executar o comando de RECOVER TABLESPACE.

Execute a recuperação da tablespace que apresentou problema:

SQL> RECOVER TABLESPACE USERS;
Recuperaþòo De Mýdia Concluýda.

Depois, coloque a tablespace em modo ONLINE

SQL> ALTER TABLESPACE USERS ONLINE;
Tablespace alterado.

Consultando DBA_TABLESPACES, você poderá verificar que a tablespace está novamente disponível para uso.

SQL> SELECT TABLESPACE_NAME, STATUS
2  FROM DBA_TABLESPACES;

TABLESPACE_NAME       STATUS
—————————— ———
SYSTEM                           ONLINE
UNDOTBS1                      ONLINE
SYSAUX                          ONLINE
TEMP                                ONLINE
USERS                             ONLINE
EXAMPLE                        ONLINE

6 linhas selecionadas.

Fizemos um exemplo recuperando uma tablespace. Agora, imagine que essa tablespace fosse formada de dois datafiles, um datafile na unidade D e outro na unidade E. Da mesma forma com que você recuperou a tablespace, é possível também recuperar o datafile.

Imagine que o datafile existente na unidade D apresentou problemas de leitura no disco, e está corrompido.

Para isso, após corrigir o problema físico do disco, restaure o ultimo backup válido disponível no path determinado pela consulta:

SQL> SELECT FILE_ID, FILE_NAME
2 FROM DBA_DATA_FILES;

FILE_ID FILE_NAME
———- —————————————————
4 D:\ORACLE\PRODUCT\10.1.0\ORADATA\ORCL\USERS01.DBF
3 D:\ORACLE\PRODUCT\10.1.0\ORADATA\ORCL\SYSAUX01.DBF
2 D:\ORACLE\PRODUCT\10.1.0\ORADATA\ORCL\UNDOTBS01.DBF
1 D:\ORACLE\PRODUCT\10.1.0\ORADATA\ORCL\SYSTEM01.DBF
5 D:\ORACLE\PRODUCT\10.1.0\ORADATA\ORCL\EXAMPLE01.DBF

Perceba o número de identificação do datafile USERS01.DBF(4), após identificar o número do arquivo, execute o seguinte comando

SQL> RECOVER DATAFILE 4;
RECUPERAÞÒO DE MÝDIA CONCLUÝDA.

Publicado em Sem categoria | Com a tag , | Deixe um comentário

Lib java para Ireports…

Para quem quiser conectar ao Oracle utilizando o Ireports que é uma ferramenta de relatórios, estou postanto o arquivo ojdbc.jar para download.

E só adicioná-lo na pasta bin, que fica dentro de c:/arquivos de programa/Jaspersoft/ireports/bin/

Download: ojdbc14

Publicado em Irepots | Com a tag , , | Deixe um comentário

ORA-12638

Fui fazer a instalação do oracle e me deparei com os seguinte erros, e resolvi compartilhar com quem possa ter os mesmos problemas.

ORA-12638: Falha na recuperação de credencial
ORA-12638 credential retrieval failed

O erro pode ser o seguinte.

Altere no arquivo sqlnet.ora o parâmetro “SQLNET.AUTHENTICATION_SERVICES= (NTS)” mude para “SQLNET.AUTHENTICATION_SERVICES= (NONE)”

O caminho varia de como foi realizado a instalação:

http://forums.oracle.com/forums/thread.jspa?threadID=332525

http://www.dba-oracle.com/t_ora_12638_credential_retrieval_failed.htm

Abraços.

Publicado em Sem categoria | Com a tag , | 7 Comentários

Instalando o PHP e Oracle Instant Client para Windows

Oracle 11 g Instant Client is the easiest way to connect PHP to a remote Oracle database. 11 g Oracle Instant Client é a maneira mais fácil de conectar PHP para uma base de dados Oracle remoto. This notes describes how to install PHP with the OCI8 Extension and Oracle Instant Client on Windows and Linux. Esta nota descreve como instalar o PHP com o OCI8 Extensão e Oracle Instant Client em Windows e Linux. The free The Underground PHP and Oracle Manual contains more detail and explains other installation options. A livre Underground PHP e Oracle O Manual contém mais detalhes e explica outras opções de instalação.

OCI8 is the PHP extension for connecting to Oracle databases. OCI8 é a extensão PHP para ligação a bases de dados Oracle. (The name is copied from Oracle’s C “call interface” API interface first introduced in Oracle 8.) OCI8 is open source and included with PHP. (O nome é copiado a partir da Oracle C “chamada interface” Interface API introduzidas pela primeira vez em Oracle 8). OCI8 é open source e incluído com PHP.

Oracle Instant Client is a free set of easily installed libraries that allow programs to connect to Oracle databases. Oracle Instant Client é um conjunto de livre facilmente instalado bibliotecas que permitem que programas para conectar a bases de dados Oracle. To use Instant Client, an existing database is needed; Instant Client does not include one. Para usar o Instant Client, um banco de dados existente é necessária; Instant Client não incluir um. Typically the database will be on another machine. Normalmente o banco de dados estará em outra máquina. If the database is local then Oracle libraries will generally be accessible and Instant Client not required. Se o banco de dados é local, em seguida, Oracle bibliotecas serão geralmente acessíveis e Instant Client não exigida.

Using Instant Client 11 g , OCI8 functions work with Oracle 9.2, 10.x, and 11.x databases. Usando Instant Client 11 g, OCI8 funções trabalhar com Oracle 9.2, 10.x, 11.x e bases de dados. If OCI8 is compiled with Instant Client 10 g , connection to Oracle 8.1 is also possible. Se OCI8 é compilado com Instant Client 10 g, conexão à Oracle 8.1 é também possível.

Software Requirements: Software Requisitos:

Oracle Instant Client

Apache HTTPD Server

PHP – PHP Hypertext Processor

Enabling the PHP OCI8 Extension on Windows Habilitar o PHP OCI8 Extension no Windows

The Instant Client binaries complement PHP’s prebuilt binaries for Windows. O Instant Client binários PHP complemento da pré binários para Windows.

  1. Download the Apache HTTPD Server and the Windows PHP 5.2 zip package . Faça o download do Apache HTTPD Server eo Windows PHP 5,2 zip pacote. Use the “Non-thread-safe” version of PHP if you want to use Fast CGI, or use the default bundle if you plan to run PHP as an Apache module. Use o “Non-thread-safe” versão do PHP, se você quiser usar Fast CGI, ou usar o pacote padrão, se você pretende executar o PHP como um módulo Apache.

Install PHP and Apache following Installation on Windows Systems in the PHP Manual. Instale o PHP e Apache seguintes Instalação em sistemas Windows em PHP Manual.

Check that PHP is working before continuing. Verifique que PHP está funcionando antes de continuar. At this stage Oracle support is not enabled. Nesta fase o apoio Oracle não está ativado.

  1. Download the “Instant Client Package – Basic” for Windows from the OTN Instant Client page . Faça o download do “Instant Client Package – Basic” para o Windows a partir da OTN Instant Client página.

Unzip the Instant Client to c:\instantclient_11_1 Descompacte o Instant Client para c: \ instantclient_11_1

Edit the PATH environment setting and add c:\instantclient_11_1 before any other Oracle directories. Editar a configuração de ambiente PATH e adicione c: \ instantclient_11_1 antes de qualquer outra Oracle diretórios. For example, on Windows XP, follow Start -> Control Panel -> System -> Advanced -> Environment Variables and edit PATH in the System variables list. Por exemplo, no Windows XP, siga Iniciar -> Painel de Controle -> Sistema -> Avançadas -> Variáveis de Ambiente e editar PATH no Sistema variáveis lista.

Set desired Oracle globalization language environment variables such as NLS_LANG. Definir idioma desejado Oracle globalização variáveis do ambiente, tais como NLS_LANG. If nothing is set, a default local environment will be assumed. Se nada for definido, um padrão ambiente local serão assumidas. See An Overview on Globalizing Oracle PHP Applications for more details. Veja um resumo de Globalizing PHP Oracle Applications para obter mais detalhes.

Unset Oracle variables such as ORACLE_HOME and ORACLE_SID, which are unnecessary with Instant Client. Unset Oracle variáveis como ORACLE_HOME e ORACLE_SID, que são desnecessários com Instant Client.

  1. The default OCI8 1.2 extension included in PHP 5.2 has been superceded. O padrão OCI8 1/2 extensão incluído no PHP 5/2 foi superada. Whilst you could use it, I recommend downloading the OCI8 1.3 extension from Pierre Joye’s build page . Embora você pode utilizá-lo, eu recomendo fazer o download do OCI8 1,3 extensão de Pierre Joye construção da página. This download location is temporary while the PHP community develops a replacement for the pecl4win system. Este download é temporário, enquanto a localização PHP comunidade desenvolve um substituto para o pecl4win sistema.

The current OCI8 1.3 packages for PHP 5.2 are php_oci8-1.3.5-5.2-Win32-vc6-x86.zip and php_oci8-1.3.5-5.2-nts-Win32-vc6-x86.zip. O actual OCI8 1/3 pacotes para PHP 5.2 são php_oci8-1.3.5-5.2-win32-vc6-x86.zip e php_oci8-1.3.5-5.2-nts-Win32-vc6-x86.zip. Use the “nts” version if you installed a non-thread-safe PHP. Use o “nts” se você instalou uma versão não-thread-safe PHP. Each package contains a replacement php_oci8.dll and introduces a new php_oci8_11g.dll file. Cada pacote contém uma substituição php_oci8.dll e introduz um novo php_oci8_11g.dll arquivo.

Unzip the appropriate package and move the two DLLs to your extension directory, eg c:\php-5.2.9\ext. Descompacte o pacote adequado e mover as duas DLLs para a sua prorrogação diretório, por exemplo, c: \ php-5.2.9 \ ext.

  1. Edit php.ini and set extension_dir to the directory with the PHP extension DLLs: Editar php.ini extension_dir e definir para o diretório com a extensão PHP DLLs:

5. extension_dir=”c:\php-5.2.9\ext” extension_dir = “c: \ php-5.2.9 \ ext”

6.

Also in php.ini, enable the OCI8 extension with: Também em php.ini, habilite a extensão OCI8 com:

extension=php_oci8_11g.dll extension = php_oci8_11g.dll

If using Oracle 10.2 Instant Client, alternatively put: Se estiver usando Oracle Instant Client 10/2, alternativamente, colocar:

extension=php_oci8.dll extension = php_oci8.dll

Only one of the php_oci8.dll or php_oci8_11g.dll extensions can be enabled at any time. Apenas um dos php_oci8.dll ou extensões php_oci8_11g.dll pode ser ativada a qualquer momento. The extensions are mostly equivalent, but the 11g version supports Oracle DRCP connection pooling. As extensões são essencialmente equivalentes, mas o Oracle 11g versão suporta conexão DRCP agrupamento.

  1. Restart Apache. Reinicie o Apache.

Autor: Christopher Jones, Oracle Corporation
Email:
christopher.jones@oracle.com Email: christopher.jones @ oracle.com
Updated: March 2009 Actualização: Março de 2009

FONTE: http://www.oracle.com/technology/pub/notes/technote_php_instant.html

Publicado em PHP X ORACLE | Com a tag , , , | 3 Comentários

Oracle Real Application Clusters

O Oracle Real Application Clusters (Oracle RAC) é um opcional do Banco de Dados Oracle 11g Enterprise Edition e vem incluso com o Banco de Dados Oracle 11g Standard Edition (em clusters com um máximo de quatro soquetes). O Oracle RAC suporta a implantação de um único banco de dados em um cluster de servidores, fornecendo tolerância a falhas, desempenho e escalabilidade imbatíveis, sem necessidade de mudanças nos aplicativos. Os analistas estão percebendo a importância crescente do RAC em uma grande variedade de clientes em todos os setores, para processamento de transações e aplicações de data warehousing.

BENEFÍCIOS

* Disponibilidade 24×7 – Forneça disponibilidade contínua para os aplicativos do banco de dados
* Escalabilidade sob demanda – Expanda a capacidade simplesmente adicionando servidores ao seu cluster
* Baixe os custos de computação – Use hardware comum de baixo custo e reduza o custo da indisponibilidade
* Desempenho com recorde mundial – Opera mais rápido do que o mainframe mais poderoso
* Grid computing – O Oracle RAC é a base do grid computing

Publicado em ORACLE | Com a tag , , | 1 Comentário