Montar amb de desenvolvimento

Dúvidas, dicas e truques de PL/SQL. Aqui também vão assuntos relacionados a pacotes, triggers, funções, Java-Stored Procedures, etc
Responder
xprata
Rank: Analista Júnior
Rank: Analista Júnior
Mensagens: 93
Registrado em: Ter, 06 Abr 2010 11:31 am
Localização: São Paulo - SP

Ola Senhores, não tenho muita intimidade com Oracle.
Tenho que fazer uma manutenção em um sistema que roda com oracle...

Tenho na minha maquina somente o client 11.
Agora estou tendo problema para trabalhar com banco de teste que esta na rede, so que tenho muito problema de queda, pois a conexão é vpn....

Qual a melhor forma para montar um ambiente na minha maquina?
Qual oracle devo baixar e de onde baixar (free) ?
Fazer um simples restore tb não vai dar pois a base é muito grande....
Acredito que tenha que criar a estrutura e depois popular conforme a necessidade....
Qual a dica do senhores ?
Obrigado
Tinho
Rank: DBA Sênior
Rank: DBA Sênior
Mensagens: 317
Registrado em: Seg, 16 Nov 2009 4:50 pm
Localização: São Paulo - SP

Caro xprata, bom dia.

Este sistema que você cita que você precisa fazer manutenção é algum front-end? Exemplo, uma interface feita em delphi, c#, java, etc.?

O problema identificado está relacionado ao banco de dados ou ao front-end? Onde estão as regras de negócio?

Dificilmente você tem um ambiente de desenvolvimento sincronizado com o de produção. Ou seja, os dados podem estar desatualizados, inconsistentes e até mesmo a estrutura das tabelas e demais objetos podem estar divergentes inviabilizando eventuais testes. O mais provavel é que o ambiente de homologação esteja o mais próximo possível do ambiente de produção. Por isso, acho que antes de qualquer teste que você venha a fazer, você primeiro se certifique disso. Caso a empresa tenha um DBA e/ou AD acessível, são as pessoas indicadas para esclarecer essas dúvidas.

Agora quanto ao fato de montar um ambiente de testes na sua máquina. Devido eu acreditar que o banco de dados tenha grandes proporções em tamanho e quantidade de objetos, isto aumenta a complexidade da sua análise. Por isso, sugiro que você delimite o problema por área, exemplo, caso seja um problema de financeiro, faça um levantamento de todos os objetos relacionados a esta área. Para isso, você precisa conhecer o máximo possível do processo. Isto você pode saber entrevistando usuários finais, supervisores e/ou gerentes da área, conhecendo o fluxo operacional.

Identificado isso, e com os objetos em mãos, a minha recomendação seria fazer uma engenharia reversa utilizando alguma ferramenta de case e modelagem, assim você conseguira tangenciar a disposição das tabelas em um DER, identificando relacionamentos, cardinalidades, granularidade, especialização/generalização, normalização, fluxo de dados.

Depois de ter feito isso, delimite o periodo de tempo dos dados que são relevantes para análise para que você possa popular essas tabelas. Exemplo, uma semana, um mês, um ano? A paritr da data de hoje? Ou não? O critério é seu, de acordo com a sua necessidade.

Verifique junto ao DBA a existencia de DBLinks, que é o que eu acho uma das formas mais seguras e viaveis de fazer a migração (tombamento de dados), sem a necessidade de utilizar ferramentas ou scripts externos. Neste caso você teria que analisar a dependência dos dados entre uma tabela e outra, as parametrizações e montar um script para fazer esta migração.

Quanto ao banco de dado que você pode instalar, no próprio site da Oracle você encontrar a versão XE do Oracle.

Espero ter ajudado.

Qualquer dúvida, continue postando, quem sabe algum dos companheiros do forum possam dar outra solução alternativa.

Att.,
xprata
Rank: Analista Júnior
Rank: Analista Júnior
Mensagens: 93
Registrado em: Ter, 06 Abr 2010 11:31 am
Localização: São Paulo - SP

Tinho, obrigado pelo retorno
Primeiramente, tenho que ressaltar a qualidade do forum, pois uma resposta como esta destaca o comprometimento das pessoas que estão disposta ajudar...

Bem vamos la....não entrarei em detalhes, mas estou em uma ambiente onde cada equipe trabalha sem muito colaboração...
Então tentei um amb. homologação atualizado, até o momento ainda não foi possível...Dependendo da localização física que estou na empresa o acesso a rede fica muito lento, dai meu desenv. fica comprometido, pois perco a conexão com o banco com frequência tornando mais demorado o trabalho...
Enquanto o amb. não fica pronto (não sei quando ficará), tenho que arrumar outra forma....
Uma que vejo é montar o amb. na minha maquina.
Com amb. SQL, fiz como você falou, la tenho a opção de criar os scripts das tabela, com dados ou não....
Fiz um primeiro sem dados para criar as tabela...depois um com dados...dai populo conforme vou precisando...
Queria fazer o mesmo com oracle...mas não sei se é possível no próprio oracle fazer isso, ou dependo de ferramenta de terceiro (não conheço).
Mais uma vez, muito obrigado
att
Tinho
Rank: DBA Sênior
Rank: DBA Sênior
Mensagens: 317
Registrado em: Seg, 16 Nov 2009 4:50 pm
Localização: São Paulo - SP

Realmente xprata, o fórum é um dos melhores que eu participei e me ajuda muito, por isso tento retribuir na medida do possível.

Bom no Oracle é possível sim, acredito que esta seja uma funcionalidade "bem-vinda" em todos os bancos de dados.

Bem quanto as ferramentas, não sei qual IDE você está utilizando, exemplo PL/SQL Developer, Toad, dentre outros. A maioria tem a opção de visualizar o codigo DDL dos objetos, no entanto ressalto que existem algumas "sujeiras" e/ou código não reconhecidos pela ferramenta cuja a qual você for utilizar para fazer a engenharia reversa, podendo ocasionar erros na geração do DER.

Existe uma ferramenta própria da Oracle, conforme segue:

http://www.oracle.com/technetwork/devel ... index.html
http://www.oracle.com/technetwork/devel ... index.html

Eu particularmente gosto muito de trabalhar com o CA-Erwin, no entanto existem outras também, como DBDesigner, Enterprise Architect, etc. Cabe a você definir qual é a melhor para você trabalhar, de acordo com a sua familiaridade com a ferramenta.

Se entendi bem, a princípio eu sugereria você a fazer o DDL sem os dados, apenas as estruturas e depois popular as tabelas.

Se puder passar as informações das ferramentas que você esta utilizando ficará mais fácil orientá-lo. Caso ainda não possua as ferramentas, fica a dica citada acima.

Apenas uma dúvida, quando você diz "ambiente SQL", você está utilizando o SQL Server da Microsoft? Se você tiver acesso ao Erwin, você consegue migrar facilmente os scripts de um banco para o outro. Fica a dica.

Abç.,
xprata
Rank: Analista Júnior
Rank: Analista Júnior
Mensagens: 93
Registrado em: Ter, 06 Abr 2010 11:31 am
Localização: São Paulo - SP

Esqueci dos detalhes...
Aplicação em c# com oracle 10.
Na minha maquina me conecto ao banco via vpn ou rede e tenho o client do 11.

O Sql que me referi é de outro projeto e é o MS...no momento estou trabalhando com 2005 e 2008...
Tive que fazer este tipo de contorno para o projetos com SqlServer.

Tenho Erwin 4.1, mas uma versão antiga que não conversa com sqlserver 2005 e 2008 :-)....Mas o único problema é que não conecta no banco...mas da para gerar os scripts tranquilamente e aplicar no banco que preciso.

Vou ver se esta versão se conecta ao oracle para fazer a reversa.

Atualmente para acessar as tabela, rodar alguns script no oracle...uso uma ferramenta bem leve...
SQLTools 1.6 Beta build 15. Me atende para o básico....

Se eu baixar o oracle 11, terei problema para criar as tabela do 10 ou versões anteriores ...Tem alguma relação ? ou não tem nada a ver ? ouço falar que se tiver várias versões de clients na maquina pode haver problemas...
Valeu....
Tinho
Rank: DBA Sênior
Rank: DBA Sênior
Mensagens: 317
Registrado em: Seg, 16 Nov 2009 4:50 pm
Localização: São Paulo - SP

Lembre-se de baixar a versão XE, é uma versão mais leve e limitada do banco, mas que geralmente atende muito bem a maioria das necessidades de testes e estudos e aplicações menores.

Quanto a ferramenta SQLTools eu desconheço, no entanto se está lhe atendendo, ótimo.

Já a engenharia reversa no erwin você consegue fazer sem necessariamente estar conectado no banco. Se você tem o script DDL, salve ele num arquivo com a extensão .sql e você conseguirá gerar o DER. Mas como havia lhe falado anteriormente dependendo das versões do banco pode haver conflitos no scripts.

Em relação a sua dúvida de compatibilidade entre as versões do banco eu não sei lhe responder com exatidão no momento. Mas no geral não deve haver conflito caso o script seja simples. Mas se você baixar uma versão superior a utilizada na sua empresa, por convenção e compatibilidade as versões superiores suportam os recursos das versões abaixo.

Sim, muitos clients instalados na mesma máquina existe a possibilidade de causar problemas, conflitos de portas dentre outros. Uma alternativa seria utilizar uma máquina virtual, desta forma você preservaria a sua configuração da máquina host. Ou antes de instalar, crie um ponto de restauração no windows.
xprata
Rank: Analista Júnior
Rank: Analista Júnior
Mensagens: 93
Registrado em: Ter, 06 Abr 2010 11:31 am
Localização: São Paulo - SP

Obrigado...qualquer coisa aviso....
Responder
  • Informação