• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: [OT] Restoring a FrontBase DB
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [OT] Restoring a FrontBase DB


  • Subject: Re: [OT] Restoring a FrontBase DB
  • From: email@hidden
  • Date: Tue, 28 Sep 2010 10:28:33 -0400

I think you must dump in ascii, then restore.

 
WRITE ALL OUTPUT(DIR='$2/$1', CONTENT=TRUE); 
 
Attached are 2 scripts, which may get you close.
 
One dumps a DB, the other will restore from the dump.
 
 
 
 
--

  email@hidden

Attachment: backupDBviadump.sh
Description: Binary data

#!/usr/bin/perl -w
#!+ restorebackupDBviadump.pl
#
# FUNCTIONAL AREA OR ABSTRACT:
# 	Restores a Frontbase DB from an ascii dump. T
#
# ENVIRONMENT/PROJECT:
# 	nucptdb
#
# PATH:
# /usr/local/etc/
#
# LAUNCH METHOD:
# /usr/local/etc/restorebackupDBviadump.pl -c(=create the DB) -f /path/to/schema.sql
#
# OUTPUT:
# db restored
#
#
# MODIFIED BY:
# VERS	DATE		AUTH.	REASON
# 1.0	10/1/09		GSB	Original
#
#
# THIS SOFTWARE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR
# IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
# PURPOSE.
# !-*/
$dbglev =
  1; # global debug level, select the debug level of info, more at higher levels

# global debuglevel -- level of info to log, 0=none, 1=some, 2=more, 3=most

# !++___________________________  Function lines _______________________________*/
#
sub dbg    # - debug print
{

	# 				/*INPUT PARAMETERS:
	my ($plev) = $_[0];    # print level, rest is printed if dbglev>=plev

	# 				FUNCTIONAL DESCRIPTION:
	# 	prints the rest of @_, if dbglev>=plev, dbg(2," call x",$x);
	# 	gets printed if global dbglev is 2 or more.
	# !--*/
	if ( $plev <= $dbglev ) {

		#shift @_;
		print @_, "\n";
	}
}    #/*eofunc*/

use Getopt::Std;    # for line options
our ($opt_f);
getopts('cf:');
dbg( 2, "input file spec $opt_f" );
defined $opt_f or die "Bad input file specification: use -f  !\n/usr/local/etc/restorebackupDBviadump.pl -c(=create the DB) -f /path/to/schema.sql\n";
( $opt_f =~ m|^/.*/schema.sql| )
  or die
"Bad input file specification: $opt_f \nMust be complete file name of schema.sql file\n";
my $iis = `whoami`;
chomp $iis;
( $iis eq "root" ) or die "\n$iis, you must be root! try again!\n";

# rework $opt_f
my @dirloc = split "/", $opt_f;
dbg( 2, @dirloc );
my $dbname = $dirloc[ @dirloc - 2 ];
my $schema = $dirloc[ @dirloc - 1 ];
pop @dirloc;
pop @dirloc;

#unshift push pop
my $newdirloc = join "/", @dirloc;
dbg( 2, "new dirloc = $newdirloc, dbname is $dbname, and schema at $schema" );

open( INPUT, "<$opt_f" ) or die "Can't open $opt_f for reading! \n";
open( OUTPUT, ">$newdirloc/$dbname/newschema.sql" )
  or die "Can't open file $newdirloc/$dbname/newschema.sql";

# SETUP get a temp file to hold output
use IO::File;
use POSIX qw(tmpnam);

my $time = scalar localtime;
print "\nRestore Frontbase DB $dbname from $opt_f \n$time\n";
while ( $line = <INPUT> ) {
	if ( $line =~ m|FILE = '([^']*)/$dbname/[^']*'| ) {
		print $1, "\n";
		print $line;
		$line =~ s|$1|$newdirloc|;
		print $line;

	}
	print OUTPUT $line;
}
close OUTPUT;

# add CREATE DATABASE?
my $createdatabase = "" ;
if(defined $opt_c && $opt_c == 1){
	print "Will create the database\n";
	$createdatabase = "CREATE DATABASE $dbname;\n" ;
}

my $command = "echo Running script, $newdirloc/$dbname/newschema.sql;
/Library/Frontbase/bin/sql92 <<eocommand
$createdatabase CONNECT TO $dbname user _system ;
SCRIPT $newdirloc/$dbname/newschema.sql;
EXIT
eocommand
";
print "The script will be:\n$command\n";


system $command ;

exit;
 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:

This email sent to email@hidden

  • Follow-Ups:
    • Re: [OT] Restoring a FrontBase DB
      • From: Mike Schrag <email@hidden>
  • Prev by Date: Re: [OT] Restoring a FrontBase DB
  • Next by Date: Re: [OT] Restoring a FrontBase DB
  • Previous by thread: Re: [OT] Restoring a FrontBase DB
  • Next by thread: Re: [OT] Restoring a FrontBase DB
  • Index(es):
    • Date
    • Thread