Como acompanhar o progresso da criação de um índice no MONGODB

Introdução

Como todos sabem, meu background técnico sempre foi forte em SQL Server e posteriormente em Oracle. 2 bancos de dados sensacionais que entregam robustez e valor para qualquer empresa que os adquirem, ao custo de algumas dezenas de milhares de dólares.

É fato que eu adoraria que o Failover Cluster do SQL Server tivesse os 2 nós ativos como o Oracle RAC usando ASM, é sensacional. Mas também gostaria de pagar somente a licença Enterprise Edition do Oracle e ter os recursos avançados de Compressão, Diagnostics Tuning, Particionamento, dentre outros. De fato não tem como fazer o omelete sem quebrar os ovos …

Agora estou em um desafio muito legal de aprender MongoDB : = ). Esse “banquinho” generoso ao custo de R$ 0.00 é calo no sapato de muito SGBD grande por aí. A licença Community é gratuita e eu sempre olhei com um certo receio para “esses bancos modinhas“, porém vi que o MongoDB além de não ser modinha, ele veio para ficar e tem mais tempo de vida do que eu tenho experiência com banco de dados.

Read more

Como alterar o banco de dados de NOARCHIVELOG para ARCHIVELOG no Oracle

Se seu banco de dados é importante, ele deve estar no modo ARCHIVELOG!

Para realizar tal alteração, basta seguir alguns poucos passos, porém, diferente do SQL Server, essa opção de alteração do RECOVERY MODEL requer que o banco seja reiniciado! Sim, estamos em 2020 e o Oracle com todos recursos que tem, ainda nos pede para reiniciar o banco para fazer essa simples troca!

1º passo: Verifique se o banco está em NOARCHIVELOG.

[code lang=”sql”]
[oracle@server01 ~]$ sqlplus / as sysdba
SQL> archive log list;

Database log mode No Archive Mode
Automatic archival Disabled
Archive destination /u01/app/oracle/product/19.0.0/dbhome_1/dbs/arch
Oldest online log sequence 24
Current log sequence 26
[/code]

Read more

Corrigindo o erro ORA-00604: error occurred at recursive SQL level 1 após atualizar o Oracle de 11g para 12c

Ao atualizar nossas instâncias de 11g para 12c começamos a receber o erro abaixo ao criar packages, triggers e procedures no SQL Developer:

Error report –
ORA-00604: error occurred at recursive SQL level 1
ORA-00904: “DECL_OBJ#”: invalid identifier
00604. 00000 – “error occurred at recursive SQL level %s”
*Cause: An error occurred while processing a recursive SQL statement
(a statement applying to internal dictionary tables).
*Action: If the situation described in the next error on the stack
can be corrected, do so; otherwise contact Oracle Support.

O código que eu tava tentando executar era de uma trigger de DDL, que por ventura, rodava com sucesso no SQLPlus. Levando a crer que fosse um problema exclusivo do SQL Developer:
Read more

Identificando blocos corrompidos nos bancos Oracle e SQL Server

Os 2 principais bancos de dados do mercado possuem alguns meios eficazes de identificar se há blocos corrompidos na base de dados. A intenção é mostrar de maneira simples e clara os métodos utilizados para checar se há algum problema de corrupção de dados, arquivos, dentre outros.

Oracle

Utilizando a view: v$database_block_corruption. É preciso rodar o comando backup validate check logical database para popular a view v$database_block_corruption!

Read more