Roads ? - where we're going, we don't need roads ...
Frequently Asked Questions | ORA600
ORA600 content Content RSS
ORA600 blog Blog RSS
ORA600 blog Blog Atom

User login

Frequently Asked Questions


Get started

 

  1. extract the tar file into a directory
    • windows : winrar or winzip can do this
    • unix/linux : tar -xvf DUDE.tar
  2. create a DUDE config file - click here for more information on the config file
  3. place the config file in the same directory as the dude.class file
  4. make sure you have java installed
  5. open a dos/cmd box (windows) or terminal and go to the directory where you've extracted the tar file
  6. startup DUDE
    • java -Xmx256m dude
  7. if the dude.class can not be found set the CLASSPATH env variable
    • on windows  : set CLASSPATH=.;%CLASSPATH%
    • on unix/linux : CLASSPATH=.:$CLASSPATH ; export CLASSPATH
  8. perform a blockscan on SYSTEM
    • DUDE> create blockmap for tablespace SYSTEM ;
    • always put a whitespace before the semi-colon ';'
    • tablespace names are CASE SENSITIVE
  9. now you can dump the dictionary
    • DUDE>dump dictionary ;
  10. and load the dictionary in DUDE
    • DUDE>create dictionary ;
  11. test the dictionary by describing some objects
    • DUDE>show table SCOTT EMP ;
    • (owner and tablenames are always UPPERCASE)
    • DUDE>show users ;
  12. If this all went well, you're ready for the next step
    • create a blockmap for all other tablespaces
    • DUDE>create blockmap for tablespace USERS ;
  13. Once you have created a blockmap for a tablespace, you can unload data from it :
    • DUDE>dump tablespace USERS ;
  14. You can also unload schema's - however you should first create blockmaps of all tablespaces containing schema objects before doing so :
    • DUDE>dump user SCOTT ;

 

troubleshooting

Be sure you are not using gnu java. Typically, when you type 'java' at the prompt and you get the following response :

>java
Usage: gij [OPTION] ... CLASS [ARGS] ...
          to invoke CLASS.main, or
       gij -jar [OPTION] ... JARFILE [ARGS] ...
          to execute a jar file
Try `gij --help' for more information.

then you're using gnu java.

DUDE is not supported with gnu java ( http://gcc.gnu.org/java/ ) - please use a jre or jdk from Sun.

Toggle the ASSM parameter in the tablespace clause.

Most probably you defined your tablespace as ASSM=”true” but it was not created with “automatic segment space management”. (or vice versa)

Some tips : -

  • ASSM was introduced in 9i – so if you’re on 7,8.0 or 8i, always set ASSM=”false” (default)
  • SYSTEM never uses ASSM 
  • It’s not necessary to drop and recreate the blockmap of a tablespace after you've toggled ASSM

 

 

There can be many reasons for this of course.

  • ASCII mode FTP

Many people ftp their datafiles of their server to another machine. Make sure you use binary mode ftp.

In case of ASCII mode you see the following symptoms while blockmapping :

04-07-2007 13:50 : DUDE> Datafile C:\ORCL\system01.dbf : start reading blocks

...

04-07-2007 13:50 : DUDE> Datafile C:\ORCL\system01.dbf : reading blocks done !

04-07-2007 13:50 : DUDE> Block type 0 : 38230 blocks -> 305840Kb -> 54%

04-07-2007 13:50 : DUDE> Block type 1 : 1474 blocks -> 11792Kb -> 2%

04-07-2007 13:50 : DUDE> Block type 2 : 1709 blocks -> 13672Kb -> 2%

04-07-2007 13:50 : DUDE> Block type 3 : 760 blocks -> 6080Kb -> 1%

04-07-2007 13:50 : DUDE> Block type 4 : 912 blocks -> 7296Kb -> 1%

04-07-2007 13:50 : DUDE> Block type 5 : 369 blocks -> 2952Kb -> 1%

04-07-2007 13:50 : DUDE> Block type 6 : 612 blocks -> 4896Kb -> 1%

04-07-2007 13:50 : DUDE> Block type 7 : 352 blocks -> 2816Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 8 : 242 blocks -> 1936Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 9 : 218 blocks -> 1744Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 10 : 267 blocks -> 2136Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 11 : 147 blocks -> 1176Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 12 : 167 blocks -> 1336Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 13 : 383 blocks -> 3064Kb -> 1%

04-07-2007 13:50 : DUDE> Block type 14 : 133 blocks -> 1064Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 15 : 109 blocks -> 872Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 16 : 191 blocks -> 1528Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 17 : 159 blocks -> 1272Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 18 : 131 blocks -> 1048Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 19 : 105 blocks -> 840Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 20 : 204 blocks -> 1632Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 21 : 126 blocks -> 1008Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 22 : 124 blocks -> 992Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 23 : 105 blocks -> 840Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 24 : 117 blocks -> 936Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 25 : 154 blocks -> 1232Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 26 : 94 blocks -> 752Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 27 : 96 blocks -> 768Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 28 : 123 blocks -> 984Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 29 : 103 blocks -> 824Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 30 : 215 blocks -> 1720Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 31 : 126 blocks -> 1008Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 32 : 979 blocks -> 7832Kb -> 1%

04-07-2007 13:50 : DUDE> Block type 33 : 84 blocks -> 672Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 34 : 91 blocks -> 728Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 35 : 68 blocks -> 544Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 36 : 101 blocks -> 808Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 37 : 75 blocks -> 600Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 38 : 73 blocks -> 584Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 39 : 99 blocks -> 792Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 40 : 117 blocks -> 936Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 41 : 117 blocks -> 936Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 42 : 146 blocks -> 1168Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 43 : 116 blocks -> 928Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 44 : 248 blocks -> 1984Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 45 : 218 blocks -> 1744Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 46 : 109 blocks -> 872Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 47 : 328 blocks -> 2624Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 48 : 204 blocks -> 1632Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 49 : 132 blocks -> 1056Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 50 : 129 blocks -> 1032Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 51 : 97 blocks -> 776Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 52 : 102 blocks -> 816Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 53 : 101 blocks -> 808Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 54 : 106 blocks -> 848Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 55 : 96 blocks -> 768Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 56 : 112 blocks -> 896Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 57 : 97 blocks -> 776Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 58 : 70 blocks -> 560Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 59 : 90 blocks -> 720Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 60 : 71 blocks -> 568Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 61 : 111 blocks -> 888Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 62 : 59 blocks -> 472Kb -> 0%

04-07-2007 13:50 : DUDE> Block type 63 : 17874 blocks -> 142992Kb -> 25%

04-07-2007 13:50 : DUDE> Total Blocks scanned = 70677

04-07-2007 13:50 : DUDE> Please wait for output stream to finish ...

04-07-2007 13:50 : DUDE> Done !

What’s wrong with this picture ?

Well, normally you shouldn’t have 64 different blocktypes in a datafile. And you should have a reasonable amount of blocktype 0x06 blocks (which is the data you want). So if you see this while blockmapping … you’ve used ASCII mode ftp on your datafiles.

 

  • Wrong PLATFORM parameter

If you’re lucky you’ll pick this one up while starting up DUDE as the file numbers resolve to something ridicules.

For example, the first datafile of SYSTEM has normally file# =1 (unless it’s an Oracle7 or migrated Oracle7). If this is not the case then maybe you have your PLATFORM set to a wrong value. Remember, it should be the platform where the database ran on – not where DUDE is currently running on. Now, if you continue blockmapping and then run the ‘dump dictionary’ command, a lot of errors will be spawned.

 

 

If DUDE still runs out of memory after setting the heapsize to 2Gb (maxium), then most probably you are dumping large LOB columns.  We define a large LOB as a LOB segment

larger then 1Gb.

If this is the case, you should switch on the parameter HUGE_LOB_SUPPORT.

Setting HUGE_LOB_SUPPORT=”true” in dude.cfg will turn on an on-disk-hashing algorithm for unloading lobs (as opposed to in-memory hashing).

The HUGE_LOB_SUPPORT was introduced after a case where DNA strains stored in LOBs had to be unloaded. The table contained - among others - 2 CLOBs columns, each being over 1Gb large.

 

 

This is a typical java exception when a program runs out of heap space.

Startup DUDE with a higher maximum heap size.

 

Example – startup with heapsize of 512Mb

Java –Xmx512m dude

 

 




Howto's
Check DUDE primer for info

Get Support

Worldwide support contact :
Henrik Bjerknæs Rasmussen
Service & Support Manager
Miracle AS
E-mail :
hra@miracleas.dk
Cell: +45 25 277 110

US support contact:
Daniel Fink
E-mail
daniel.fink@optimaldba.com
Cell : +1 303 808 32 82

Latin America support :
HBtec
E-mail
dude@hbtec.com.br
Cell : +55 47 88497639

South African support :
Kugendran Naidoo
NRG Consulting
E-mail
k@nrgc.co.za
Cell : +27 82 7799275

Benelux only :
Kurt Van Meerbeeck
E-mail
dude@ora600.be
Cell : +32 495 580714