SQWareProduction:mysql:etc:sqwmys GlobalVar.cfg

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.

Configuration file $gvsqw_MysBin/../etc/sqwmys_GlobalVar.cfg:
Global var for Mysql
It contains the operating variables of SQWareProduction.

File content:

#!/bin/bash
###################################################################
# SQWareProduction for Mysql module of dbSQWare
# 
# dbSQWare is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# CGU/CGA for more details.
# 
# You should have received a copy of the CGU/CGA
# along with this program.  If not, see <http://www.dbsqware.com/licenses/>.
# 
# For information : contact@dbsqware.com or www.dbsqware.com
###################################################################
## @Synopsis	Global var for Mysql
## @Copyright	Copyright 2007-2025, dbSQWare (www.dbsqware.com)

#global
export gvsqw_SqwVersionDbms=2025.06
export gvsqw_ExcludeEvalVar='^gvsqw_MysqlDumpOpt='
if [ -r $MYSQL_HOME/tmp/$MYSQL_SID.sock ]
then
	export gvsqw_MysqlSock='$MYSQL_HOME/tmp/$MYSQL_SID.sock'
elif [ -r $MYSQL_DATA/tmp/$MYSQL_SID.sock ]
then
	export gvsqw_MysqlSock='$MYSQL_DATA/tmp/$MYSQL_SID.sock'
elif [ -r /tmp/$MYSQL_SID.sock ]
then
	export gvsqw_MysqlSock='/tmp/$MYSQL_SID.sock'
elif [ -r "/var/lib/mysql/mysql.sock" ]
then
	export gvsqw_MysqlSock='/var/lib/mysql/mysql.sock'
elif [ -r "/var/lib/mysqld/mysql.sock" ]
then
	export gvsqw_MysqlSock='/var/lib/mysqld/mysql.sock'
elif [ -r "/var/lib64/mysql/mysql.sock" ]
then
	export gvsqw_MysqlSock='/var/lib64/mysql/mysql.sock'
elif [ -r "/var/lib64/mysqld/mysql.sock" ]
then
	export gvsqw_MysqlSock='/var/lib64/mysqld/mysql.sock'
elif [ -r /tmp/mysql.sock ]
then
	export gvsqw_MysqlSock='/tmp/mysql.sock'
elif [ -r /run/mysqld/mysqld.sock ]
then
	export gvsqw_MysqlSock='/run/mysqld/mysqld.sock'
fi

export gvsqw_DbaUser="$gvsqw_UserExec"
export gvsqw_ConnectString='-S $gvsqw_MysqlSock -u $gvsqw_DbaUser'
export gvsqw_DistConnectString='-h $gvsqw_MysqlHost -P $gvsqw_MysqlPort -u$gvsqw_DbaUser -p$gvsqw_DbaUserPasswd'
export gvsqw_SuppArchSlow=30
export gvsqw_RootAdmin='$HOME/${MYSQL_SID}'
export gvsqw_RootAdminDisable='$HOME'
export gvsqw_RootAdminDist='$HOME/admin/mysql/${MYSQL_SID}'
export gvsqw_RootCfg='$gvsqw_RootAdmin/sqwConfig'
export gvsqw_RootDbf='/$(echo ${HOME}|cut -d/ -f2)/data/${MYSQL_SID}'
export gvsqw_GenExcludeDatabasesWhereClause="and SCHEMA_NAME not in ('SQWareProduction','${MYSQL_SID}','tmp','logs') and SCHEMA_NAME not like '%#%' and SCHEMA_NAME not like '% %' and SCHEMA_NAME != 'performance_schema' and SCHEMA_NAME != 'sys'"
#export gvsqw_GenExcludeDatabasesWhereClause="and table_schema not like '%#%' and table_schema not like '% %' and table_schema != 'performance_schema' and table_schema != 'sys'"
export gvsqw_DbAlias='$MYSQL_SID'
export gvsqw_NbThreadOptimize=2
export gvsqw_NbThreadAnalyze=2
export gvsqw_NbThreadDump=2
export gvsqw_NbThreadCopyDump=2
export gvsqw_NbThreadRestore=2
export gvsqw_NbThreadCheck=2
export gvsqw_NotMysqlErrorMsg="_ERROR |_FAILED |_ERREUR |_ECHEC |_ERROR_|_FAILED_|_ERREUR_|_ECHEC_|'ERROR |'FAILED |'ERREUR |'ECHEC "
#To ignore mysqldump errors, example : gvsqw_NotMysqldumpErrorMsg="mysqldump: Error 1412" to ignore "mysqldump: Error 1412: Table definition has changed, please retry transaction when dumping table ..."
export gvsqw_NotMysqldumpErrorMsg="mysqldump: Error ToBeCustomize"

#for indicators
export gvsqw_SizeMinTableIndicators=10
export gvsqw_GenExcludeDatabasesObjects="and TABLES.TABLE_SCHEMA not in ('performance_schema','mysql','information_schema','sys')"
export gvsqw_GenExcludeDatabasesObjectsExtra=""
export gvsqw_PathList="HOME;gvsqw_RootAdmin;gvsqw_RootCfg;gvsqw_RootDump;gvsqw_RootXtraBackup;gvsqw_RootMariaBackup"
export gvsqw_PathListExtra=""
export gvsqw_CommandPathVersionList="$gvsqw_CommandPathVersionList mysql;--version"

#for Dump scripts
export gvsqw_RootDump='$HOME/mys_dump/$MYSQL_SID'
export gvsqw_RootDumpSource='$HOME/mys_dump/$lvsqw_InstanceSource'
export gvsqw_ExcludeDatabasesCopy='^mysql$|^information_schema$|^performance_schema$'
export gvsqw_DumpNbGeneration=2
export gvsqw_DumpCompressorExt=gz
export gvsqw_DefCopyDumpNbGeneration=1
export gvsqw_ConsistentInnoDb="--single-transaction --skip-lock-tables"
export gvsqw_ConsistentOthers="--lock-tables"
export gvsqw_MysqlDumpOpt='$gvsqw_ConnectString --create-options -f --max_allowed_packet=1000000000 --net_buffer_length=16M ${lfsqw_SqlOpt}${lvsqw_AdditionalOption} -R -q --databases ${lvsqw_DbName}'
export gvsqw_RsyncDefaultSourceDir='$HOME/mys_dump/$MYSQL_SID'
#for Restore scripts
export gvsqw_DropDb=Enable
export gvsqw_CreateDb=Enable
##Additional options before mysql command, ex : "SET sql_log_bin=OFF;" (put the ; caracter !!!)
export gvsqw_OptionsBeforeMySQL=""
##Additional options during mysql command, ex : "--init-command='SET sql_log_bin=OFF'"
export gvsqw_OptionsMySQL=""

#for Optimize script
export gvsqw_OptimizeMinDataFree=10
export gvsqw_OptimizeMinFragRatio=10

#for XtraBackup scripts
export gvsqw_RootXtraBackup='$HOME/XtraBackup/$MYSQL_SID'
export gvsqw_RootXtraBackupSource='$HOME/XtraBackup/$lvsqw_InstanceSource'
export gvsqw_XtraBackupNbGeneration=2
export gvsqw_XtraBackupWaitTimeOut=900
export gvsqw_DefCopyXtraBackupNbGeneration=1

#for MariaBackup scripts
export gvsqw_RootMariaBackup='$HOME/MariaBackup/$MYSQL_SID'
export gvsqw_RootMariaBackupSource='$HOME/MariaBackup/$lvsqw_InstanceSource'
export gvsqw_MariaBackupNbGeneration=2
export gvsqw_MariaBackupWaitTimeOut=900
export gvsqw_DefCopyMariaBackupNbGeneration=1

#for copy scripts
export gvsqw_NbThreadScp=2
export gvsqw_DefAGR_Scp=10
export gvsqw_DefAGE_Scp=30

#for rotate slowquery (put yes to no copy to webdba)
export gvsqw_LocalSlowQuery=no
#at: average query time
export gvsqw_MysqlDumpSlowOption1='at'
#al: average lock time
export gvsqw_MysqlDumpSlowOption2='al'
#ae: aggregated rows examined
export gvsqw_MysqlDumpSlowOption3='ae'

##Globaly forcing return code for scripts
#export gvsqw_ForcedReturnCodeScript_sqwmys_DumpDatabase=0

#for SQWareWeb
#export gvsqw_WebDbaDirSlowQuery='Directory to store SlowQuery files'


Variables explanation:

#General variables
gvsqw_SqwVersion => SQWare Production version
gvsqw_MysqlSock => Path to MySQL sock file
gvsqw_SuppArchSlow => number of days to delete archives of slow query files
gvsqw_RootAdmin => admin directory
gvsqw_RootCfg => configuration directory
gvsqw_RootDbf => datafiles directory
gvsqw_NbThread => default number of thread for parallelism
gvsqw_MysqlErrorMsg => format of MySQL errors
gvsqw_DbaUser => User Dba
gvsqw_DistConnectString => XXXXX
gvsqw_GenExcludeDatabasesWhereClause => XXXXX
gvsqw_NbThreadCopyDump => XXXXX
gvsqw_NbThreadRestore => default number of thread for parallelism for restore
gvsqw_NbThreadCheck => default number of thread for parallelism for Checkstorage
gvsqw_NotMysqlErrorMsg => XXXXX
#To ignore mysqldump errors, example : gvsqw_NotMysqldumpErrorMsg="mysqldump: Error 1412" to ignore "mysqldump: Error 1412: Table definition has changed, please retry transaction when dumping table ..."
gvsqw_NotMysqldumpErrorMsg => XXXXX

#for indicators
gvsqw_GenExcludeDatabasesObjects => XXXXX
gvsqw_GenExcludeDatabasesObjectsExtra => XXXXX

#for Dump scripts
gvsqw_NbThreadDump => default number of thread for parallelism for mysqlDump
gvsqw_RootDump => default mysqlDump directory
gvsqw_DumpNbGeneration => default number generation of mysqlDump to keep online
gvsqw_ConsistentInnoDb => command to make mysqlDump consistent where engine = InnoDb
gvsqw_ConsistentOthers => command to make mysqlDump consistent where engine != InnoDb
gvsqw_MysqlDumpOpt => mysql Dump command
gvsqw_RootDumpSource => unLoad directory for source
gvsqw_ExcludeDatabasesCopy => XXXXX
gvsqw_DumpCompressorExt => XXXXX
gvsqw_DefCopyDumpNbGeneration => XXXXX
gvsqw_DropDb => XXXXX
gvsqw_CreateDb => XXXXX

#for XtraBackup scripts
gvsqw_RootXtraBackup => XXXXX
gvsqw_RootXtraBackupSource => XXXXX
gvsqw_XtraBackupNbGeneration => XXXXX
gvsqw_XtraBackupWaitTimeOut => XXXXX

#for MariaBackup scripts
gvsqw_RootMariaBackup => XXXXX
gvsqw_RootMariaBackupSource => XXXXX
gvsqw_MariaBackupNbGeneration => XXXXX
gvsqw_MariaBackupWaitTimeOut => XXXXX

#for rotate slowquery (put yes to no copy to webdba)
gvsqw_LocalSlowQuery => XXXXX

#for optimize scripts
gvsqw_NbThreadOptimize => default number of thread for parallelism for optimize

#for analyse scripts
gvsqw_NbThreadAnalyze => default number of thread for parallelism for analyse

##Globaly forcing return code for scripts
gvsqw_ForcedReturnCodeScript_sqwmys_DumpDatabase => To force return code of sqwmys_DumpDatabase.ksh
...

#for SQWare Web
gvsqw_WebDbaUserConn => Connection string ssh user@hostname to SQWare Web
gvsqw_WebDbaDirSlowQuery => Directory to store SlowQuery files on SQWare Web
Note:
You can overload variables contain in $gvsqw_MysBin/../etc/sqwmys_GlobalVar.cfg

by the same variables in $gvsqw_MysBin/../etc_cust/sqwmys_GlobalVar.cfg for all your environnement
or in $HOME/sqwConfig/sqwmys_GlobalVar.cfg specifically for this user.