SAP ASE (Sybase) : reorg rebuild ‘with online’ option

de | 2018-01-14

L’option ‘with online’ de la commande reorg rebuild est disponible depuis ASE version >= 15.7 ESD#2 ou SP50 en Enterprise Edition.

A noter que depuis ASE version >= 12.5.4 la commande reorg rebuid pouvait se passer sur un index (et donc en mode « online »), la réorganisation complète d’une table étant plus rare, le manque de cette option ne s’est pas trop fait sentir.

Une limitation cependant, il faut que la table ait au moins un index unique pour que l’option fonctionne !

Commande SQL pour sortir les tables avec un index unique sur ASE :

/* Search tables with unique index */
select us.name + '.' + ob.name
from sysobjects ob join sysindexes i on (ob.id = i.id and i.status & 2 = 2)
join sysusers us on (ob.uid = us.uid)
where ob.type='U'
group by us.name + '.' + ob.name
order by 1
go

Commande rebuild « simple » :

reorg rebuild dbo.roysched
go

Commande rebuild « with online » :

reorg rebuild dbo.titles with online
go

Cette possibilité a été rajoutée dans la v4.0.02 de dbSQWare avec l’ajout de l’option -Online.

Commande dbSQWare rebuild « simple » :

./sqwsyb_RebuildAllDatabases.ksh -I SYB157 -Exec

Commande dbSQWare rebuild « with online » :

./sqwsyb_RebuildAllDatabases.ksh -I SYB157 -Online -Exec

Quelques options du script de reorg :

./sqwsyb_RebuildDatabase.ksh -h

Usage: sqwsyb_RebuildDatabase.ksh [-h] -S|-I <dataserver> [+ options]

DESCRIPTION
   sqwsyb_RebuildDatabase.ksh Rebuild of tables
SUPPORT
   Sybase supported versions: 12.0 <= v <= 16.0

PARAMETERS
     -S|-I  dataserver  : Target dataserver.
     -D  database       : Database name.
OPTIONS
     -h  help           : Display the full usage.
     -s                 : Display samples of usage.
     -Online            : Add 'with online' when ASE version >= 15.7 ESD#2 or SP50 and Enterprise edition.
     -NoMail            : Desactivate sendmail on error xxx@gmail.com (by default, send on error).
     -SizeMaxTable Size : Take into account tables =< $lvsqw_SizeMaxTable Mb (by default, 10000 Mb).
     -SizeMinTable Size : Take into account tables >= $lvsqw_SizeMinTable Mb (by default, 1 Mb).
     -CLT RatioMinTable : Min cluster ratio for table (default 80 %).
     -CLI RatioMinIndex : Min cluster ratio for index (default 80 %).
     -FRT  return_code  : Force return code value on error.
     -AddMail email     : Email Address to add at 'xxx@gmail.com'.
     -SendReport        : Send execution log report.
     -Dist              : For distant connection to database (change $gvsqw_DbaUser to $gvsqw_DistDbaUser ).
     -Exec              : Run reorg (default, display generated commands).

Ayez le réflexe wiki pour la dernière version de l’aide : http://wiki.dbsqware.com/index.php?title=SQWareProduction:sybase:bin:sqwsyb_RebuildDatabase.ksh

Laisser un commentaire