SQWareProduction:sybase:bin:sqwsyb CopyDumpDatabase.ksh

From Wiki_dbSQWare
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Presentation

Script $gvsqw_SybBin/sqwsyb_CopyDumpDatabase.ksh :


Copy Dump file by rsync between two dataservers
You can choose different options:

  • different unix users between the two dataservers
  • parallel degree of copy
  • the file to copy (latest full Dump by default)
  • different directory (by default search in standard directory)


The script can also:

  • run shell script before Load
  • run shell script after Load



Online help

The online help is available for most scripts with the -h option.
Ex: $gvsqw_SybBin/sqwsyb_CopyDumpDatabase.ksh -h
Content of this assistance :

Sourcing sqwsyb_Global.lib v2025.07 SQWareProduction for Sybase (dbSQWare) ... 

Usage: sqwsyb_CopyDumpDatabase.ksh [[-h]] -I <dataserver> -DT <DatabaseTarget> -SS <SourceDataserver> [ -US <SourceHostname> | -Local ] [[+ options]]

DESCRIPTION
   sqwsyb_CopyDumpDatabase.ksh copy of Dump $lvsqw_CopyType 
SUPPORT
   Sybase supported versions: 12.5 <= v <= 16.0

PARAMETERS
     -I  dataserver     : Target dataserver.
     -DT DatabaseTarget : Target database.
     -SS dataserver     : Source dataserver.
     -US hostname       : Source hostname.
OPTIONS
     -h                 : Display the full usage.
     -s                 : Display samples of usage.
     -NoMail            : Deactivate sendmail on error demo-sqwarebox@dbsqware.com (by default, send on error).
     -P  Nb processes   : Max number of processes (by default ).
     -F  file           : Dump file to copy (by default take the latest).
     -HI Nb             : Nb of generations to keep (by default 1).
     -DD date_Dump      : Date of Dump to copy (by default take the latest).
     -RD directory      : Directory holding dump file (by default /$(echo ${HOME}|cut -d/ -f2)/syb_dump/$DSQUERY).
     -RDS directory     : Directory holding source dump file (by default /$(eval echo ~$lvsqw_UserUnixSource|cut -d/ -f2)/syb_dump/$lvsqw_DataserverSource).
     -UUS     username  : Source unix user(by default, same as target).
     -Type    type      : Type of copy full,inc,stb,fstb (by default full).
     -Local             : use local copy (cp) instead of remote copy (rsync).
     -AddMail   email   : Email address to add at 'demo-sqwarebox@dbsqware.com'.
     -SendReport        : Send execution log report.
     -AddFlagName mflag : Search dumps with '.mflag' at end of name.
     -Locale    locale  : Force Locale for help display (fr,en).
     -AGR Nb_sec        : Nb of seconds between two runs (by default 10s).
     -AGE Nb_sec        : Nb of seconds between two checks of end (by default 30s).
     -FRT       code    : Force return code value on error.
     -Exec              : Copy files $lvsqw_CopyType (by default, display generated commands).

Note:
To be sure the aid is accurate, refer directly to the online help script -h option.


Error management

Errors passing arguments

This type of message is generated:

Lack 'dataserver' parameter, Usage: sqwsyb_CopyDumpDatabase.ksh [[-h]] -I <dataserver> -DT <DatabaseTarget> -SS <SourceDataserver> [ -US <SourceHostname> | -Local ] [[+ options]]
For full help : sqwsyb_CopyDumpDatabase.ksh -h

If you are connecting through a terminal, no mail will be sent and you will have more this kind of message:

Not sending mail because you are in connected mode !!!
Lack 'dataserver' parameter

If you are not connected to a terminal, the error message appears and is sent by mail to the address contained in the variable $gvsqw_GlobalMail (See help customize this variable). The subject line will always start by "$gvsqw_MailMsg_sybase : " (See help customize this variable).

Note:
Sending mail can be disabled by the option -NoMail for one execution.


Execution errors

Whether you are or not connected to a terminal, the error message appears and an email containing a summary of treatment errors is sent to the address contained in the variable $gvsqw_Mail_sybase (See help customize this variable). The subject line will always start by "$gvsqw_MailMsg_sybase : " (See help customize this variable).

Note:
Sending mail can be disabled by the option -NoMail for one execution.


Usage examples

Sourcing sqwsyb_Global.lib v2025.07 SQWareProduction for Sybase (dbSQWare) ... 

#Standard help for script sqwsyb_CopyDumpDatabase.ksh:


$gvsqw_SybBin/sqwsyb_CopyDumpDatabase.ksh -h
#Display online help for this script

$gvsqw_SybBin/sqwsyb_CopyDumpDatabase.ksh -Locale en -h
#Display online help for this script with forcing of the 'en' locale (by default locale managed by $gvsqw_Locale)

$gvsqw_SybBin/sqwsyb_CopyDumpDatabase.ksh -s
#Display usage examples for this script

$gvsqw_SybBin/sqwsyb_CopyDumpDatabase.ksh -I $DSQUERY -DT <DbName> -SS $DSQUERY_SOURCE -US <HostnameSource>
#Generate commands but don't execute them !

$gvsqw_SybBin/sqwsyb_CopyDumpDatabase.ksh -I $DSQUERY -DT <DbName> -SS $DSQUERY_SOURCE -US <HostnameSource> -Exec
#Copy the dump file by rsync between two dataservers

$gvsqw_SybBin/sqwsyb_CopyDumpDatabase.ksh -I $DSQUERY -DT <DbName> -SS $DSQUERY_SOURCE -US <HostnameSource> -DD <date> -RD <DirName> -Exec
#copy dump file at date <date> (by default, the latest) to directory target (by default $gvsqw_RootDump)

$gvsqw_SybBin/sqwsyb_CopyDumpDatabase.ksh -I $DSQUERY -DT <DbName> -SS $DSQUERY_SOURCE -US <HostnameSource> -RDS <DirName> -Exec
#Directory to find source dump file (by default $gvsqw_RootDumpSource)

$gvsqw_SybBin/sqwsyb_CopyDumpDatabase.ksh -I $DSQUERY -DT <DbName> -SS $DSQUERY_SOURCE -US <HostnameSource> -UUS <username> -Exec
#Execute the script as source user unix (by default, same as target)

$gvsqw_SybBin/sqwsyb_CopyDumpDatabase.ksh -I $DSQUERY -DT <DbName> -SS $DSQUERY_SOURCE -US <HostnameSource> -AddFlagName -Exec
#Search the dump files whose names ends by '.mflag'

$gvsqw_SybBin/sqwsyb_CopyDumpDatabase.ksh -I $DSQUERY -DT <DbName> -SS $DSQUERY_SOURCE -US <HostnameSource> -F <File> -Exec
#Copy the dump file <File> by rsync between two dataservers

$gvsqw_SybBin/sqwsyb_CopyDumpDatabase.ksh -I $DSQUERY -DT <DbName> -SS $DSQUERY_SOURCE -US <HostnameSource> -AGR 20 -Exec
#Set the waiting time in seconds between two command run, 20s here

$gvsqw_SybBin/sqwsyb_CopyDumpDatabase.ksh -I $DSQUERY -DT <DbName> -SS $DSQUERY_SOURCE -US <HostnameSource> -AGE 30 -Exec
#Set the waiting time in seconds between two end checks, 30s here

$gvsqw_SybBin/sqwsyb_CopyDumpDatabase.ksh -I $DSQUERY -DT <DbName> -SS $DSQUERY_SOURCE -US <HostnameSource> -HI <NumberOfGenerations> -Exec
#change the number of generation to keep

$gvsqw_SybBin/sqwsyb_CopyDumpDatabase.ksh -I $DSQUERY -DT <DbName> -SS $DSQUERY_SOURCE -US <HostnameSource> -Type <TypedeDump> -Local -Exec
#Execute generated commands in local and change dump type (full,inc,finc,stb,fstb)

$gvsqw_SybBin/sqwsyb_CopyDumpDatabase.ksh -I $DSQUERY -DT <DbName> -SS $DSQUERY_SOURCE -US <HostnameSource> -P <NumericValue> -Exec
#Run sqwsyb_CopyDumpDatabase.ksh script with a parallel degree of '<NumericValue>'
#Use by default the variable gvsqw_NbThreadXXX in $gvsqw_SybBin/../etc/sqwsyb_GlobalVar.cfg
#You can change this default on all your environnement if you set this variable
#in configuration file $gvsqw_SybBin/../etc_cust/sqwsyb_GlobalVar.cfg

$gvsqw_SybBin/sqwsyb_CopyDumpDatabase.ksh -I $DSQUERY -DT <DbName> -SS $DSQUERY_SOURCE -US <HostnameSource> -AddMail 'mymail1@mydomaine.com,mymail2@mydomaine.com' -Exec
#Add the mail list to the default address managed by the variable gvsqw_GlobalMail

$gvsqw_SybBin/sqwsyb_CopyDumpDatabase.ksh -I $DSQUERY -DT <DbName> -SS $DSQUERY_SOURCE -US <HostnameSource> -SendReport -Exec
#Send the log by email at the end of the treatment even if there is no error

$gvsqw_SybBin/sqwsyb_CopyDumpDatabase.ksh -I $DSQUERY -DT <DbName> -SS $DSQUERY_SOURCE -US <HostnameSource> -NoMail -Exec
#Disables sending an email on error to $gvsqw_GlobalMail (by default, send on error)

$gvsqw_SybBin/sqwsyb_CopyDumpDatabase.ksh -I $DSQUERY -DT <DbName> -SS $DSQUERY_SOURCE -US <HostnameSource> -FRT <NumericValue> -Exec
#Force return code to '<NumericValue>' on error (if no error, "exit 0!")
#You can also force return code of this script on all your
#environnement if you set the variable: $gvsqw_ForcedReturnCodeScript_sqwsyb_CopyDumpDatabase=<NumericValue>
#in configuration file $gvsqw_SybBin/../etc_cust/sqwsyb_GlobalVar.cfg

Note:
To be sure the examples are accurate, refer directly to the online help script -s option.