FAQ:NewInstancePostgreSQL: Difference between revisions

From Wiki_dbSQWare
Jump to navigation Jump to search
m Reverted edits by Ymauger (talk) to last revision by Dtavernier
Tag: Rollback
m Blanked the page
Tag: Blanking
Line 1: Line 1:
==Generalties==
<br>
{{Warning | Before anything, don't go further if you don't have read the first section [[General:Concepts|"dbSQWare Concepts "]] !}}


In this chapter, we will consider that SQWareCentral has been installed on dbsqware@sqwarebox.
===Limits of this section===
This chapter only deals with adding a new instance to a base that is already configured and functional.<br>
Use the portions that apply to your environment, and choose either the automatic or manual method as desired<br>
===General operating procedure for integrating a new MySQL/MariaDB instance===
There will potentially be one or two connection cases to handle.
* "local" for Unix machines (or those with Cygwin) where you'll be running MySQL on the machine hosting the instance (SSH connection from dbsqware@sqwarebox).
* "remote" for cases where you don't have SSH access to the machine (Windows, RDS, etc.).
Classic steps:
*Setting up the environment
*Checking system prerequisites for the "local" part (bash + rsync)
*Manual tests
*Deployment of the instance
You will see that these steps can be handled one by one or in batches!
==Integration of an MySQL/MariaDBinstance==
===Setting up the environment===
====General====
=====Explanation of "DbAlias" (the unique dbSQWare key)=====
The dbSQWare key must be unique and consistent with what has been configured for the gvsqw_DbAlias variable in sqwmys_GlobalVar.cfg!<br/>
We'll use a variable, MYSQL_SID, which has no value for MySQL/MariaDB but will identify the instance in dbSQWare.<br/>
By convention, we often use MYS "_" APPLI "_" ENV.<br/>
Example: MYS_THISAPPS_PRD or MYS_THISOTHERAPPS_DEV ...<br/>
But nothing is imposed; you choose what "suits you"! You just need to set the MYSQL_SID variable in the MySQL account profile with the desired value.<br/>
=====Explanation of statuses=====
*An "open" instance will be handled in "local" mode, meaning we will connect with mysql locally on the machine hosting the instance (ssh access from dbsqware@sqwarebox), status "ON".<br/>
*An instance where we don’t have local unix access will be managed in "remote" mode (like Windows, RDS, ...), status "DIST".<br/>
*The "OFF" status makes the instance "disappear" from the web view.<br/>
*The "NEW" status is used as an intermediate status between the beginning and the end of setting up a new instance.<br/>
*All other statuses allow the instance to be displayed in the repository (especially "KEEP") but will not be taken into account by the automatic processes.<br/>
<br/>
Resume of statuses :<br/>
{| align="center" {{Prettytable}}
|-
| '''Status'''
| '''Description'''
|-
| ON
| locale under Unix (the most common)
|-
| DIST
| remote-only management
|-
| KEEP
| temporary status, during maintenance for example or before complete deletion
|-
| NEW
| temporary status, during configuration
|-
| OFF
| visual removal of the instance (without deleting its configuration)
|-
| XXX
| not supported...
|}
====Instance declaration in SQWareRepository with SQWareWeb====
We will declare the new instance from the SQWareWeb administration interface.<br/>
[[File:Admin dbSQWare.png||admin|Admin dbSQWare]]
<br/>
Declare the new instance with the status "NEW" (Add or Duplicate).<br/>
[[File:AjoutInstance.png||admin|Ajout d'une instance]]
[[File:DuplicateInstance.png||admin|Ajout par duplication d'une instance]]<br/>
[[File:DeclarationInstanceMySQL.png|admin|Add a new instance by duplicate an other one.]]
Explanation of the fields :<br/>
{| align="center" {{Prettytable}}
|-
| '''Fields'''
| '''Description'''
|-
| Db Alias
| Unique key that identifies the instance in dbSQWare (no value for MySQL/MariaDB).
|-
| Dbms Name
| Type of SGBD
|-
| Virtual Host
| Virtual Host (same as Host if not clustered)
.
|-
| Host Name
| Hostname of the instance
|-
| User Name
| User associated with the instance
|-
| Port
| Listening port of the instance.
|-
| Comments
| A brief description of what the instance hosts
|-
| Status
| Instance status (see above for explanations).
|-
| Contact
| A contact if needed
|-
| Environnement
| Instance environment (PRD, PPR, REC, DEV, TST, ...)
|-
| Client
| Used only for filtering (enter a client name and/or department and/or service...)
|-
| GlobalHost
| Free field in which the hypervisor host is often entered, for example.
|-
| Custom1
| Free field 1
|-
| Custom2
| Free field 2
|}
=====Regenerate the reference files of SQWareCentral.=====
Type the following command which will generate the reference files:
<syntaxhighlight lang="sh" line>
# From : dbsqware@sqwarebox
gen_all
</syntaxhighlight>
===Specific procedure for the "local" part (status ON)===
/!\ Only instances that will be in the "ON" status !<br/>
====Verification of system prerequisites for the "local" part (bash + rsync)====
Since SQWareProduction is mainly written in bash shell and synchronized from SQWareCentral using rsync, we therefore need "bash" and "rsync" to be installed !
=====Verification=====
Adapt to your username and machine name.<br>
<br>
bash:
<syntaxhighlight lang="sh" line>
# From : mysql@my_mysql_host
type bash
#or
which bash
</syntaxhighlight>
rsync:
<syntaxhighlight lang="sh" line>
# From : mysql@my_mysql_host
type rsync
#or
which rsync
</syntaxhighlight>
=====Installation=====
Adapt to your machine type (use sudo if you are not root).<br/>
<br>
RedHat / CentOS / ... :
<syntaxhighlight lang="sh" line># From : root@my_mysql_host
yum install -y bash rsync
#or
dnf install -y bash rsync</syntaxhighlight>
Ubuntu / Debian / ... :
<syntaxhighlight lang="sh" line>
# From : root@my_mysql_host
apt install -y bash rsync
</syntaxhighlight>
====Unix user modification====
Adapt to your machine type (sudo if you're not root).
Modify the homedir (not mandatory, but avoids ending up in /var/lib/mysql):
<syntaxhighlight lang="sh" line>
# From : root@my_mysql_host
mkdir -p /home/mysql
chown mysql:mysql /home/mysql
chmod 750 /home/mysql
</syntaxhighlight>
<syntaxhighlight lang="sh" line>
##Stop instance (service mysql/mariadb stop -- or -- systemctl stop mysql/mariadb)
usermod -d /home/mysql mysql -s /bin/bash
##Start instance (service mysql/mariadb start -- or -- systemctl start mysql/mariadb)
#Or directly vi /etc/passwd !
example : mysql:x:1004:989::/home/mysql:/bin/bash
</syntaxhighlight>
Assign a passwd to the mysql user (otherwise the key exchange connection will not work!):<syntaxhighlight lang="sh" line>
# From : root@my_mysql_host
passwd mysql
</syntaxhighlight>
====Creating a specific MySQL/MariaDB account for dbSQWare (for local connection)====
Adapt to your needs depending on what you want to do...<br/>
Example for local connection :
<syntaxhighlight lang="sql" line>
grant all privileges on *.* to 'DBSDBA'@'localhost' IDENTIFIED BY 'DoNotSetThisPassword!' with grant option;
/* or */
create user 'DBSDBA'@'localhost' IDENTIFIED BY 'DoNotSetThisPassword!';
grant all privileges on *.* to 'DBSDBA'@'localhost' with grant option;
</syntaxhighlight>
<syntaxhighlight lang="sh" line>
# From : mysql@my_mysql_host
#Then, create the .my.cnf file to allow connection without using passwd
echo "[client]
password = DoNotSetThisPassword!
" >> $HOME/.my.cnf
chmod 600 $HOME/.my.cnf
</syntaxhighlight>
====Deployment of SSH key(s) from SQWareCentral to the target machine(s)====
There are two ways to proceed:
*An automatic one (from dbsqware@sqwarebox, but it requires you to know the password of the mysql Unix account)
*A manual one that you apply on each mysql Unix account
/!\ The password of your mysql Unix account must have been initialized, otherwise key-based authentication will not work!
=====Deployment of SSH key(s): batch method=====
<syntaxhighlight lang="sh" line># From : dbsqware@sqwarebox
menu_mys GenDeplSshKeys_SQWareCentral GenLstInstanceNew
</syntaxhighlight>
Verify that this is indeed the list you want to deploy, then choose option 1 ...<br/>
=> Enter the Unix password when prompted !
=====Deployment of SSH key(s): manual method=====
<syntaxhighlight lang="sh" line># From : mysql@my_mysql_host
if [ ! -r $HOME/.ssh/id_rsa ]
then
ssh-keygen -t rsa -N ''''''' -f $HOME/.ssh/id_rsa
fi
chmod go-w $HOME
echo "ssh-rsa AAAAB......XSPpdV11 dbsqware@sqwarebox" >>$HOME/.ssh/authorized_keys
chmod 700 $HOME/.ssh
chmod 600 $HOME/.ssh/authorized_keys
</syntaxhighlight>
=> Put the correct key in the "echo" (the one from dbsqware@sqwarebox)
====SSH connection test from SQWareCentral====
<syntaxhighlight lang="sh" line># From : dbsqware@sqwarebox
menu_mys TestSshConnection GenLstInstanceNew
</syntaxhighlight>
====Test of prerequisites on the target host (bash+rsync) via SSH from SQWareCentral====
<syntaxhighlight lang="sh" line># From : dbsqware@sqwarebox
menu_mys TestSysPrerequisites GenLstInstanceNew
</syntaxhighlight>
====Deployment of SQWareProduction====
<syntaxhighlight lang="sh" line># From : dbsqware@sqwarebox
#If deployment on "unique" user
menu_mys DeplScripts GenLstUniqueNew
#If deployment on "instance" user, the one specified in SQWareRepository
menu_mys DeplScripts GenLstInstanceNew
</syntaxhighlight>
For "unique" user, it is the "standard" user. By default, we set it to "mysql", and it can be modified in SQWareCentral.
====Adding the dbSQWare environment to ~/.profile or ~/.bash_profile====
Once again, there are two ways to proceed:
*An automatic one (from dbsqware@sqwarebox)
*A manual one that you apply on each mysql Unix account
=====Adding the dbSQWare environment: batch method=====
<syntaxhighlight lang="sh" line># From : dbsqware@sqwarebox
menu_mys AdddbSQWareProfile GenLstInstanceNew
</syntaxhighlight>
Check that this is indeed the list you want to deploy, then choose 1 ...<br/>
=> In ~/.profile or ~/.bash_profile, change the following variable with the appropriate value: gvsqw_Env='XXX'
=====Adding the dbSQWare environment: manual method=====
Add the following lines to ~/.profile or ~/.bash_profile
<syntaxhighlight lang="sh" line># From : mysql@my_mysql_host
#dbSQWare
export gvsqw_MysBin=$HOME/SQWareProduction/mysql/bin
export gvsqw_Env='PRD'
lvsqw_IsTerminal=$(tty 2>&1 >/dev/null;echo $?)
if [ "$lvsqw_IsTerminal" = "0" ] && [ -r $gvsqw_MysBin/../etc/.profile_confort ]
then
. $gvsqw_MysBin/../etc/.profile_confort
fi
</syntaxhighlight>
=====Adding the variable MYSQL_SID=====
Add the MYSQL_SID variable in the ~/.profile or ~/.bash_profile
<syntaxhighlight lang="sh" line>
# From : mysql@my_mysql_host
export MYSQL_SID=MYS_INST_PRD
</syntaxhighlight>
====Test sendmail (Non mandatory)====
<syntaxhighlight lang="sh" line># From : dbsqware@sqwarebox
menu_mys TestSendmail GenLstInstanceNew
</syntaxhighlight>
===="Manual" connection test to the MySQL/MariaDB instance ("local" connection)====
/!\ Only instances that will be in "ON" status!
<syntaxhighlight lang="sh" line># From : dbsqware@sqwarebox
menu_mys TestInstConnectionOnNoMail GenLstInstanceNew
</syntaxhighlight>
===Specific Procedure for the "Remote" Port (DIST Status)===
====Creating a Specific MySQL/MariaDB Account (dbSQWare) (For Remote Connections)====
Example for a "Remote" Connection
<syntaxhighlight lang="sql" line>
grant all privileges on *.* to 'DBSDBA'@'%' IDENTIFIED BY 'DoNotSetThisPassword!' with grant option;
/* or */
create user 'DBSDBA'@'%' IDENTIFIED BY 'DoNotSetThisPassword!';
grant all privileges on *.* to 'DBSDBA'@'%' with grant option;
flush privileges;
</syntaxhighlight>
You can enter any username and password you like!<br/>
This account must be registered under the Unix account mysql@sqwarebox...<br/>
<syntaxhighlight lang="sh" line>
vi /home/mysql/.passwd_mysql
DbAlias;UserName;Passwd;HostName;Port
MYS_INST_PRD;DBSDBA;DoNotSetThisPassword!;srvdbmys01;3306
</syntaxhighlight>
====Test "remote" connection====
<syntaxhighlight lang="sh" line>
# From : dbsqware@sqwarebox
menu_mys TestInstConnectionDistNoMail GenLstInstanceNew
</syntaxhighlight>
==Starting the Instance==
===Generating the Default SQWareProduction Configuration===
/!\ Only instances that will be in "ON" status!
<syntaxhighlight lang="sh" line>
# From : dbsqware@sqwarebox
menu_mys GenDefConf_SQWareProduction GenLstInstanceNew
</syntaxhighlight>
===Update SQWare Repository===
In the dbSQWare repository via the administration console, update the status of the new MySQL/MariaDB instance (currently NEW) to the desired value (ON, DIST).
===Testing the "Recovery" of Indicators===
At this point, you can test the recovery of missing indicators (in principle, only the instances you have just integrated!).
<syntaxhighlight lang="sh" line>
# From : dbsqware@sqwarebox
## for those with status "ON"
repind_mys
## for those with status "DIST"
repind_mys_dist
</syntaxhighlight>
===Operation (stats, backups, etc.) for "ON" instances===
====Generating SQWareProduction configs====
If you followed the instance insertion procedure, this part is already done by step "menu_mys GenDefConf_SQWareProduction GenLstInstanceNew".<br/>
You can check with the next chapter.<br/>
<br/>
Connect to the machine that has the “MySQL/MariaDB” instance and type the following commands: <br/>
<syntaxhighlight lang="sh" line>
# From dbsqware@vmyswarebox
c MYS_INST_PRD
</syntaxhighlight>
<syntaxhighlight lang="sh" line>
#Source de l'env si multi-instance (from mysql@my_mysql_host)
e MYS_INST_PRD
</syntaxhighlight>
<syntaxhighlight lang="sh" line>
too
./sqwmys_GenerateCreateInstance.ksh -dbsOnly
</syntaxhighlight>
Vérifier que ce qui est proposé est bon et tapez « y » si c’est le cas.<br/>
A ce moment, vous avez généré les fichiers de configuration par défaut de SQWareProduction.
====Explanations====
The previous steps created some default files. ($HOME/MYS_INST_PRD/sqwConfig)
<syntaxhighlight lang="sh" line>
#Enter the instance name
e MYS_INST_PRD
cfg
cat sqwmys_Jobs.cfg
</syntaxhighlight>
<syntaxhighlight lang="sh" line>
#############################################
#IndicDba: Gather DBAs indicators
IndicDba:$gvsqw_MysBin/sqwmys_GatherIndicators.ksh -I MYS_INST_PRD
#Dump: backup all databases with mysqlDump
Dump:$gvsqw_MysBin/sqwmys_DumpAllDatabases.ksh -I MYS_INST_PRD -Exec
#Optimize : optimize tables for all databases
Optimize:$gvsqw_MysBin/sqwmys_OptimizeAllDatabases.ksh -I MYS_INST_PRD -Exec
#Analyse : analyze tables for all databases
Analyze:$gvsqw_MysBin/sqwmys_AnalyzeAllDatabases.ksh -I MYS_INST_PRD -Exec
#XtraFull: Backup full with XtraBackup
XtraFull:$gvsqw_MysBin/sqwmys_XtraBackup.ksh -I MYS_INST_PRD -Type full -Exec
#XtraInc: Backup incremental with XtraBackup
XtraInc:$gvsqw_MysBin/sqwmys_XtraBackup.ksh -I MYS_INST_PRD -Type inc -Exec
#MariaFull: Backup full with MariaBackup
MariaFull:$gvsqw_MysBin/sqwmys_MariaBackup.ksh -I MYS_INST_PRD -Type full -Exec
#MariaInc: Backup incremental with MariaBackup
MariaInc:$gvsqw_MysBin/sqwmys_MariaBackup.ksh -I MYS_INST_PRD -Type inc -Exec
#PurgeAlert: Rotate error log
PurgeAlert:$gvsqw_MysBin/sqwmys_PurgeAlert.ksh -I MYS_INST_PRD
</syntaxhighlight>
This is a configuration file used by the sqwmys_RunJob.ksh script to execute actions.<br/>
<br/>
File for a default cron job $HOME/CrontabRef_MYS_INST_PRD:
<syntaxhighlight lang="sh" line>
## mm(0-59) hh(0-23) dd(1-31) MM(0-12) DAY(0-sunday, 1-monday, ...) command
## MYS_INST_PRD
#Purge alert
00 08 * * 0 bash -c '. $HOME/.profile MYS_INST_PRD;$gvsqw_MysBin/sqwmys_RunJob.ksh -I MYS_INST_PRD -A PurgeAlert > $HOME/tmp/PurgeAlert_MYS_INST_PRD.log 2>&1'
# Dump
00 20 * * * bash -c '. $HOME/.profile MYS_INST_PRD;$gvsqw_MysBin/sqwmys_RunJob.ksh -I MYS_INST_PRD -A Dump > $HOME/tmp/Dump_MYS_INST_PRD.log 2>&1'
# Optimize
00 04 * * 6 bash -c '. $HOME/.profile MYS_INST_PRD;$gvsqw_MysBin/sqwmys_RunJob.ksh -I MYS_INST_PRD -A Optimize > $HOME/tmp/Optimize_MYS_INST_PRD.log 2>&1'
# Analyze
00 05 * * 6 bash -c '. $HOME/.profile MYS_INST_PRD;$gvsqw_MysBin/sqwmys_RunJob.ksh -I MYS_INST_PRD -A Analyze > $HOME/tmp/Analyze_MYS_INST_PRD.log 2>&1'
# XtraBackup
#00 21 * * 6  bash -c '. $HOME/.profile MYS_INST_PRD;$gvsqw_MysBin/sqwmys_RunJob.ksh -I MYS_INST_PRD -A XtraFull > $HOME/tmp/XtraFull_MYS_INST_PRD.log 2>&1'
#00 21 * * 1-5 bash -c '. $HOME/.profile MYS_INST_PRD;$gvsqw_MysBin/sqwmys_RunJob.ksh -I MYS_INST_PRD -A XtraInc > $HOME/tmp/XtraInc_MYS_INST_PRD.log 2>&1'
# MariaBackup
#00 21 * * 6  bash -c '. $HOME/.profile MYS_INST_PRD;$gvsqw_MysBin/sqwmys_RunJob.ksh -I MYS_INST_PRD -A MariaFull > $HOME/tmp/MariaFull_MYS_INST_PRD.log 2>&1'
#00 21 * * 1-5 bash -c '. $HOME/.profile MYS_INST_PRD;$gvsqw_MysBin/sqwmys_RunJob.ksh -I MYS_INST_PRD -A MariaInc > $HOME/tmp/MariaInc_MYS_INST_PRD.log 2>&1'
</syntaxhighlight>
====Startup====
Setting up cron:
<syntaxhighlight lang="sh" line>
mv $HOME/CrontabRef_MYS_INST_PRD $HOME/CrontabRef
vi $HOME/CrontabRef
crontab $HOME/CrontabRef
crontab -l
</syntaxhighlight>
Update the file CrontabRef  :
<syntaxhighlight lang="sh" line>
crontab -l > $HOME/CrontabRef
cat $HOME/CrontabRef
</syntaxhighlight>
====Useful commands====
alias :
e DBALIAS => source env for the instance
bin, etc, too ... => to go to the standard SQWareProduction tree
cbin, cetc, ctoo ... => to go to the custom SQWareProduction tree
log => SQWareProduction logs
dmp => go to the backup paths
Some script options:
-h => online help
-s => online examples
-Exec => when present; if not set, only outputs commands without executing them.
Examples :
mysql@my_mysql_host:$HOME/admin/MYS_INST_PRD/logs/DumpAllDatabases (MYS_DBA_PRD) $ bin
total 100
drwxr-x---  2 dbsqware dba 4096 Sep  6 14:09 .
drwxr-x--- 15 dbsqware dba  187 Aug 16 15:50 ..
-rwxr-x---  1 dbsqware dba 2957 Aug 16 15:50 sqwmys_AnalyzeAllDatabases.ksh
-rwxr-x---  1 dbsqware dba 2514 Aug 16 15:50 sqwmys_AnalyzeDatabase.ksh
-rwxr-x---  1 dbsqware dba 2608 Aug 16 15:50 sqwmys_CheckAllDatabases.ksh
-rwxr-x---  1 dbsqware dba 2257 Aug 16 15:50 sqwmys_CheckDatabase.ksh
-rwxr-x---  1 dbsqware dba 5418 Aug 16 15:50 sqwmys_CopyDumpAllDatabases.ksh
-rwxr-x---  1 dbsqware dba 5324 Aug 16 15:50 sqwmys_CopyDumpDatabase.ksh
-rwxr-x---  1 dbsqware dba 5610 Sep  6 10:45 sqwmys_CopyMariaBackup.ksh
-rwxr-x---  1 dbsqware dba 5594 Sep  6 14:08 sqwmys_CopyXtraBackup.ksh
-rwxr-x---  1 dbsqware dba 3248 Aug 16 15:50 sqwmys_DumpAllDatabases.ksh
-rwxr-x---  1 dbsqware dba 3541 Aug 16 15:50 sqwmys_DumpDatabase.ksh
lrwxrwxrwx  1 dbsqware dba  36 Jan  2  2022 sqwmys_ExecSQL.ksh -> ../../generic/bin/sqwgen_ExecSQL.ksh
-rwxr-x---  1 dbsqware dba 2455 Aug 16 15:50 sqwmys_GatherIndicators.ksh
-rwxr-x---  1 dbsqware dba 2454 Aug 16 15:50 sqwmys_GatherStructure.ksh
-rwxr-x---  1 dbsqware dba 3043 Aug 16 15:50 sqwmys_MariaBackup.ksh
lrwxrwxrwx  1 dbsqware dba  38 Jan  2  2022 sqwmys_NetBackup.ksh -> ../../generic/bin/sqwgen_NetBackup.ksh
-rwxr-x---  1 dbsqware dba 2959 Aug 16 15:50 sqwmys_OptimizeAllDatabases.ksh
-rwxr-x---  1 dbsqware dba 2522 Aug 16 15:50 sqwmys_OptimizeDatabase.ksh
lrwxrwxrwx  1 dbsqware dba  40 Jan  2  2022 sqwmys_ParallelRun.ksh -> ../../generic/bin/sqwgen_ParallelRun.ksh
-rwxr-x---  1 dbsqware dba 2252 Aug 16 15:50 sqwmys_PurgeAlert.ksh
-rwxr-x---  1 dbsqware dba 3855 Aug 16 15:50 sqwmys_RestoreAllDatabases.ksh
-rwxr-x---  1 dbsqware dba 3463 Aug 16 15:50 sqwmys_RestoreDatabase.ksh
-rwxr-x---  1 dbsqware dba 3825 Aug 16 15:50 sqwmys_RotateLogSlowQuery.ksh
lrwxrwxrwx  1 dbsqware dba  40 Jan  2  2022 sqwmys_RsyncBackup.ksh -> ../../generic/bin/sqwgen_RsyncBackup.ksh
lrwxrwxrwx  1 dbsqware dba  35 Jan  2  2022 sqwmys_RunJob.ksh -> ../../generic/bin/sqwgen_RunJob.ksh
-rwxr-x---  1 dbsqware dba 3025 Aug 16 15:50 sqwmys_XtraBackup.ksh
mysql@my_mysql_host:$HOME/SQWareProduction/mysql/bin (MYS_INST_PRD) $
./sqwmys_DumpAllDatabases.ksh -h
Sourcing sqwmys_Global.lib v2023.06 SQWareProduction for MySQL (dbSQWare) ...
Usage: sqwmys_DumpAllDatabases.ksh [-h] -I instance [+ options]
DESCRIPTION
    sqwmys_DumpAllDatabases.ksh dump databases in parallel
SUPPORT
    MySql  supported versions: 5.0 <= v <= 8
    MariaDB supported versions: 5.5 <= v <= 11.6
PARAMETERS
      -I  instance      : Target instance to mysqldump.
OPTIONS
      -h  help          : Display the full usage.
      -s                : Display samples of usage.
      -P  Nb threads    : Number of threads in parallel (by default 2).
      -RD directory      : Directory to write dump file (default /backups/mysql/$MYSQL_SID).
      -ID listdb        : List of databases to be dumped (by default all).
      -ED listdb        : List of databases to exclude from dump.
      -IL likeclause    : Like clause to generate databases list (example: 'db%').
      -EL likeclause    : Like clause to exclude databases (example: 'nodb%').
      -HI Nb_Generations : Number of generations to keep (by default 2).
      -WCD  whereclause  : Where clause to generate databases list.
      -AGR  Nb sec      : Nb of seconds between two runs (by default 1s).
      -AGE  Nb sec      : Nb of seconds between two checks of end (by default 10s).
      -FRT  return_code  : Force return code value on error.
      -Opt  option      : Additional options for mysqldump.
      -Dist              : For distant connection to database (change $gvsqw_ConnectString to $gvsqw_DistConnectString ).
      -AddMail email    : Email address to add at 'xxx'.
      -SendReport        : Send execution log report.
      -NoMail            : Deactivate sendmail on error xxx (by default, send on error).
      -Locale  locale  : Force Locale for help display (fr,en).
      -Consistent        : Lock for consistent mode (by default, no lock).
      -Exec              : Execute commands (default, display generated commands)
Enjoy !

Revision as of 13:50, 28 April 2025