SQWareProduction:mysql:bin:sqwmys CopyMariaBackup.ksh

From Wiki_dbSQWare
Revision as of 18:54, 27 September 2023 by BatchUser (talk | contribs) (Updated by BatchUser)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
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_MysBin/sqwmys_CopyMariaBackup.ksh :


copy of MariaBackup \$lvsqw_CopyType

  • copy choosed backup that can be:


- LastFull => copy the last full backup
- LastInc => copy the last incremental backup
- <tag> => copy this backup tag (part of file name)



Online help

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

Sourcing sqwmys_Global.lib v2025.07 SQWareProduction for MySQL (dbSQWare) ... 

Usage: sqwmys_CopyMariaBackup.ksh [[-h]] -I instance -T <type> -IS <SourceInstance> -US <SourceHostname> [[+ options]]

DESCRIPTION
   sqwmys_CopyMariaBackup.ksh copy of MariaBackup $lvsqw_CopyType 
SUPPORT
   MariaDB supported versions: 5.5 <= v <= 11.8

PARAMETERS
     -I  instance       : Target instance to copy.
     -T  type           : Which backup to copy:
                           - LastFull => copy the last full backup
                           - LastInc  => copy the last incremental backup
                           - <tag>    => copy this backup tag (part of file name)
     [
     -GetInf  u@h:path  : user@host:path to retrieve MariaBackup from distant source.
     OR
     -PutInf  u@h:path  : user@host:path to push MariaBackup to distant host.
     OR
     -IS instance       : Source instance.
     -US hostname       : Source hostname.
     ]
OPTIONS
     -h                 : Display the full usage.
     -s                 : Display samples of usage.
     -P  Nb processes   : Max number of processes (by default 2).
     -NoMail            : Deactivate sendmail on error demo-sqwarebox@dbsqware.com (by default, send on error).
     -F  file           : MariaBackup to copy (by default take the latest).
     -HI Nb             : Nb of generations to keep, only for get option (by default 1).
     -RD  directory     : Local directory to get or put MariaBackup dir (by default $HOME/MariaBackup/$MYSQL_SID).
     -RDS directory     : Distant directory to get or put MariaBackup dir (by default $HOME/MariaBackup/$lvsqw_InstanceSource).
     -UUS     username  : Source unix user(by default, same as target).
     -Before scriptname : Script to execute before copy MariaBackup.
     -After  scriptname : Script to execute after copy MariaBackup.
     -AddMail   email   : Email address to add at 'demo-sqwarebox@dbsqware.com'.
     -SendReport        : Send execution log report.
     -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).
     -Exec              : Copy dir $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 'GetInf' or 'PutInf' or 'SourceInstance+SourceHostname' parameter, Usage: sqwmys_CopyMariaBackup.ksh [[-h]] -I instance -IS <SourceInstance> -US <SourceHostname> [[+ options]]
For full help : sqwmys_CopyMariaBackup.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 'GetInf' or 'PutInf' or 'SourceInstance+SourceHostname' 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_mysql : " (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_mysql (See help customize this variable). The subject line will always start by "$gvsqw_MailMsg_mysql : " (See help customize this variable).

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


Usage examples

Sourcing sqwmys_Global.lib v2025.07 SQWareProduction for MySQL (dbSQWare) ... 

#Standard help for script sqwmys_CopyMariaBackup.ksh:

$gvsqw_MysBin/sqwmys_CopyMariaBackup.ksh -h
#Display online help for this script

$gvsqw_MysBin/sqwmys_CopyMariaBackup.ksh -Locale en -h
#Display online help for this script with forcing of the 'en' locale (by default l ocale managed by the variable gvsqw_Locale)

$gvsqw_MysBin/sqwmys_CopyMariaBackup.ksh -s
#Display usage examples for this script

$gvsqw_MysBin/sqwmys_CopyMariaBackup.ksh -I $MYSQL_SID -T <type> -IS <SourceInstance> -US <SourceHostname>
#Generate commands but don't execute them !

$gvsqw_MysBin/sqwmys_CopyMariaBackup.ksh -I $MYSQL_SID -T <type> -GetInf <user@host:path>
#Generate commands but don't execute them !

$gvsqw_MysBin/sqwmys_CopyMariaBackup.ksh -I $MYSQL_SID -T <type> -PutInf <user@host:path>
#Generate commands but don't execute them !

$gvsqw_MysBin/sqwmys_CopyMariaBackup.ksh -I $MYSQL_SID -T <type> -IS <SourceInstance> -US <SourceHostname> -Exec
#Copy of MariaBackup \$lvsqw_CopyType

$gvsqw_MysBin/sqwmys_CopyMariaBackup.ksh -I $MYSQL_SID -T <type> -IS <SourceInstance> -US <SourceHostname> -F <file> -Exec
#MariaBackup to copy (by default take the latest)

$gvsqw_MysBin/sqwmys_CopyMariaBackup.ksh -I $MYSQL_SID -T <type> -IS <SourceInstance> -US <SourceHostname> -AGR 20 -Exec
#Set the waiting time in seconds between two command run, 20s here

$gvsqw_MysBin/sqwmys_CopyMariaBackup.ksh -I $MYSQL_SID -T <type> -IS <SourceInstance> -US <SourceHostname> -AGE 30 -Exec
#Set the waiting time in seconds between two end checks, 30s here

$gvsqw_MysBin/sqwmys_CopyMariaBackup.ksh -I $MYSQL_SID -T <type> -IS <SourceInstance> -US <SourceHostname> -RD <DirName> -Exec
#Local directory <DirName> to get or put MariaBackup

$gvsqw_MysBin/sqwmys_CopyMariaBackup.ksh -I $MYSQL_SID -T <type> -IS <SourceInstance> -US <SourceHostname> -RDS <DirName> -Exec
#Distant directory <DirName> to get or put MariaBackup

$gvsqw_MysBin/sqwmys_CopyMariaBackup.ksh -I $MYSQL_SID -T <type> -IS <SourceInstance> -US <SourceHostname> -UUS 'dba_42'-Exec
#Source unix user here 'dba_42' (by default, same as target)

$gvsqw_MysBin/sqwmys_CopyMariaBackup.ksh -I $MYSQL_SID -T <type> -IS <SourceInstance> -US <SourceHostname> -HI <NumberOfGenerations> -Exec
#Changes the number of backup generations to keep

$gvsqw_MysBin/sqwmys_CopyMariaBackup.ksh -I $MYSQL_SID -T <type> -IS <SourceInstance> -US <SourceHostname> -P <NumericValue> -Exec
#Run sqwmys_CopyMariaBackup.ksh script with a parallel degree of '<NumericValue>'
#Use by default the variable gvsqw_NbThreadXXX in $gvsqw_MysBin/../etc/sqwmys_GlobalVar.cfg
#You can change this default on all your environnement if you set this variable
#in configuration file $gvsqw_MysBin/../etc_cust/sqwmys_GlobalVar.cfg

$gvsqw_MysBin/sqwmys_CopyMariaBackup.ksh -I $MYSQL_SID -T <type> -GetInf <user@host:path> -Before <script> -Exec
#Execute the script <script> then do "Copy get"

$gvsqw_MysBin/sqwmys_CopyMariaBackup.ksh -I $MYSQL_SID -T <type> -GetInf <user@host:path> -After $Home/scripts/XXX.ksh -Exec
#Copy get at <Host>:<Path> with <user> then execute the script $Home/scripts/XXX.ksh

$gvsqw_MysBin/sqwmys_CopyMariaBackup.ksh -I $MYSQL_SID -T <type> -IS <InstanceSource> -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_MysBin/sqwmys_CopyMariaBackup.ksh -I $MYSQL_SID -T <type> -IS <InstanceSource> -US <HostnameSource> -SendReport -Exec
#Send the log by email at the end of the treatment even if there is no error

$gvsqw_MysBin/sqwmys_CopyMariaBackup.ksh -I $MYSQL_SID -T <type> -IS <InstanceSource> -US <HostnameSource> -NoMail -Exec
#Disables sending an email on error to $gvsqw_GlobalMail (by default, send on error)

$gvsqw_MysBin/sqwmys_CopyMariaBackup.ksh -I $MYSQL_SID -T <type> -IS <InstanceSource> -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_sqwmys_CopyMariaBackup=<NumericValue>
#in configuration file $gvsqw_MysBin/../etc_cust/sqwmys_GlobalVar.cfg
Note:
To be sure the examples are accurate, refer directly to the online help script -s option.