This discussion is archived
12 Replies Latest reply: Oct 11, 2012 1:43 PM by 934646 RSS

ASMCMD: perl.exe is not recognized as an internal

934646 Newbie
Currently Being Moderated
Hi all,

I installed 11g database with asm. I am unable to enter in to the asmcmd. it throws me the error "perl.exe is not recognized as an internal or external command, operable program or batch file".
I have set Oracle home to c:\oracle\dbhome_1, oracle sid to +ASM

my env: windows server 2008 r 2 installed with oracle 11.2.0.3 db with grid infrastructure(asm)

thanks.
  • 1. Re: ASMCMD: perl.exe is not recognized as an internal
    Levi-Pereira Guru
    Currently Being Moderated
    Please set ORACLE_HOME from GRID_INSTALLATION

    SET ORACLE_HOME=<GRID_INSTALL>
    SET ORACLE_SID=+ASM
    
    cd %ORACLE_HOME%\bin
    
    asmcmd.bat
  • 2. Re: ASMCMD: perl.exe is not recognized as an internal
    Shivananda Rao Guru
    Currently Being Moderated
    931643 wrote:
    Hi all,

    I installed 11g database with asm. I am unable to enter in to the asmcmd. it throws me the error "perl.exe is not recognized as an internal or external command, operable program or batch file".
    I have set Oracle home to c:\oracle\dbhome_1, oracle sid to +ASM

    my env: windows server 2008 r 2 installed with oracle 11.2.0.3 db with grid infrastructure(asm)

    thanks.
    You need to set the ORACLE_HOME path to the Grid Infrastructure home path and not to the database home path.
    Oracle SID needs to be set as +ASM                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               
  • 3. Re: ASMCMD: perl.exe is not recognized as an internal
    934646 Newbie
    Currently Being Moderated
    Hi I have done that..but same error

    C:\>set ORACLE_HOME='C:\Oracle\grid_home'

    C:\>echo ORACLE_HOME=%ORACLE_HOME%
    ORACLE_HOME='C:\Oracle\grid_home'

    C:\>set ORACLE_SID=+ASM

    C:\>echo ORACLE_SID=%ORACLE_SID%
    ORACLE_SID=+ASM

    C:\Oracle\dbhome_1\BIN>asmcmd
    'perl.exe' is not recognized as an internal or external command,
    operable program or batch file.
    C:\Oracle\dbhome_1\BIN>

    thanks.
  • 4. Re: ASMCMD: perl.exe is not recognized as an internal
    Shivananda Rao Guru
    Currently Being Moderated
    Refer this http://lucasmalmeida.wordpress.com/tag/asmcmd/
  • 5. Re: ASMCMD: perl.exe is not recognized as an internal
    Levi-Pereira Guru
    Currently Being Moderated
    It's because the variable PATH is misconfigured.

    Put here output of

    echo %PATH%

    You can try set %PATH% variable putting %GRID_HOME%\bin in first place:
    eg: 
    SET PATH=GRID_HOME\bin;DB_HOME\bin..and so on
    Also you can use OUI ( Universal Installer) of Grid_home on Windows Menu (start>all program > Grid_home > Oracle Installation Products > Universal Installer) to set your PATH variables

    On OUI On OUI > Installed Products > environments [TAB]

    Choose the order as you wish.

    Edited by: Levi Pereira on Oct 11, 2012 1:22 PM
  • 6. Re: ASMCMD: perl.exe is not recognized as an internal
    934646 Newbie
    Currently Being Moderated
    C:\>echo ORACLE_SID=%ORACLE_SID%
    ORACLE_SID=+ASM

    C:\>echo ORACLE_HOME=%ORACLE_HOME%
    ORACLE_HOME='C:\Oracle\grid_home'

    C:\>set ORACLE_PATH='C:\Oracle\grid_home\bin;C:\Oracle\dbhome_1\bin;C:\Oracle\gr
    id\bin;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT
    %\System32\WindowsPowerShell\v1.0\;C:\Program Files\ArcGIS\ArcSDE\ora11gexe\bin'


    C:\>echo ORACLE_PATH=%ORACLE_PATH%
    ORACLE_PATH='C:\Oracle\grid_home\bin;C:\Oracle\dbhome_1\bin;C:\Oracle\grid\bin;C
    :\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\Windo
    wsPowerShell\v1.0\;C:\Program Files\ArcGIS\ArcSDE\ora11gexe\bin'

    C:\>cd Oracle\dbhome_1\BIN

    C:\Oracle\dbhome_1\BIN>asmcmd
    'perl.exe' is not recognized as an internal or external command,
    operable program or batch file.
    C:\Oracle\dbhome_1\BIN>
  • 7. Re: ASMCMD: perl.exe is not recognized as an internal
    934646 Newbie
    Currently Being Moderated
    i think perl is not installed on my computer..but i do see a folder called perl in both the homes
  • 8. Re: ASMCMD: perl.exe is not recognized as an internal
    Levi-Pereira Guru
    Currently Being Moderated
    Try it:
    SET ORACLE_SID=+ASM
    
    SET ORACLE_HOME=C:\Oracle\grid_home
    SET PATH=C:\Oracle\grid_home\bin;C:\Oracle\grid_home\perl\bin;C:\Oracle\dbhome_1\bin;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Program Files\ArcGIS\ArcSDE\ora11gexe\bin
    
    ### From root of "C:" type:
    
    C:\> asmcmd.bat
    Edited by: Levi Pereira on Oct 11, 2012 2:33 PM

    Edited by: Levi Pereira on Oct 11, 2012 2:34 PM ## Fixed Perl home
  • 9. Re: ASMCMD: perl.exe is not recognized as an internal
    934646 Newbie
    Currently Being Moderated
    C:\Users\dbadmin>set ORACLE_SID=+ASM

    C:\Users\dbadmin>set ORACLE_HOME='C:\Oracle\grid_home'

    C:\Users\dbadmin>echo ORACLE_SID=%ORACLE_SID%
    ORACLE_SID=+ASM

    C:\Users\dbadmin>echo ORACLE_HOME=%ORACLE_HOME%
    ORACLE_HOME='C:\Oracle\grid_home'

    C:\Users\dbadmin>set ORACLE_PATH='C:\Oracle\grid_home\bin;C:\Oracle\grid_home\pe
    rl\bin;C:\Oracle\dbhome_1\bin;C:\Oracle\grid\bin;%SystemRoot%\system32;%SystemRo
    ot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\
    Program Files\ArcGIS\ArcSDE\ora11gexe\bin'

    C:\Users\dbadmin>echo ORACLE_PATH=%ORACLE_PATH%
    ORACLE_PATH='C:\Oracle\grid_home\bin;C:\Oracle\grid_home\perl\bin;C:\Oracle\dbho
    me_1\bin;C:\Oracle\grid\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\W
    bem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\ArcGIS\ArcSDE\o
    ra11gexe\bin'

    C:\Users\dbadmin>cd Oracle\

    C:\Users\dbadmin\Oracle>cd \

    C:\>cd Oracle\dbhome_1\BIN

    C:\Oracle\dbhome_1\BIN>asmcmd
    'perl.exe' is not recognized as an internal or external command,
    operable program or batch file.
    C:\Oracle\dbhome_1\BIN>
  • 10. Re: ASMCMD: perl.exe is not recognized as an internal
    Levi-Pereira Guru
    Currently Being Moderated
    Please just copy and paste it on your command prompt and put output here:

    DON'T CHANGE ANYTHING

    <pre>

    C:

    SET ORACLE_SID=+ASM

    SET ORACLE_HOME=C:\Oracle\grid_home
    SET PATH=C:\Oracle\grid_home\bin;C:\Oracle\grid_home\perl\bin;C:\Oracle\dbhome_1\bin;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Program Files\ArcGIS\ArcSDE\ora11gexe\bin

    CD C:\

    asmcmd.bat
    </pre>
  • 11. Re: ASMCMD: perl.exe is not recognized as an internal
    934646 Newbie
    Currently Being Moderated
    thank you very much Levi Pereira ..

    but what is the difference between the command you typed and the above command?? I don`t see any difference except the system root..but here C: is the system root?


    Thanks
  • 12. Re: ASMCMD: perl.exe is not recognized as an internal
    Levi-Pereira Guru
    Currently Being Moderated
    The difference is that you are using single quotes ( ' ) when setting your env variables. That's the problem. You need use double (only when the path have blank space on folder name) instead single quotes.

    Edited by: Levi Pereira on Oct 11, 2012 6:12 PM

Legend

  • Correct Answers - 10 points
  • Helpful Answers - 5 points