Search code examples
sqllinuxprogress-4glopenedgeprogress-db

Progress dbtool errors


I am trying to run the Progress dbtool on our database but it is not working. I get to the proenv prompt as suggested by the documentation that I have. When I execute the dbtool against our database "access" (that's the name of our progress database)

Here are my steps:

[root@server ~]# cd /usr/dlc10.2B/bin
[root@server bin]# ./proenv

      DLC: /usr/dlc10.2B
   WRKDIR: /usr/wrk
      OEM: /usr/oemgmt
OEMWRKDIR: /usr/wrk_oemgmt

Inserting /usr/dlc10.2B/bin to beginning of path and
setting the current directory to /usr/wrk.

OpenEdge Release 10.2B04 as of Thu Mar  3 19:14:26 EST 2011

proenv>dbtool access

/usr/dlc10.2B/bin/dbtool: line 2: DLC:: command not found
/usr/dlc10.2B/bin/dbtool: line 3: WRKDIR:: command not found
/usr/dlc10.2B/bin/dbtool: line 4: OEM:: command not found
/usr/dlc10.2B/bin/dbtool: line 5: OEMWRKDIR:: command not found
/usr/dlc10.2B/bin/dbtool: line 7: Inserting: command not found
/usr/dlc10.2B/bin/dbtool: line 8: setting: command not found
/usr/dlc10.2B/bin/dbtool: line 10: OpenEdge: command not found
/usr/dlc10.2B/bin/dbtool: line 12:
/usr/dlc10.2B/bin/dbtool: line 12: root@server:/usr/wrk
/usr/dlc10.2B/bin/dbtool: line 12: root@server:/usr/wrk: No such file or directory

Solution

  • What shell are you using?

    Have you edited proenv?

    proenv is a shell script. The errors that you report are simple shell variable assignments failing -- as if you are executing proenv with something other than "sh". The first few lines of proenv should be:

    #!/bin/sh
    # proenv
    
        DLC="/usr/dlc"
        WRKDIR="/usr/wrk"
        OEM="/usr/oemgmt"
        OEMWRKDIR="/usr/wrk_oemgmt"
        PATH=$DLC/bin:$DLC/perl/bin:$PATH
        PS1="proenv>"
       export DLC WRKDIR PATH PS1 OEM OEMWRKDIR OEE OEEWRKDIR
    
       #cd to the work directory
       cd $WRKDIR
    
    

    For that to fail you are either running a broken shell or someone has messed with the script.

    By the way -- you should not need to be root to run dbtool. And you do not need to have your current directory in /usr/dlc10.2B/bin when you run proenv.

    Actually dbtool should run just fine from a plain old command prompt so long as DLC is defined and $DLC/bin is in your PATH.