Icon View Thread

The following is the text of the current message along with any replies.
Messages 1 to 7 of 7 total
Thread EZ-Restore
Thu, Nov 9 2017 11:25 AMPermanent Link

Matthew Jones

It would be quite nice to have an EDB Manager facility to easily restore a backup from and EDBBkp file. Currently you have to create an empty session, add a database, add a store, learn how to create the restore SQL, and then it works. I couldn't find an article on how to do this step by step, so lots of floundering.

What would be good is some sort of Wizard that just asks where to restore things to, and everything else just happens nicely. I guess if you already have a session and want to restore a previous backup that would cut steps, but in my case it was a file from another machine I had to restore.


--

Matthew Jones
Fri, Nov 10 2017 3:07 AMPermanent Link

Roy Lambert

NLH Associates

Team Elevate Team Elevate

Matthew


>What would be good is some sort of Wizard that just asks where to restore things to, and everything else just happens nicely. I guess if you already have a session and want to restore a previous backup that would cut steps, but in my case it was a file from another machine I had to restore.

In my apps I have a form which allows the user to specify tables and location - works well apart from c/s using its machine rather than mine to dump the export unless you specify unc paths Frown

Roy
Fri, Nov 10 2017 4:12 AMPermanent Link

Matthew Jones

Roy Lambert wrote:

> In my apps I have a form which allows the user to specify tables and location

In my server application that uses DBISAM (it's old) I have the same, but that's an end-user facility. This is a different need - a sysadmin who wants to grab a copy of the data and explore. Without much fuss.

--

Matthew Jones
Fri, Nov 10 2017 6:31 AMPermanent Link

Roy Lambert

NLH Associates

Team Elevate Team Elevate

Matthew


>This is a different need - a sysadmin who wants to grab a copy of the data and explore. Without much fuss.

That could be painful Smile

Roy
Fri, Nov 10 2017 2:21 PMPermanent Link

Tim Young [Elevate Software]

Elevate Software, Inc.

Avatar

Email timyoung@elevatesoft.com

Matthew,

<< It would be quite nice to have an EDB Manager facility to easily restore a backup from and EDBBkp file. Currently you have to create an empty session, add a database, add a store, learn how to create the restore SQL, and then it works. I couldn't find an article on how to do this step by step, so lots of floundering.

What would be good is some sort of Wizard that just asks where to restore things to, and everything else just happens nicely. I guess if you already have a session and want to restore a previous backup that would cut steps, but in my case it was a file from another machine I had to restore. >>

There's really no way to automate things like where to store the configuration file, etc. that are required when setting up the sessions, but the rest can be automated with a script very easily.  For example, here's a script that does what you want, but requires a session be set up in advance:

SCRIPT (BackupPath VARCHAR, BackupName VARCHAR, DBName VARCHAR)
BEGIN
  DECLARE DBStmt STATEMENT;
  DECLARE StoreStmt STATEMENT;

  SET STATUS MESSAGE TO 'Starting restore of '+BackupName+' into '+DBName+'...';

  -- Create the database, if necessary

  PREPARE DBStmt FROM 'SELECT * FROM Configuration.Databases WHERE Name='+QUOTEDSTR(DBName);
  EXECUTE DBStmt;

  IF (ROWSAFFECTED(DBStmt)=0) THEN
     EXECUTE IMMEDIATE 'CREATE DATABASE '+QUOTEDSTR(DBName,'"')+
                       ' PATH '+QUOTEDSTR(DBName); -- Uses a relative path with the same name as the DB !!!
  END IF;

  -- Create the store, if necessary

  PREPARE StoreStmt FROM 'SELECT * FROM Configuration.Stores WHERE Name='+
                          QUOTEDSTR('Restore_'+DBName);
  EXECUTE StoreStmt;

  IF (ROWSAFFECTED(StoreStmt)=0) THEN
     EXECUTE IMMEDIATE 'CREATE STORE '+QUOTEDSTR('Restore_'+DBName,'"')+
                       ' AS LOCAL PATH '+QUOTEDSTR(BackupPath);
  END IF;

  -- Execute the restore

  EXECUTE IMMEDIATE 'RESTORE DATABASE '+QUOTEDSTR(DBName,'"')+
                    ' FROM '+QUOTEDSTR(BackupName,'"')+
                    ' IN STORE '+QUOTEDSTR('Restore_'+DBName,'"')+
                    ' INCLUDE CATALOG';

  -- Drop the temporary store

  EXECUTE IMMEDIATE 'DROP STORE '+QUOTEDSTR('Restore_'+DBName,'"');

  SET STATUS MESSAGE TO 'Restore complete';

END

Tim Young
Elevate Software
www.elevatesoft.com
Mon, Nov 13 2017 4:26 AMPermanent Link

Matthew Jones

Tim Young [Elevate Software] wrote:

> There's really no way to automate things like where to store the configuration file, etc. that are required when setting up the sessions, but the rest can be automated with a script very easily.

I'm quite happy for you to ask the user in the wizard where to put things, and any other suitable question, and then run that script for me. 8-)

--

Matthew Jones
Mon, Nov 13 2017 3:28 PMPermanent Link

Tim Young [Elevate Software]

Elevate Software, Inc.

Avatar

Email timyoung@elevatesoft.com

Matthew,

<< I'm quite happy for you to ask the user in the wizard where to put things, and any other suitable question, and then run that script for me. 8-) >>

Yes, and you just created the New/Edit Session dialog again... Wink

Tim Young
Elevate Software
www.elevatesoft.com
Image