Database location

Zach Ahmed

New Member
Hi All,
We have progress 4gl database on Linux. We have a custom tables. Now I need help in finding the location for custom and non-custom tables in Progress database.

thanks
Zach
 

Rob Fitzpatrick

ProgressTalk.com Sponsor
When you say "location", do you mean where a table is located within the database (i.e. its storage area) or the physical location(s) on disk?

Also, I don't know what you mean by "custom" in this context.

A simple way to find table locations is to run a dbanalys or tabanalys report:
Code:
proutil dbname -C dbanalys > dbname.dba
proutil dbname -C tabanalys > dbname.tba

If this is a production database, be cautious about doing this during a busy processing time. It reads the entire database so it can cause a lot of I/O load on the system.

"Location" information can also be obtained programmatically, if you prefer.
 

Zach Ahmed

New Member
Hi Rob,
Correct I mean location of the tables, the storage area or the physical location of the table. Previous DBA have created some tables and linked it to the QAD tables. I can browse these tables, however, I need to know the physical location of these tables as well.

thanks
Zach
 

Rob Fitzpatrick

ProgressTalk.com Sponsor
Programmatically:

Code:
for each dictdb._file no-lock where _file._tbl-type = 't' by _file-name:

  find dictdb._storageobject no-lock where _storageobject._db-recid      = _file._db-recid
                                       and _storageobject._object-number = _file._file-number
                                       and _storageobject._object-type   = 1.

  find dictdb._area no-lock where _area._area-number = _storageobject._area-number.

  display
    _file-name
    _area._area-number
    _area._area-name
   with frame a down.

  for each dictdb._areaextent no-lock of _area with frame a down:
    display _areaextent._extent-path format 'x(60)'.
    down.
  end.
                                                                              
end.

Output:

File-Name                        Area-number Area-name                        Extent-path
──────────────────────────────── ─────────── ──────────────────────────────── ────────────────────
Benefits                                   7 Employee                         .\s2k_7.d1
                                                                              .\s2k_7.d2
BillTo                                    11 Order                            .\s2k_11.d1
                                                                              .\s2k_11.d2
Bin                                        8 Inventory                        .\s2k_8.d1
                                                                              .\s2k_8.d2
Customer                                   9 Cust_Data                        .\s2k_9.d1
                                                                              .\s2k_9.d2

etc...
 

TomBascom

Curmudgeon
Why do you think that you need to know the "physical" location?

(Understanding what you are hoping to do with that information would go a long ways towards providing a potentially more helpful answer.)
 
Top