Postagens

Nova Revista Digital sobre PostgreSQL "PG Magazine"

Imagem
Para quem se interessa por bancos de dados livres, principalmente o Postgres, saiu recentemente uma nova publicação de um projeto chamado "PostgreSQL Magazine" . Baixei a primeira edição e tem muitos artigos interessantes. Deixei o link disponível na capa abaixo: Para quem quiser contribuir com o projeto pode ver como aqui . Recomendo a leitura.

[Pentaho] - Criando uma Simples transformação para apagar tabelas de um esquema no Oracle

Imagem
Vou mostrar abaixo uma tarefa bastante simples utilizando o Pentaho Data Integration, para fins de aprendizado de 2 componentes interessantes, o "table input" (que utilizo em praticamente todos os projetos) e o "Execute Sql Script" (usado eventualmente). O que esta transformação vai fazer será excluir todas as tabelas de determinado esquema de usuário no banco de dados Oracle. Este mesmo script poderia ser utilizado também para exclusão de qualquer objeto, mas fica para um segundo post. No primeiro componente "table input" configurei da seguinte forma: Nome do Step: Tabelas a Excluir Conexão: SPED (o nome da conexão que criei previamente); SQL: Aqui fiz um select na tabela "user_tables" do dicionário do Oracle, que me retorna o nome de todas as tabelas (exceto temporárias). No segundo compontente "Execute Sql Script" configurei assim: Nome do Step: Apaga Tabelas Conexão: A mesma informada no step anterior: SPED SQL: Aqui col...

Disponibilizado Oracle Express Edition 11g Beta

Está disponível a partir de 1o de abril de 2011 (mas não é piada) a versão beta do Oracle XE na versão 11g em caráter beta para avaliação (não para uso em produção). A Oracle inclusive pede nosso feedback da utilização, para possíveis problemas e situações que possam ser passíveis de correção até o lançamento da versão final. Pelo que li no trecho abaixo referente ao licenciamento do 11g , suas limitações são semelhantes à versão XE 10g, exceto pela restrição de tamanho de base, que passou, de 4GB para 11GB. Vejam abaixo: "Any use of the Oracle Database Express Edition is subject to the following limitations;  1. Express Edition is limited to a single instance on any server;  2. Express Edition may be installed on a multiple CPU server, but may only be executed on one processor in any server;  3. Express Edition may only be used to support up to 11 GB of user data (not including Express Edition system data);  4. Express Edition may use up to 1 GB RAM of avail...

ORA-00600: internal error code, arguments: [kkomiio-2], [], [], [], [], [], [], []

Hoje de manhã me deparei com o erro acima na abertura do CIGAM em determinado cliente, que o impedia de utilizar o sistema. Não encontrei referência específica alguma no Google para auxiliar na resolução do problema. Avaliei o alert .log e o arquivo.trc referente ao problema mas não consegui identificar a causa do erro.  Gerei um log da aplicação para identificar em qual objeto do banco o erro ocorria, pois estava conseguindo acessar normalmente pelo SQLPlus. Abaixo segue trecho do log com o erro: SELECT 1 FROM user_tables WHERE table_name = 'TPI' AND TEMPORARY = 'Y' 1384 ,32890 OPEN_WRITE 1384 ,32890 AUTOCOMMIT ON: FALSE 1384 ,32890 PREPARE ReadA13: SELECT 1 FROM user_tables WHERE table_name = 'TPI' AND TEMPORARY = 'Y' 1384 ,32890 DESCRIBE :ReadA13 INTO sqlda 1384 09:37:05,47812 OPEN :ReadA13 USING DESCRIPTOR sqlda 1384 (15 sec),47812 ...

[MSSQL] - Gerando script para criação de índices

Criei o comando abaixo para facilitar a criação/replicação de índices de uma base para outra. Usei o recurso de "xml path" para criar a lista dinâmica das colunas dos índices, evitando assim a necessidade de uso de cursor ou bloco TSQL. Acabei no final por criar um sub-select utilizando o comando "replace" para remover a última vírgula que ficou no final do comando gerado. Confesso que não ficou muito elegante, mas funcionou. Segue abaixo como ficou: SELECT   REPLACE ( comando , ',)' , ')' ) FROM     ( SELECT   'create INDEX '         +   i . name   +   ' on '           +   t . name   +   ' ('           +   ( SELECT     c . name   +   ','             FROM       sys . index_columns   ic ,          ...

[Openbravo] - Redefinir senha perdida do usuário "Openbravo"

Imagem
Como sabemos, o usuário administrador do Openbravo ERP se chama "Openbravo" e sua senha padrão da instalação é também "openbravo".  Quando fazemos a instalação é recomendado que troquemos esta senha, de modo a darmos mais segurança ao produto instalado. Isso é essencial para ambientes em produção. O que ocorre é que, algumas vezes, por inúmeras razões possíveis (falha humana, erros de ambiente, etc) pode ser que ocorra algum erro (nem sempre visível) ao tentarmos efetuar a troca desta senha. Com isso perdemos o acesso privilegiado ao sistema e não conseguiremos mais administrar de forma efetiva nossa instalação. Independente da razão da perda da senha, uma forma rápida de solucionar o problema é restaurando, via comando de banco, a senha original "openbravo". Abaixo demonstro como realizar esta operação: Abrir o PGAdmin ou outra ferramenta para conexão com o Postgres (A instância do Openbravo no Ubuntu utiliza a porta 5832 e não 5432) ; Acessar o databa...

Apagando Tabelas "Futuras" (acidentais) do módulo Contábil no MSSQL

Dias atrás publiquei no blog este artigo sobre apagar tabelas do módulo Contábil do CIGAM que foram criadas acidentalmente com sufixo de data no futuro. O artigo explica como realizar esta tarefa em banco Oracle, abaixo vou mostrar como realizar o mesmo procedimento no MSSQL: select   'DROP TABLE '   +   name   +   char ( 13 )   +   char ( 10 )   +   'go' from   sys . tables Where   name   like   'CCMC%' and   name   not   like   'CCMC20%' and   ( select   rowcnt       from   sysindexes       where   id = sys . tables . object_id       and   indid   =   1 ) >=   0   --Traz somente tabelas sem registros order   by   name A saída do script foi como esta: DROP   TABLE   CCMC11999 go DROP   TABLE   CCMC1...