Précédent   Forum des professionnels en informatique > Bases de données > Sybase
Sybase Forum sur la base de données Sybase. Avant de poster -> F.A.Q Sybase, Tutoriels Sybase
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 10/07/2006, 16h37   #1
Candidat au titre de Membre du Club
 
Inscription : juillet 2002
Messages : 81
Détails du profil
Informations forums :
Inscription : juillet 2002
Messages : 81
Points : 14
Points : 14
Par défaut migration sybase 12.5 vers 15

Bonjour à tous,

je viens de migrer vers 15.0. l'installation c'est très bien passé. ensuite, j'ai loader mon dernier dump (de 12.5) tout c'est bien passé, jusqu'à la derniere commande (online database DBNAME) où sybase me dit qu'il y a des indexes suspect. J'ai résolu ce problème à l'aide des commande sp_indsuspect et dbcc reindex(table).
Mais lorsque je redémarre mon serveur d'application (resin) à un certain moment (une grosse requete) toujours le même, j'ai ce message d'erreur:
Code :
1
2
3
 
Can't allocate space for object 'temp worktable' in database 'tempdb' because 'system' segment is full/has no free extents.
If you ran out of space in syslogs, dump the transaction log. Otherwise, use ALTER DATABASE or sp_extendsegment to increase size of the segment.
Si quelqu'un pouvait me venir en aide...je commence à devenir fou...

Merci par avance!

Mike
mikew75 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/07/2006, 08h19   #2
Rédacteur/Modérateur
 
Inscription : janvier 2006
Messages : 1 301
Détails du profil
Informations personnelles :
Âge : 52

Informations forums :
Inscription : janvier 2006
Messages : 1 301
Points : 1 505
Points : 1 505
Envoyer un message via AIM à mpeppler
A priori le problème est que la base tempdb utilisée par la requète est trop petite.

Est-ce que vous avez agrandi tempdb dans votre installation 15.0?
Ou bien est-ce que vous utilisez des tempdb multiples, et le "binding" de celles-ci est incorrecte résultant dans l'utilisation d'une tempdb trop petite pour la requète?

Michael
__________________
Michael Peppler
Membre de TeamSybase - www.teamsybase.com

"A successful [software] tool is one that was used to do something undreamed of by its author." -- S. C. Johnson
mpeppler est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/07/2006, 10h37   #3
Candidat au titre de Membre du Club
 
Inscription : juillet 2002
Messages : 81
Détails du profil
Informations forums :
Inscription : juillet 2002
Messages : 81
Points : 14
Points : 14
Merci pour cette réponse.

Oui jai essayé d'agrandir ma tempdb mais sans résultat.
En revanche, comment puis-je savoir si j'utilise des tempdb multiples?
et comment verifier leur binding?

J'utilise Sybase 15.0 Windows DE


Merci bcp
mikew75 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/07/2006, 11h42   #4
Rédacteur/Modérateur
 
Inscription : janvier 2006
Messages : 1 301
Détails du profil
Informations personnelles :
Âge : 52

Informations forums :
Inscription : janvier 2006
Messages : 1 301
Points : 1 505
Points : 1 505
Envoyer un message via AIM à mpeppler
Si vous n'avez pas définit de tempdb supplémentaires alors il n'y en a sans doute qu'une. Pour être sur vous pouvez executer sp_helpdb qui devrait lister cette information.

Quel est la taille de la tempdb, et quelle est la taille de la table sur laquelle vous essayez de faire votre requète?

Est-ce que vous avez appliqué le dernier EBF pour la 15 (15.0 ESD 2) qui est dispo depuis env. trois semaines?

Michael
__________________
Michael Peppler
Membre de TeamSybase - www.teamsybase.com

"A successful [software] tool is one that was used to do something undreamed of by its author." -- S. C. Johnson
mpeppler est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/07/2006, 11h45   #5
Candidat au titre de Membre du Club
 
Inscription : juillet 2002
Messages : 81
Détails du profil
Informations forums :
Inscription : juillet 2002
Messages : 81
Points : 14
Points : 14
Michael,

merci beaucoup pour ces réponses:

voilà le résultat de sp_helpdb:

name db_size owner dbid created
status
-------------- ------------- ----- ------ ------------------
--------------------------------------------------------------------
SERVER 16384.0 MB sa 4 Jul 11, 2006
select into/bulkcopy/pllsort, trunc log on chkpt
master 13.0 MB sa 1 Jul 11, 2006
mixed log and data
model 3.0 MB sa 3 Jul 11, 2006
mixed log and data
sybsystemdb 1003.0 MB sa 31513 Jul 11, 2006
trunc log on chkpt, mixed log and data
sybsystemprocs 120.0 MB sa 31514 Jul 11, 2006
trunc log on chkpt, mixed log and data
tempdb 4.0 MB sa 2 Jul 11, 2006
select into/bulkcopy/pllsort, trunc log on chkpt, mixed log and data

2 questions, quelle tempdb est utilisée? sybsystempdb? ou tempdb?

non je n'ai pas encore appliqué le dernier EBF, je m'empresse de le faire...

Merci

Mike
mikew75 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/07/2006, 12h03   #6
Rédacteur/Modérateur
 
Inscription : janvier 2006
Messages : 1 301
Détails du profil
Informations personnelles :
Âge : 52

Informations forums :
Inscription : janvier 2006
Messages : 1 301
Points : 1 505
Points : 1 505
Envoyer un message via AIM à mpeppler
La base temporaire est tempdb. sybsystemdb est utilisée lors d'opérations multi-serveur (style CIS, remote procedure calls, etc).

Vous avez une tempdb de 4MB, pour une base applicative de 16GB, ce n'est à priori pas suffisant.

A vue de nez je suggèrerais une base tempdb de 512MB pour voir comment ça va...

Michael
__________________
Michael Peppler
Membre de TeamSybase - www.teamsybase.com

"A successful [software] tool is one that was used to do something undreamed of by its author." -- S. C. Johnson
mpeppler est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/07/2006, 12h11   #7
Candidat au titre de Membre du Club
 
Inscription : juillet 2002
Messages : 81
Détails du profil
Informations forums :
Inscription : juillet 2002
Messages : 81
Points : 14
Points : 14
est ce que cette commande est la bonne?
alter database tempdb on tempdb = '512M'
go

j'ai egalement lu, que la tempdb devait faire 80% de la taille de la base applicative???
mikew75 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/07/2006, 14h42   #8
Rédacteur/Modérateur
 
Inscription : janvier 2006
Messages : 1 301
Détails du profil
Informations personnelles :
Âge : 52

Informations forums :
Inscription : janvier 2006
Messages : 1 301
Points : 1 505
Points : 1 505
Envoyer un message via AIM à mpeppler
Premièrement il faut avoir un "device" sur lequel étendre la base tempdb.

Par example, si vos devices sont dans C:\SYBASE\datas:

Code :
1
2
3
4
 
disk init name='tempdb_dat', physname='c:\sybase\datas\tempdb.dat',
size='512m', dsync=false
go
Maintenant qu'on a un device, on étend la base sur ce device:

Code :
1
2
 
ALTER DATABASE tempdb ON tempdb_dat='512m'
Je suggère de consulter le manuel d'administration (System Administration Guide) pour plus d'information sur la gestion des devices dans Sybase.

Michael
__________________
Michael Peppler
Membre de TeamSybase - www.teamsybase.com

"A successful [software] tool is one that was used to do something undreamed of by its author." -- S. C. Johnson
mpeppler est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/07/2006, 16h22   #9
Candidat au titre de Membre du Club
 
Inscription : juillet 2002
Messages : 81
Détails du profil
Informations forums :
Inscription : juillet 2002
Messages : 81
Points : 14
Points : 14
Merci beaucoup...tout marche bien maintenant!
mikew75 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 10h35.


 
 
 
 
Partenaires

Hébergement Web