SQWareProduction:mssql

From Wiki_dbSQWare
Revision as of 20:31, 27 September 2021 by BatchUser (talk | contribs) (Updated by BatchUser)
Jump to: navigation, search

Contents

Presentation

Usage

It's the module locally operating of mssql.
It is entirely written in ksh and sql.
It allows to manage the operation for mssql.
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 mssql

Explanation of directories

Directories located in $gvsqw_MsqBin:

  • 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

sqwmsq_BackupAllDatabases.ksh

Script $gvsqw_MsqBin/bin/sqwmsq_BackupAllDatabases.ksh:

Run of sqwmsq_BackupDatabase.ksh in parallel mode
You can choose:

  • The parallel degree
  • Aggressiveness of run (number of seconds between two runs)
  • Aggressiveness of check end (number of seconds between two checks of end)


Filters to generate database list (you can mix all off them):

  • Include list of database
  • Exclude list of database
  • Include like clause
  • Exclude like clause
  • Where clause

See the detailed help for sqwmsq_BackupAllDatabases.ksh

sqwmsq_BackupDatabase.ksh

Script $gvsqw_MsqBin/bin/sqwmsq_BackupDatabase.ksh:

Generate backup database
You can choose type of backup (by default full):

  • full
  • log
  • diff


Script automatically determine how many stripes
Makes purges of backup generations
You can change default values:

  • change Path to put backup (by default: 'HKEY_LOCAL_MACHINE', 'BackupDirectory')
  • force number of stripes
  • size max of a stripe
  • number of backup generations to keep online

See the detailed help for sqwmsq_BackupDatabase.ksh

sqwmsq_CheckdbAllDatabases.ksh

Script $gvsqw_MsqBin/bin/sqwmsq_CheckdbAllDatabases.ksh:

Run of sqwmsq_CheckdbDatabase.ksh in parallel mode
You can choose:

  • The parallel degree
  • Aggressiveness of run (number of seconds between two runs)
  • Aggressiveness of check end (number of seconds between two checks of end)


Filters to generate database list (you can mix all off them):

  • Include list of database
  • Exclude list of database
  • Include like clause
  • Exclude like clause
  • Where clause

See the detailed help for sqwmsq_CheckdbAllDatabases.ksh

sqwmsq_CheckdbDatabase.ksh

Script $gvsqw_MsqBin/bin/sqwmsq_CheckdbDatabase.ksh:

Generate checkdb commands on the database See the detailed help for sqwmsq_CheckdbDatabase.ksh

sqwmsq_ExecSQL.ksh

Script $gvsqw_MsqBin/bin/sqwmsq_ExecSQL.ksh:

execute SQL file on instance See the detailed help for sqwmsq_ExecSQL.ksh

sqwmsq_GatherIndicators.ksh

Script $gvsqw_MsqBin/bin/sqwmsq_GatherIndicators.ksh:

Gather MsSql indicators and put them in SQWareRepository
Summary of collection:

  • Volumetry (use, free) of instance
  • Volumetry (use, free) of databases
  • Volumetry (use, free) of files
  • Version, options, configuration, ... of instance

See the detailed help for sqwmsq_GatherIndicators.ksh

sqwmsq_GatherStructure.ksh

Script $gvsqw_MsqBin/bin/sqwmsq_GatherStructure.ksh:

Gather MsSql structure and put them in SQWareRepository
Summary of collection:

  • Tables list and options
  • Columns list, types and options
  • Indexes list, types and options

See the detailed help for sqwmsq_GatherStructure.ksh

sqwmsq_NetBackup.ksh

Script $gvsqw_MsqBin/bin/sqwmsq_NetBackup.ksh:

backup with NetBackup dump/backup files See the detailed help for sqwmsq_NetBackup.ksh

sqwmsq_ParallelRun.ksh

Script $gvsqw_MsqBin/bin/sqwmsq_ParallelRun.ksh:

Manages the execution of unix commands in parallel mode
Takes in parameter file with unix command to execute
You can choose:

  • The parallel degree
  • Aggressiveness of run (number of seconds between two runs)
  • Aggressiveness of check end (number of seconds between two checks of end)


See the detailed help for sqwmsq_ParallelRun.ksh

sqwmsq_RebuildIndexAllDatabases.ksh

Script $gvsqw_MsqBin/bin/sqwmsq_RebuildIndexAllDatabases.ksh:

Run of sqwmsq_RebuildIndexDatabase.ksh in parallel mode
You can choose:

  • The parallel degree
  • Aggressiveness of run (number of seconds between two runs)
  • Aggressiveness of check end (number of seconds between two checks of end)


Filters to generate database list (you can mix all off them):

  • Include list of database
  • Exclude list of database
  • Include like clause
  • Exclude like clause
  • Where clause

See the detailed help for sqwmsq_RebuildIndexAllDatabases.ksh

sqwmsq_RebuildIndexDatabase.ksh

Script $gvsqw_MsqBin/bin/sqwmsq_RebuildIndexDatabase.ksh:

Rebuild indexes for all databases
version = 2000 -> Dbcc dbreindex (N'[$lvsqw_Owner].[$lvsqw_TableName]',,90)
version >= 2005 -> alter index all on [$lvsqw_Owner].[$lvsqw_TableName] Rebuild with (online = off) See the detailed help for sqwmsq_RebuildIndexDatabase.ksh

sqwmsq_RestoreAllDatabases.ksh

Script $gvsqw_MsqBin/bin/sqwmsq_RestoreAllDatabases.ksh:

Run of sqwmsq_RestoreDatabase.ksh in parallel mode
You can choose:

  • The parallel degree
  • Aggressiveness of run (number of seconds between two runs)
  • Aggressiveness of check end (number of seconds between two checks of end)


Filters to generate database list (you can mix all off them):

  • Include list of database
  • Exclude list of database
  • Include like clause
  • Exclude like clause
  • Where clause

See the detailed help for sqwmsq_RestoreAllDatabases.ksh

sqwmsq_RestoreDatabase.ksh

Script $gvsqw_MsqBin/bin/sqwmsq_RestoreDatabase.ksh:

Standard database restore MsSql
script dynamically find backup files to restore
and makes a synchronisation of users/logins
The script can also:

  • choose backup file
  • change Path to find backup to restore (by default: 'HKEY_LOCAL_MACHINE', 'BackupDirectory')
  • run shell script before restore
  • run shell script after restore

See the detailed help for sqwmsq_RestoreDatabase.ksh

sqwmsq_RotateErrorLog.ksh

Script $gvsqw_MsqBin/bin/sqwmsq_RotateErrorLog.ksh:

Rotate errorlog and put history configuration See the detailed help for sqwmsq_RotateErrorLog.ksh

sqwmsq_RunJob.ksh

Script $gvsqw_MsqBin/bin/sqwmsq_RunJob.ksh:

Run MsSql scripts and generate log and error file
based on $gvsqw_RootCfg/sqwmsq_Jobs.cfg configuration file
compress and purge oldest log files See the detailed help for sqwmsq_RunJob.ksh

sqwmsq_StatisticsAllDatabases.ksh

Script $gvsqw_MsqBin/bin/sqwmsq_StatisticsAllDatabases.ksh:

Run of sqwmsq_StatisticsDatabase.ksh in parallel mode
You can choose:

  • The parallel degree
  • Aggressiveness of run (number of seconds between two runs)
  • Aggressiveness of check end (number of seconds between two checks of end)


Filters to generate database list (you can mix all off them):

  • Include list of database
  • Exclude list of database
  • Include like clause
  • Exclude like clause
  • Where clause

See the detailed help for sqwmsq_StatisticsAllDatabases.ksh

sqwmsq_StatisticsDatabase.ksh

Script $gvsqw_MsqBin/bin/sqwmsq_StatisticsDatabase.ksh:

Update Statistics for all tables of the database
Use command: update statistics [$lvsqw_Owner].[$lvsqw_TableName] with fullscan, all See the detailed help for sqwmsq_StatisticsDatabase.ksh


etc

sqwmsq_ConfInst_CrontabRef.cfg

Configuration file $gvsqw_MsqBin/../etc/sqwmsq_ConfInst_CrontabRef.cfg:


See the detailed help for sqwmsq_ConfInst_CrontabRef.cfg

sqwmsq_ConfInst_Jobs.cfg

Configuration file $gvsqw_MsqBin/../etc/sqwmsq_ConfInst_Jobs.cfg:


See the detailed help for sqwmsq_ConfInst_Jobs.cfg

sqwmsq_GlobalVar.cfg

Configuration file $gvsqw_MsqBin/../etc/sqwmsq_GlobalVar.cfg:
Global var for Mssql
It contains the operating variables of SQWareProduction.

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

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

See the detailed help for sqwmsq_GlobalVar.cfg

.profile

Sample file for .profile $gvsqw_MsqBin/../etc/.profile:
Sample of lines to add to .profile of mssql users.
See the detailed help for .profile

.profile_confort

File to put aliases $gvsqw_MsqBin/../etc/.profile_confort:
Contains confort aliases of SQWareProduction for mssql.

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

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


See the detailed help for .profile_confort


lib

sqwmsq_BackupDatabase.lib

shell functions library $gvsqw_MsqBin/../lib/sqwmsq_BackupDatabase.lib:
lib for sqwmsq_BackupDatabase.ksh

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

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


See the detailed help for sqwmsq_BackupDatabase.lib

sqwmsq_ExecSQL.lib

shell functions library $gvsqw_MsqBin/../lib/sqwmsq_ExecSQL.lib:
lib for sqwmsq_ExecSQL.ksh

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

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


See the detailed help for sqwmsq_ExecSQL.lib

sqwmsq_GatherIndicators.lib

shell functions library $gvsqw_MsqBin/../lib/sqwmsq_GatherIndicators.lib:
lib for sqwmsq_GatherIndicators.ksh

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

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


See the detailed help for sqwmsq_GatherIndicators.lib

sqwmsq_GatherIndicators_Overload.lib

shell functions library $gvsqw_MsqBin/../lib/sqwmsq_GatherIndicators_Overload.lib:
lib for overLoad sqwmsq_GatherIndicators.ksh

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

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


See the detailed help for sqwmsq_GatherIndicators_Overload.lib

sqwmsq_GatherStructure.lib

shell functions library $gvsqw_MsqBin/../lib/sqwmsq_GatherStructure.lib:
lib for sqwmsq_GatherStructure.ksh

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

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


See the detailed help for sqwmsq_GatherStructure.lib

sqwmsq_GenerateCreateInstance.lib

shell functions library $gvsqw_MsqBin/../lib/sqwmsq_GenerateCreateInstance.lib:
lib for generate configure instance

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

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


See the detailed help for sqwmsq_GenerateCreateInstance.lib

sqwmsq_Global.lib

shell functions library $gvsqw_MsqBin/../lib/sqwmsq_Global.lib:
central lib of generic fonctions for mssql

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

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


See the detailed help for sqwmsq_Global.lib

sqwmsq_NetBackup.lib

shell functions library $gvsqw_MsqBin/../lib/sqwmsq_NetBackup.lib:
lib for sqwgen_NetBackup.ksh

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

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


See the detailed help for sqwmsq_NetBackup.lib

sqwmsq_RebuildIndexDatabase.lib

shell functions library $gvsqw_MsqBin/../lib/sqwmsq_RebuildIndexDatabase.lib:
lib for sqwmsq_RebuildIndexDatabase.ksh

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

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


See the detailed help for sqwmsq_RebuildIndexDatabase.lib

sqwmsq_RestoreDatabase.lib

shell functions library $gvsqw_MsqBin/../lib/sqwmsq_RestoreDatabase.lib:
lib for sqwmsq_RestoreDatabase.ksh

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

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


See the detailed help for sqwmsq_RestoreDatabase.lib

sqwmsq_SetEnv.lib

shell functions library $gvsqw_MsqBin/../lib/sqwmsq_SetEnv.lib:
fonction to set env for Mssql

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

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


See the detailed help for sqwmsq_SetEnv.lib

sqwmsq_StatisticsDatabase.lib

shell functions library $gvsqw_MsqBin/../lib/sqwmsq_StatisticsDatabase.lib:
lib for sqwmsq_StatisticsDatabase.ksh

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

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


See the detailed help for sqwmsq_StatisticsDatabase.lib


menu


tools

sqwmsq_AlterDatabaseModifyLogGrowth.ksh

Script $gvsqw_MsqBin/../tools/sqwmsq_AlterDatabaseModifyLogGrowth.ksh:
Modify logs growth See the detailed help for sqwmsq_AlterDatabaseModifyLogGrowth.ksh

sqwmsq_AlterDatabaseRecoverySimple.ksh

Script $gvsqw_MsqBin/../tools/sqwmsq_AlterDatabaseRecoverySimple.ksh:
Modify recovery to SIMPLE See the detailed help for sqwmsq_AlterDatabaseRecoverySimple.ksh

sqwmsq_AlterDatabaseShrinkLogs.ksh

Script $gvsqw_MsqBin/../tools/sqwmsq_AlterDatabaseShrinkLogs.ksh:
Shrink logs See the detailed help for sqwmsq_AlterDatabaseShrinkLogs.ksh

sqwmsq_Crypt.ksh

Script $gvsqw_MsqBin/../tools/sqwmsq_Crypt.ksh:
Generic script to crypt file with openssl See the detailed help for sqwmsq_Crypt.ksh

sqwmsq_GenerateCreateInstance.ksh

Script $gvsqw_MsqBin/../tools/sqwmsq_GenerateCreateInstance.ksh:
Generate configure instance files See the detailed help for sqwmsq_GenerateCreateInstance.ksh

sqwmsq_ListAsyncFilesGlobal.ksh

Script $gvsqw_MsqBin/../tools/sqwmsq_ListAsyncFilesGlobal.ksh:
List Async files (sql, log, mail) to upload in SQWareCentral (all in a directory) See the detailed help for sqwmsq_ListAsyncFilesGlobal.ksh

sqwmsq_ListAsyncFiles.ksh

Script $gvsqw_MsqBin/../tools/sqwmsq_ListAsyncFiles.ksh:
List Async files (sql, log, mail) to upload in SQWareCentral See the detailed help for sqwmsq_ListAsyncFiles.ksh

sqwmsq_SetEnv.ksh

Script $gvsqw_MsqBin/../tools/sqwmsq_SetEnv.ksh:
set env for AliasFreeTds

Nuvola apps information.png
Note:
You can replace the file in $gvsqw_MsqBin/../tools/sqwmsq_SetEnv.ksh

by $gvsqw_MsqBin/../tools_cust/sqwmsq_SetEnv.ksh for all your environnement
or by $HOME/edtConfig/sqwmsq_SetEnv.ksh specifically for this user .

See the detailed help for sqwmsq_SetEnv.ksh

sqwmsq_TestInstConnection.ksh

Script $gvsqw_MsqBin/../tools/sqwmsq_TestInstConnection.ksh:
Test instance connection See the detailed help for sqwmsq_TestInstConnection.ksh

sqwmsq_TestMySQL.ksh

Script $gvsqw_MsqBin/../tools/sqwmsq_TestMySQL.ksh:
Generic test MySQL connection script See the detailed help for sqwmsq_TestMySQL.ksh

sqwmsq_TestSendmail.ksh

Script $gvsqw_MsqBin/../tools/sqwmsq_TestSendmail.ksh:
Generic test sendmail script See the detailed help for sqwmsq_TestSendmail.ksh

sqwmsq_Tis.ksh

Script $gvsqw_MsqBin/../tools/sqwmsq_Tis.ksh:
tsql connection for $lvsqw_InstanceParam See the detailed help for sqwmsq_Tis.ksh

sqwmsq_Uncrypt.ksh

Script $gvsqw_MsqBin/../tools/sqwmsq_Uncrypt.ksh:
Generic script to uncrypt file with openssl See the detailed help for sqwmsq_Uncrypt.ksh


help

Contains help files for "-s" option of bin scripts.


spm

SQL query toolkit
See the detailed help for spm