SQWareProduction:postgres:bin:sqwpg RestoreDatabase.ksh

From Wiki_dbSQWare
Revision as of 16:47, 27 May 2022 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_PgBin/sqwpg_RestoreDatabase.ksh :




Online help

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

Sourcing sqwpg_Global.lib v2025.05 SQWareProduction for PostgreSQL (dbSQWare) ... 

Usage: sqwpg_RestoreDatabase.ksh [[-h]] -I instance -DT <DatabaseTarget> [[+ options]]

DESCRIPTION
   sqwpg_RestoreDatabase.ksh restore $lvsqw_CopyType 
SUPPORT
   PostgreSQL supported versions: 9.0 <= v <= 17

PARAMETERS
     -I  instance       : Target instance to restore.
     -DT DatabaseTarget : Target database.
OPTIONS
     -h                 : Display the full usage.
     -s                 : Display samples of usage.
     -F  file           : Dump file to restore (by default take the latest).
     -DS DatabaseSource : Source database (by default same than -DT).
     -DD date_dump      : Dump date to restore (by default take the latest).
     -RD directory      : Directory holding dump file (by default /pgbackup/$PG_SID).
     -Drop              : Drop database before load (by default, Enable).
     -NoMail            : Deactivate sendmail on error demo-sqwarebox@dbsqware.com (by default, send on error).
     -NoDrop            : Do not drop database before load, drop all objects instead (by default, Enable).
     -Create            : Create database before load with instance default character set (by default, Enable).
     -Verbose           : Add --echo-queries option to psql cmd when restore.
     -NoCreate          : No create database before load, must exists (by default, Enable).
     -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).
     -FRT       code    : Force return code value on error.
     -Exec              : Restore (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 'PG_SID' parameter, Usage: sqwpg_RestoreDatabase.ksh [[-h]] -I instance -DT <DatabaseTarget> [[+ options]]
For full help : sqwpg_RestoreDatabase.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 'PG_SID' 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_postgres : " (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_postgres (See help customize this variable). The subject line will always start by "$gvsqw_MailMsg_postgres : " (See help customize this variable).

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


Usage examples

Sourcing sqwpg_Global.lib v2025.05 SQWareProduction for PostgreSQL (dbSQWare) ... 

#Standard help for script sqwpg_RestoreDatabase.ksh:

$gvsqw_PgBin/sqwpg_RestoreDatabase.ksh -h
#Display online help for this script

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

$gvsqw_PgBin/sqwpg_RestoreDatabase.ksh -s
#Display usage examples for this script

$gvsqw_PgBin/sqwpg_RestoreDatabase.ksh -I $PG_SID -DT <DatabaseTarget>
#Generate commands but don't execute them !

$gvsqw_PgBin/sqwpg_RestoreDatabase.ksh -I $PG_SID -DT <DatabaseTarget> -Exec
#Execute Standard restore of target database 

$gvsqw_PgBin/sqwpg_RestoreDatabase.ksh -I $PG_SID -DT <DatabaseTarget> -Verbose Exec
#Restore the target database and registere more detailed comments and start/stop times in logs

$gvsqw_PgBin/sqwpg_RestoreDatabase.ksh -I $PG_SID -DT <DatabaseTarget> -NoDrop -Exec
#Do not drop databases before load (by default locale managed by $gvsqw_DropDb)

$gvsqw_PgBin/sqwpg_RestoreDatabase.ksh -I $PG_SID -DT <DatabaseTarget> -Drop -Create -Exec
#Drop all databases before load, use locale from instance $PG_SID for all create commands (by default locale managed by $gvsqw_CreateDb)

$gvsqw_PgBin/sqwpg_RestoreDatabase.ksh -I $PG_SID -DT <DatabaseTarget> -Drop -NoCreate -Exec
#Drop all databases before load, use locale from pg_dump for all create commands (by default locale managed by $gvsqw_CreateDb)

$gvsqw_PgBin/sqwpg_RestoreDatabase.ksh -I $PG_SID -DT <DatabaseTarget> -DS <DatabaseSource> -After <script> -Exec
#Execute the script <script> after restoring the database (by default, even that -DT)

$gvsqw_PgBin/sqwpg_RestoreDatabase.ksh -I $PG_SID -DT <DatabaseTarget> -DD <date> -Before <script> -Exec 
#Execute the script <script> then restore the database with backup of <date> (by default, take the latest)

$gvsqw_PgBin/sqwpg_RestoreDatabase.ksh -I $PG_SID -DT <DatabaseTarget> -RD <DirName> -Exec
#Restore the target database with the backups contained in the directory <DirName>

$gvsqw_PgBin/sqwpg_RestoreDatabase.ksh -I $PG_SID -DT <DatabaseTarget> -F <File> -Exec
#Restore database with the dump file <File> (by default take the latest)

$gvsqw_PgBin/sqwpg_RestoreDatabase.ksh -I $PG_SID -DT <DatabaseTarget> -AddMail 'mymail1@mydomaine.com,mymail2@mydomaine.com' -Exec
#Add the mail list to the default address managed by $gvsqw_GlobalMail

$gvsqw_PgBin/sqwpg_RestoreDatabase.ksh -I $PG_SID -DT <DatabaseTarget> -SendReport -Exec
#Send the log by email at the end of the treatment even if there is no error

$gvsqw_PgBin/sqwpg_RestoreDatabase.ksh -I $PG_SID -DT <DatabaseTarget> -NoMail -Exec
#Disables sending an email on error to $gvsqw_GlobalMail (by default, send on error)

$gvsqw_PgBin/sqwpg_RestoreDatabase.ksh -I $PG_SID -DT <DatabaseTarget> -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_sqwpg_RestoreDatabase.ksh=<NumericValue>
#in configuration file $gvsqw_PgBin/../etc_cust/sqwmsq_GlobalVar.cfg

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