Oracle 11G R2 - Instalar JVM

DBA Geral (instalação, configuração do banco, scripts do Sql*Plus, shell scripts, batch scripts, etc...)
Responder
Trevisolli
Moderador
Moderador
Mensagens: 2016
Registrado em: Qua, 12 Jan 2005 3:25 pm
Localização: Araraquara - SP
Abraço,

Trevisolli
OCA Oracle PL/SQL Developer Certified Associate
OCP Oracle Forms Developer Certified Professional
Araraquara-SP

Pessoal, boa tarde.

Gostaria da opinião de vocês, no seguinte:

Instalar JVM no Oracle 11gR2

Acontece que necessitamos de movimentação de arquivos, cópia de arquivos, enfim, temos várias situações onde necessitamos de recursos do Sistema Operacional (Utilizamos Forms 6i) e, para tal, estamos pensando em habilitar os recursos de Java do BD.

Alguém utiliza dessa forma hoje? Podem opinar sobre os prós e os contras (segurança etc) ???

Muito obrigado.

Abraço,

Trevisolli
Avatar do usuário
stcoutinho
Moderador
Moderador
Mensagens: 850
Registrado em: Qua, 11 Mai 2011 5:15 pm
Localização: são Paulo - SP

Trevisolli,

Eu usava muito a JVM no Oracle 9i para executar comandos do sistema operacional. Me parecia confiável e funcionava sem problemas.

Se você só precisa executar comandos de SO (mover, copiar, deletar,etc) porque não utiliza a package DBMS_SCHEDULER? Esta package lhe permite executar scripts SHELL (UNIX) ou BAT (WINDOWS) e, por meio de algumas ganbiarras, é até possível executar programas executáveis.

Segue uma descrição sobre a mesma (http://flylib.com/books/en/2.680.1.57/1/)
Running OS Commands Using DBMS_SCHEDULER
DBMS_SCHEDULER is a PL/SQL package introduced and shipped with Oracle 10g. This package was created to enable DBAs to schedule the execution of predefined packages and shell scripts, such as Windows batch files and Unix sh files, as "jobs." The CREATE JOB privilege is required to successfully submit a job using DBMS_SCHEDULER . Execution of programs is not allowed. However, there is a bug that allows this restriction to be bypassed. By embedding shell meta- characters such as the ampersand (&) or pipes ( ) in the name of the program to be run, it's possible to execute programs:

Selecionar tudo

BEGIN DBMS_SCHEDULER.CREATE_PROGRAM ( program_name=> 'MyCmd', program_type=> 'EXECUTABLE', -- Use the ampersand to break out program_action => 'c:/foo.bat'chr(38)'dir>c:/oraoutput.txt'chr(38)'c:/foo.bat', enabled=> TRUE, comments=> 'Run a command using shell metacharacters.' ); END; / BEGIN DBMS_SCHEDULER.CREATE_JOB ( job_name=> 'X', program_name=> 'MyCmd', repeat_interval=> 'FREQ=SECONDLY;INTERVAL=10', enabled=> TRUE, comments=> 'Every 10 seconds'); END; /
Abraços,

Sergio Coutinho
Trevisolli
Moderador
Moderador
Mensagens: 2016
Registrado em: Qua, 12 Jan 2005 3:25 pm
Localização: Araraquara - SP
Abraço,

Trevisolli
OCA Oracle PL/SQL Developer Certified Associate
OCP Oracle Forms Developer Certified Professional
Araraquara-SP

Valeu Sérgio.
Vou fazer uns testes seguindo suas dicas.
Muito obrigado.

Grande abraço,
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 13 visitantes