Category: Oracle


Se você precisa migrar suas máquinas virtuais do Citrix XenServer (ou outro) que possua arquivos OVA para o Microsoft Hyper-V (VHD, VHDX), siga estes passos:

Obs.: Prepare espaço em disco.

1º – Instale o VirtualBox e importe o arquivo OVA através do menu Arquivos > Importar Appliance. O VitualBox irá processar e ao fim converter o OVA em arquivo VMDK. Após terminar o processo, não é necessário iniciar a máquina virtual no VirtualBox.

Obs.: No meu caso, instalei o VirtualBox no mesmo servidor onde estava o Hyper-V, para facilitar a importação sem a necessidade de ficar movendo grandes arquivos pela rede.

2º – Acesse o prompt de comando (cmd) e vá para o diretório onde estão os arquivos VMDK:

C:\Windows\system32>D:

D:\>cd “VirtualBox\VMnova\Virtual Hard Disks”

D:\VirtualBox\VMnova\Virtual Hard Disks>

3º – Agora execute o comando abaixo para converter o arquivo VMDK para VHD:

“c:\program files\oracle\virtualbox\vboxmanage.exe” clonehd — format VHD VMnova.vmdk VMnova.vhd

Pronto, arquivo VHD disponível para ser alocado em uma máquina virtual EXISTENTE no Hyper-V. Siga os passos abaixo:

4º – Abra o Hyper-V, clique com o botão direito em cima do servidor, vai no menu Novo > Máquina Virtual.

5º – Clique em Avançar > Defina o nome e o diretório de armazenamento da máquina virtual e clique em Avançar.

6º – Deixe em Geração 1 e clique em Avançar.

7º – Aloque a mesma quantidade de memória de origem desta máquina virtual e clique em Avançar.

8º – Defina um adaptador de rede para a máquina virtual e clique em Avançar.

9º – ATENÇÃO: Agora selecione “Anexar um disco rígido virtual mais tarde” e clique em Avançar.

10º – Clique em Concluir.

11º – Com a máquina virtual criada, clique com o botão direito em cima dela e vá em Configurações.

12º – Em “Controlador IDE 0” adicione um novo disco rígido, clique em Procurar e selecione o arquivo VHD gerado no passo 3.

Pronto! Inicie sua máquina virtual no Hyper-V.

 

Fala pessoal!

E então, índices é um problema e/ou solução? Que dilema hein?!

Pelo que venho estudando, ouvindo e consequentemente adquirindo experiência, quando uma tabela chega a quantidade de cinco índices, é hora de ligar o alerta, pois o desempenho do seu banco de dados e aplicação podem estar comprometidos. Venho confirmando essa “teoria” no treinamento Oracle Database 11g: Performance Tunning.

A regra é: Otimizar sempre!

Bom, para consultar a quantidade de índices nas tabelas do seu schema, basta consultar a View de Dicionário de Dados DBA_INDEXES:

SELECT table_name AS “NOME DA TABELA”, count(1) AS “QTDE. DE INDICES” FROM dba_indexes WHERE owner=’SEU_SCHEMA’ GROUP BY table_name;

Perceba que é tranquilo personalizar a instrução acima.

Até a próxima.

O banco de dados Oracle inicializa a partir da leitura de “um de seus arquivos” de inicialização. Como assim, um de seus arquivos?

São dois arquivos. O PFILE, mais conhecido por “init.ora”, e o SPFILE, que é um arquivo de parâmetro do servidor, conhecido como “spfile.ora”.

A instância Oracle inicialmente procura pelo SPFILE, caso não o encontre, buscará pelo PFILE. O SPFILE é uma versão binária do PFILE. Uma das maiores vantagens de se utilizar o SPFILE, é a possibilidade da alteração de diversos parâmetros de forma dinâmica, ativando-os sem a necessidade de reinicialização do banco de dados.

Para verificar a existência do SPFILE, basta executar o seguinte comando:

SQL> show parameter SPFILE;

Para criar o SPFILE a partir do PFILE, utilize os seguintes comandos:

SQL> create SPFILE from PFILE;
ou
SQL> create SPFILE from PFILE=’/u01/app/oracle/product/11.2.0/dbhome_1/dbs/init.ora’
ou
SQL> create SPFILE=’/u01/app/oracle/product/11.2.0/dbhome_1/dbs/spfileNomeInstancia.ora’ from PFILE=’/u01/app/oracle/product/11.2.0/dbhome_1/dbs/init.ora’

Após isto, basta reiniciar o Oracle:

SQL> shutdown immediate;
SQL> startup

Durante o processo de reinicialização, o Oracle encontrará o SPFILE automaticamente.

Sempre faça um backup do SPFILE para um PFILE, pois um dia seu SPFILE pode corromper, então basta inicializar o Oracle a partir do PFILE. Como?

Criando um PFILE a partir do SPFILE, faça:

SQL> create PFILE=’u01/app/oracle/product/11.2.0/dbhome_1/dbs/initBACKUP.ora’ from SPFILE;

Caso o Oracle não inicie devido a um problema no SPFILE, inicialize-o a partir do PFILE salvo:

SQL> startup PFILE=’u01/app/oracle/product/11.2.0/dbhome_1/dbs/initBACKUP.ora’;

O Oracle inicializará normalmente – só por que você fez o backup do SPFILE. Já que agora está tudo mais tranquilo, aproveite para criar um novo SPFILE a partir do PFILE – já que o atual está corrompido – seguindo a dica lá em cima. Ok… Ok… Repetirei:

SQL> create SPFILE from PFILE=’/u01/app/oracle/product/11.2.0/dbhome_1/dbs/initBACKUP.ora’;
SQL> shutdown immediate;
SQL> startup

Pronto, o Oracle voltou a iniciar a partir do SPFILE.
Lembre-se de sempre manter um backup “atualizado” do seu SPFILE em um PFILE.
Todas as operações acima são executadas com um usuário SYSDBA (sqlplus / as sysdba).

IMPORTANTE: Jamais edite de forma manual o SPFILE (spfile.ora), pois o mesmo é binário.

Até a próxima.

Precise, pesquisei e encontrei:

SQL*Plus connection to remote Oracle database

Até a próxima.