Kbase P84001: Is it the right database for my OS?
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  16/10/2008 |
|
Status: Unverified
GOAL:
Is it the right database for my OS?
GOAL:
Do I try using a Win32 database under Linux?
FIX:
In order to determine if the database is correct for your OS, you will need to analyze the master block of the database and compare it with a reference database having the same DB Block size (1K, 2K, 4K or 8K); as a reference database you can take for example one of the databases provided with Progress product on that OS, within the PROGRESS software directory: empty.db, empty8.db, sports.db, ...
To analyze the master block of your database, follow these steps.
1. Shut down the database server if it is running.
proshut <dbname>
2. Truncate the before image file.
proutil <dbname> -C truncate bi
3. Use the unsupported tool "dbrpr" and
dump the master block of the database,
this is dbkey 64 if the database has 8K DB Block
or dbkey 32 otherwise.
proutil <dbname> -C dbrpr
You will be presented with a menu called:
DATABASE REPAIR MENU
Select #4, Dump Block.
Enter dbkey: 32
If you get: ** ERROR: Invalid dbKey 32 for area Schema Area
then
Select #4, Dump Block.
Enter dbkey: 64
You either see: File name: 32.dmp
or: File name: 64.dmp
Select Quit.
Within the file 32.dmp or 64.dmp check offsets 16 and 17 which appear in the first column of the second line prefixed by (0010).
These offsets need to match the value of the reference database.
Below is the first lines of the dump from the sports2000 database on LINUX
# BLOCK REPAIR UTILITIES
# DATABASE = /usr2/tse/91D/sports2000.db
# AREA = Schema Area
# DBKEY = 32
# BLOCK NUM = 1
>0000 2000 0000 017F 0100 0000 0000 0900 0000
>0010 5B04 0000 0300 0000 0000 0000 0200 0000
>0020 0000 0000 0000 0000 CB05 0000 0000 0000
Below is the first lines of the dump from the empty8 database on LINUX
# BLOCK REPAIR UTILITIES
# DATABASE = /usr1/tse/91d/empty8.db
# AREA = Schema Area
# DBKEY = 64
# BLOCK NUM = 1
>0000 4000 0000 017F 0100 0000 0000 0700 0000
>0010 5B20 0000 0300 0000 0000 0000 0200 0000
>0020 0000 0000 0000 0000 0600 0000 0000 0000