SQWareProduction:mysql

From Wiki_dbSQWare
Revision as of 00:34, 17 July 2010 by Expdbtools (talk | contribs) (etc)
Jump to: navigation, search

Presentation

Usage

It's the module locally operating of Mysql.
It is entirely written in ksh and sql.
It allows to manage the operation for Mysql.
Example uses of the tool:

  • Backup
  • Recovery
  • Compute statistics
  • Indicators collection to store in referential database SQWareRepository
  • Rotate logs
  • ....

This module is deployed locally on the machine hosting the authorities to manage, in order to avoid any points of weakness related to an NFS mount or whatever. The deployment is done through a simple command SQWareCentral module using inventory located in SQWareRepository !
Installation guide for SQWareProduction for Mysql

Explanation of directories

Directories located in $gvsqw_MysBin:

  • bin : Directory containing standard scripts
  • bin_cust : Directory containing customs scripts for your environnement
  • etc : Directory containing the standard files of configuration
  • etc_cust : Directory containing the customs files of configuration for your environnement (overload standards)
  • help : Directory containing the standard files of help
  • help_cust : Directory containing the customs files of help for your environnement
  • lib : Directory containing the generic shell function librairies
  • lib_cust : Directory containing the generic shell function librairies (overload standards)
  • spm : Contain sql query toolkit
  • tools : Directory containing the standard scripts used on an ad hoc
  • tools_cust : Directory containing the customs scripts used on an ad hoc for your environnement
  • menu : Directory containing the standard menus
  • menu_cust : Directory containing the custom menus for your environnement
Nuvola apps important.png
Warning:
Do not change the standard scripts and configuration files of dbSQWare.

Use directories *_cust for customizations. This will facilitate version upgrades.


Naming convention of files

The majority of files are named with suffixes:

  • *.ksh : for scripts
  • *.cfg : for configuration files
  • *.lib : for function librairies
  • *.hlp : for help files
Nuvola apps important.png
Warning:
Do not change the standard scripts and configuration files of dbSQWare.

Use directories *_cust for customizations. This will facilitate version upgrades.


Naming convention in scripts

In general, the following naming convention is used in all scripts of SQWareProduction:

  • gvsqw_ {} : global variable initialized by the environment and / or generic library
  • lvsqw_ {} : local variable initialized by the script and / or a specific library
  • gfsqw_ {} : function defined by a generic library
  • lfsqw_ {} : function defined by the script and / or a specific library

bin

sqwmys_AnalyzeAllDatabases.ksh

Script $gvsqw_MysBin/../bin/sqwmys_AnalyzeAllDatabases.ksh:
Exécution en // de sqwmys_AnalyzeDatabase.ksh pour toutes les database avec sqwmys_RunJob.ksh
Voir l'aide détaillée pour sqwmys_AnalyzeAllDatabases.ksh

sqwmys_AnalyzeDatabase.ksh

Script $gvsqw_MysBin/../bin/sqwmys_AnalyzeDatabase.ksh:
Analyse toutes les tables d'une database
Voir l'aide détaillée pour sqwmys_AnalyzeDatabase.ksh

sqwmys_CheckIndicators.ksh

Script $gvsqw_MysBin/../bin/sqwmys_CheckIndicators.ksh:
Fait le check des indicateurs DBAs:

  • Présence des indicateurs
  • Volumétrie FS
  • ...

Voir l'aide détaillée pour sqwmys_CheckIndicators.ksh

sqwmys_DumpAllDatabases.ksh

Script $gvsqw_MysBin/../bin/sqwmys_DumpAllDatabases.ksh:
Exécution en // de sqwmys_DumpDatabase.ksh pour toutes les database avec sqwmys_RunJob.ksh
Voir l'aide détaillée pour sqwmys_DumpAllDatabases.ksh

sqwmys_DumpDatabase.ksh

Script $gvsqw_MysBin/../bin/sqwmys_DumpDatabase.ksh:
mysqldump d'une database
Voir l'aide détaillée pour sqwmys_DumpDatabase.ksh

sqwmys_GatherIndicators.ksh

Script $gvsqw_MysBin/../bin/sqwmys_GatherIndicators.ksh:
Collecte d'indicateurs Mysql:

  • Volumétrie et paramètres globaux
  • Volumétrie par database
  • Volumétrie par FS
  • ...

Voir l'aide détaillée pour sqwmys_GatherIndicators.ksh

sqwmys_OptimizeAllDatabases.ksh

Script $gvsqw_MysBin/../bin/sqwmys_OptimizeAllDatabases.ksh:
Exécution en // de sqwmys_OptimizeDatabase.ksh pour toutes les database avec sqwmys_RunJob.ksh
Voir l'aide détaillée pour sqwmys_OptimizeAllDatabases.ksh

sqwmys_OptimizeDatabase.ksh

Script $gvsqw_MysBin/../bin/sqwmys_OptimizeDatabase.ksh:
Optimize toutes les tables pour une database
Voir l'aide détaillée pour sqwmys_OptimizeDatabase.ksh

sqwmys_ParallelRun.ksh

Script $gvsqw_MysBin/../bin/sqwmys_ParallelRun.ksh:
Lancement de commandes unix en //
Voir l'aide détaillée pour sqwmys_ParallelRun.ksh

sqwmys_PurgeAlert.ksh

Script $gvsqw_MysBin/../bin/sqwmys_PurgeAlert.ksh:
Rotation des logs
Voir l'aide détaillée pour sqwmys_PurgeAlert.ksh

sqwmys_RotateLogSlowQuery.ksh

Script $gvsqw_MysBin/../bin/sqwmys_RotateLogSlowQuery.ksh:
Rotation slow_query_log_file (et envoi sur SQWareWeb)
Voir l'aide détaillée pour sqwmys_RotateLogSlowQuery.ksh

sqwmys_RunJob.ksh

Script $gvsqw_MysBin/../bin/sqwmys_RunJob.ksh:
Lancement de jobs Mysql à partir des action paramétrées dans le fichier $gvsqw_RootAdmin/sqwmys_Jobs.cfg, permet la gestion transparente des logs (compression/purge) et de décoréler le lancement de job de son paramétrage.
Voir l'aide détaillée pour sqwmys_RunJob.ksh



etc

CrontabRef

Fichier de configuration $gvsqw_MysBin/../etc/CrontabRef:
Exemple de crontab pour Mysql

Nuvola apps information.png
Note:
You can replace file $gvsqw_MysBin/../etc/CrontabRef

by $gvsqw_MysBin/../etc_cust/CrontabRef for all your environnement
or by $HOME/edtConfig/CrontabRef specifically for this user..

Voir l'aide détaillée pour CrontabRef

sqwmys_DbRefVar.cfg

Fichier de configuration $gvsqw_MysBin/../etc/sqwmys_DbRefVar.cfg:
Variables de connexion à SQWareRepository pour Mysql.

Nuvola apps information.png
Note:
You can overload variables contain in $gvsqw_MysBin/../etc/sqwmys_DbRefVar.cfg

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

Voir l'aide détaillée pour sqwmys_DbRefVar.cfg

sqwmys_GlobalVar.cfg

Fichier de configuration $gvsqw_MysBin/../etc/sqwmys_GlobalVar.cfg:
Il contient les variables globales de SQWareProduction.

Nuvola apps information.png
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.

Voir l'aide détaillée pour sqwmys_GlobalVar.cfg

sqwmys_Jobs.cfg

Fichier de configuration $gvsqw_MysBin/../etc/sqwmys_Jobs.cfg:
Exemple de fichier de paramétrage de jobs.

Nuvola apps information.png
Note:
You can replace file $gvsqw_MysBin/../etc/sqwmys_Jobs.cfg

by $gvsqw_MysBin/../etc_cust/sqwmys_Jobs.cfg for all your environnement
or by $HOME/edtConfig/sqwmys_Jobs.cfg specifically for this user..

Voir l'aide détaillée pour sqwmys_Jobs.cfg

my.cnf

Fichier de configuration $gvsqw_MysBin/../etc/my.cnf:
Exemple de fichier de conf Mysql.

Nuvola apps information.png
Note:
You can replace file $gvsqw_MysBin/../etc/my.cnf

by $gvsqw_MysBin/../etc_cust/my.cnf for all your environnement
or by $HOME/edtConfig/my.cnf specifically for this user..

Voir l'aide détaillée pour my.cnf

.profile

Fichier d'exemple $gvsqw_MysBin/../etc/.profile:
Exemple de .profile pour un user unix.
Voir l'aide détaillée pour .profile

.profile_confort

Fichier de positionnement d'alias $gvsqw_MysBin/../etc/.profile_confort:
Positionnement de l'environnement de confort (alias, variables, ...).

Nuvola apps information.png
Note:
You can overload confort environnement $gvsqw_MysBin/../etc/.profile_confort

with $gvsqw_MysBin/../etc_cust/.profile_confort for all your environnement
or with $HOME/edtConfig/.profile_confort specifically for this user .

Voir l'aide détaillée pour .profile_confort



lib

sqwmys_CheckIndicators.lib

Librairie de fonctions shell $gvsqw_MysBin/../lib/sqwmys_CheckIndicators.lib:
lib for sqwmys_CheckIndicators.ksh

Nuvola apps information.png
Note:
You can overload functions contained in $gvsqw_MysBin/../lib/sqwmys_CheckIndicators.lib

by function with same name in $gvsqw_MysBin/../lib_cust/sqwmys_CheckIndicators.lib for all your environnement
or by $HOME/sqwConfig/sqwmys_CheckIndicators.lib specifically for this user .


Voir l'aide détaillée pour sqwmys_CheckIndicators.lib

sqwmys_CheckIndicators_Overload.lib

Librairie de fonctions shell $gvsqw_MysBin/../lib/sqwmys_CheckIndicators_Overload.lib:
temple lib for overload sqwmys_CheckIndicators.ksh

Nuvola apps information.png
Note:
You can overload functions contained in $gvsqw_MysBin/../lib/sqwmys_CheckIndicators_Overload.lib

by function with same name in $gvsqw_MysBin/../lib_cust/sqwmys_CheckIndicators_Overload.lib for all your environnement
or by $HOME/sqwConfig/sqwmys_CheckIndicators_Overload.lib specifically for this user .


Voir l'aide détaillée pour sqwmys_CheckIndicators_Overload.lib

sqwmys_GatherIndicators.lib

Librairie de fonctions shell $gvsqw_MysBin/../lib/sqwmys_GatherIndicators.lib:
lib for sqwmys_GatherIndicators.ksh

Nuvola apps information.png
Note:
You can overload functions contained in $gvsqw_MysBin/../lib/sqwmys_GatherIndicators.lib

by function with same name in $gvsqw_MysBin/../lib_cust/sqwmys_GatherIndicators.lib for all your environnement
or by $HOME/sqwConfig/sqwmys_GatherIndicators.lib specifically for this user .


Voir l'aide détaillée pour sqwmys_GatherIndicators.lib

sqwmys_GatherIndicators_Overload.lib

Librairie de fonctions shell $gvsqw_MysBin/../lib/sqwmys_GatherIndicators_Overload.lib:
lib for overload sqwmys_GatherIndicators.ksh

Nuvola apps information.png
Note:
You can overload functions contained in $gvsqw_MysBin/../lib/sqwmys_GatherIndicators_Overload.lib

by function with same name in $gvsqw_MysBin/../lib_cust/sqwmys_GatherIndicators_Overload.lib for all your environnement
or by $HOME/sqwConfig/sqwmys_GatherIndicators_Overload.lib specifically for this user .


Voir l'aide détaillée pour sqwmys_GatherIndicators_Overload.lib

sqwmys_Global.lib

Librairie de fonctions shell $gvsqw_MysBin/../lib/sqwmys_Global.lib:
central lib of generic fonctions

Nuvola apps information.png
Note:
You can overload functions contained in $gvsqw_MysBin/../lib/sqwmys_Global.lib

by function with same name in $gvsqw_MysBin/../lib_cust/sqwmys_Global.lib for all your environnement
or by $HOME/sqwConfig/sqwmys_Global.lib specifically for this user .


Voir l'aide détaillée pour sqwmys_Global.lib

sqwmys_InsertIndicators.lib

Librairie de fonctions shell $gvsqw_MysBin/../lib/sqwmys_InsertIndicators.lib:
generic fonctions to insert into referential

Nuvola apps information.png
Note:
You can overload functions contained in $gvsqw_MysBin/../lib/sqwmys_InsertIndicators.lib

by function with same name in $gvsqw_MysBin/../lib_cust/sqwmys_InsertIndicators.lib for all your environnement
or by $HOME/sqwConfig/sqwmys_InsertIndicators.lib specifically for this user .


Voir l'aide détaillée pour sqwmys_InsertIndicators.lib

sqwmys_OptimizeDatabase.lib

Librairie de fonctions shell $gvsqw_MysBin/../lib/sqwmys_OptimizeDatabase.lib:
lib for sqwmys_OptimizeDatabase.ksh

Nuvola apps information.png
Note:
You can overload functions contained in $gvsqw_MysBin/../lib/sqwmys_OptimizeDatabase.lib

by function with same name in $gvsqw_MysBin/../lib_cust/sqwmys_OptimizeDatabase.lib for all your environnement
or by $HOME/sqwConfig/sqwmys_OptimizeDatabase.lib specifically for this user .


Voir l'aide détaillée pour sqwmys_OptimizeDatabase.lib

sqwmys_RotateLogSlowQuery.lib

Librairie de fonctions shell $gvsqw_MysBin/../lib/sqwmys_RotateLogSlowQuery.lib:
lib for sqwmys_RotateLogSlowQuery.ksh

Nuvola apps information.png
Note:
You can overload functions contained in $gvsqw_MysBin/../lib/sqwmys_RotateLogSlowQuery.lib

by function with same name in $gvsqw_MysBin/../lib_cust/sqwmys_RotateLogSlowQuery.lib for all your environnement
or by $HOME/sqwConfig/sqwmys_RotateLogSlowQuery.lib specifically for this user .


Voir l'aide détaillée pour sqwmys_RotateLogSlowQuery.lib

sqwmys_SetEnv.lib

Librairie de fonctions shell $gvsqw_MysBin/../lib/sqwmys_SetEnv.lib:
fonction to set env for $MYSQL_SID

Nuvola apps information.png
Note:
You can overload functions contained in $gvsqw_MysBin/../lib/sqwmys_SetEnv.lib

by function with same name in $gvsqw_MysBin/../lib_cust/sqwmys_SetEnv.lib for all your environnement
or by $HOME/sqwConfig/sqwmys_SetEnv.lib specifically for this user .


Voir l'aide détaillée pour sqwmys_SetEnv.lib



menu



tools

sqwmys_ConnectMsg.ksh

Script $gvsqw_MysBin/../tools/sqwmys_ConnectMsg.ksh:
startup message
Voir l'aide détaillée pour sqwmys_ConnectMsg.ksh

sqwmys_MonitorAgentAdmin.ksh

Script $gvsqw_MysBin/../tools/sqwmys_MonitorAgentAdmin.ksh:
Mysql monitor agent services
Voir l'aide détaillée pour sqwmys_MonitorAgentAdmin.ksh

sqwmys_MysqlAdmin.ksh

Script $gvsqw_MysBin/../tools/sqwmys_MysqlAdmin.ksh:
stop/start of mysql services
Voir l'aide détaillée pour sqwmys_MysqlAdmin.ksh



spm

Ensemble de requêtes sql usuelles déjà écrites
Voir l'aide détaillée pour spm