TechTeam

New Member
I have Openedge 10.2b database backup test.bak, this need to be restored on Openedge 12.3. What are my best options?
Seems conv1012 dbutil needs database, its not recognizing. Bak file.
 

Rob Fitzpatrick

ProgressTalk.com Sponsor
A v12 installation includes copies of the v10 and v11 dbutils that you need to restore a DB, truncate its BI file, and upgrade it to the next higher major release.

You can restore a v10 database from your backup file using $DLC/bin/102dbutils/102b08_dbutil (Unix) or %DLC%\bin\102dbutils\102b08_dbutil.exe (Windows). From there you can convert it to v12 format.

Here is an example in Linux that starts with a v10 database backup file called sports.pbk. It is assumed that DLC and PATH are already set appropriately for OE v12.3.

Code:
# restore a v10 database from the v10 backup file
$DLC/bin/102dbutils/102b08_dbutil prorest sports sports.pbk

# truncate the bi file with v10
$DLC/bin/102dbutils/102b08_dbutil sports -C truncate bi

# convert the database from v10 to v11 and then from v11 to v12
# answer y to the prompts
$DLC/bin/102dbutils/conv1012 sports
 

TechTeam

New Member
thanks for looking into my question. I got below error when tried to restore 10.2B backup file using dbutil command
proenv>$DLC/bin/102dbutils/102b08_dbutil prorest custdb custdb.bak

Area number mismatch, backup has 0, database has 6
Restored Failed.(1618)
!!! ERROR - Database restore utility Failed !!! (8564)
 

TechTeam

New Member
here is the actual command that i executed from proenv on windows 10:
proenv>c:\Progress\OpenEdge\bin\102dbutils\102b08_dbutil.exe prorest custdb custdb.bak
 

Rob Fitzpatrick

ProgressTalk.com Sponsor
Can you open that backup file in a hex editor? The start of it should look something like this:

Code:
00000000h: 76 6F 6C 75 6D 65 20 31 20 6F 66 20 62 61 63 6B ; volume 1 of back
00000010h: 75 70 20 74 61 6B 65 6E 20 57 65 64 20 46 65 62 ; up taken Wed Feb
00000020h: 20 20 33 20 31 35 3A 31 37 3A 35 36 20 32 30 32 ;   3 15:17:56 202
00000030h: 31 20 66 6F 72 20 4F 50 45 4E 45 44 47 45 20 64 ; 1 for OPENEDGE d
00000040h: 61 74 61 62 61 73 65 3A 00 00 00 00 00 00 00 0A ; atabase:........
00000050h: 44 3A 5C 57 6F 72 6B 5C 64 62 5C 31 32 5C 73 70 ; D:\Work\db\12\sp
00000060h: 5C 73 70 2E 64 62 00 00 00 00 00 00 00 00 00 00 ; \sp.db..........
 

Rob Fitzpatrick

ProgressTalk.com Sponsor
There's your problem.

The file custdb.bak is a database backup from some Unix system, in directory /prod/db/proddb.

You cannot restore cross-platform. This file must be restored with an OpenEdge installation on the same platform as the database from which it was taken.
 

TechTeam

New Member
hmm... thats not good...are there any other options to achieve this? above one is sample database and is just 300 MB but another progress database backup that i need to load is around 180 GB. I know its possible to load the data from Progress OpenEdge to SQL using progress odbc driver- DSN- Linked Server but seeing couple of issues with Linked server approach...1) Column XXXX in table PUB.XXX has value exceeding its max length or precision on many tables 2) some tables have around 100 million records.. So i thought of restore-convert-migrate using Progress Utilities will be easier and faster.
 

Rob Fitzpatrick

ProgressTalk.com Sponsor
So i thought of restore-convert-migrate using Progress Utilities will be easier and faster.
It should be fast, if you have the right licenses. You could see if you can get an eval license for the source platform in question, then follow the instructions I gave you. But that will result in a v12 database on that Unix platform.

In your latest message you have hinted at what you want (getting data from OpenEdge to "SQL"), and it's not what you originally asked about (restoring a v10 backup with OE 12.3).

So let's start at the beginning.
  • What data to you have and in what format(s)?
  • What servers do you have?
  • What OE licenses (platform and version) do you have on each server?
  • What is your desired end state for the data?
Knowing what you want to do will make it more clear which paths are available to get you there, and their respective merits.
 

TechTeam

New Member
Thanks for your time.
My objective it to load the data from Progress backfile to SQL. My plan is to first restore the progress database backup (.bak ) file on OpenEdge 12.3 then run migration utility to migrate the data and schema to SQL server.
  • What data to you have and in what format(s)? I have 2 progress database backups in .BAK format, one is 300 MB and another one is 180 GB
  • What servers do you have? Just the Database server
  • What OE licenses (platform and version) do you have on each server? OpenEdge 12.3 eval with Enterprise RDBMS,Dev Studio,Replication and Mgt. SE on windows 10
  • What is your desired end state for the data? load the data into SQL server
 

TomBascom

Curmudgeon
To me, it sounds like your objective is to load the Progress data into a SQL database.

Imposing a limitation that it must be done by restoring the BAK file seems like an artificial constraint. Is there something that you are not telling us that necessitates that step?

What specific OS is the source data coming from? It is apparently a UNIX variant but is it Linux, AIX, Solaris, HPUX or?

Judging from the hex dump the backup was made recently. Did you make the backup? Or did someone do it for you? How much access do you have to the source server? Are there constraints to working with the source database?

There are 2 backups. Are they both from the same server?
 

TechTeam

New Member
Loading the data from progress backup file to SQL is my objective. I am not aware of other options to achieve this, please let me know other options.
Source system is Unix/Linux.
I did not make the backup, its done by vendor and i do not have access to Source system.
Yes, both the backup files are from same server.
 

TomBascom

Curmudgeon
There are many ways to get data from an OpenEdge database to a SQL database. Restoring a backup on a different platform and using a trial copy of a different version of Progress is one of the most awkward ways to approach it.

Your specific error message is addressed here: Progress KB - prorest reports error 8564 when restoring backup made from different platform.

And the topic of cross-platform backup and restore is addressed here: Progress KB - Can a probkup created on one platform be restored it on a different platform?

To get data from one OS to another you need to dump and re-load. That's a fairly complex topic for someone who is using the Classroom Edition. It isn't where you would start your learning process.

The SQL width problem that you report above is well-known and easily solved. The DBA simply needs to run the "dbtool" utility and select the options to fix those problems: Progress KB - What is DBTOOL?
 

TechTeam

New Member
Thanks for the information and your time. Any pointers regarding the other ways to get data from OpenEdge to SQL?
 

TomBascom

Curmudgeon
ODBC is by far the simplest and I explained how to fix your reported problem with that.

Dumping and reloading is a complex topic. It is far, far beyond what I have time for today and would take substantial cooperation from your vendor.

You could also restore the db on Linux and go from there. But you will need Linux db licenses and software to do that, not Windows.
 
Top