|
You last visited: Today at 19:47
Advertisement
[DB]Crash
Discussion on [DB]Crash within the Flyff Private Server forum part of the Flyff category.
04/18/2014, 03:17
|
#1
|
elite*gold: 30
Join Date: Aug 2013
Posts: 187
Received Thanks: 32
|
[DB]Crash
Hi erstmal..
Wie der titel schon sagt hab ich das problem das meine db crasht...und ich nicht weiter weiß
Der Error:
query:{call CHARACTER_STR('U1','0000297','01','',?,?,?,?,?,?,? ,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,? ,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,? ,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,? ,?,?,?,?, 0, 0, 0,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)}
SQLSTATE:40001 error:[Microsoft][ODBC SQL Server Driver][SQL Server]Transaction (Process ID 12 was deadlocked on lock resources with another process and has been chosen as the deadlock victim. Rerun the transaction.
Danke schonmal im vorraus
|
|
|
04/19/2014, 01:09
|
#2
|
elite*gold: 0
Join Date: Feb 2012
Posts: 202
Received Thanks: 133
|
Falscher Aufruf der Prozedur.
Code:
query:{call CHARACTER_STR('U1','0000297','01','',?,?,?,?,?,?,? ,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,? ,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,? ,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,? ,?,?,?,?, 0, 0, 0,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)}
Die ? bilden normalerweise Platzhalter.
fehlerhafte Prozedur?
1. Geh in dein SQL Managment Studio
2. Meld dich wie gewohnt an und erweitere Rechts im Objekt-Explorer die DB CHARACTER_01_DBF
3. Wähle nun den Punkt Programmierbarkeit
4. Nun erweiterst du die Gespeicherten Prozeduren
5. Nun ein Rechtsklick auf dbo.CHARACTER_STR und anschließend auf "ändern" klicken
6. Du wirst zu den Abfragen Fenster weitergeleitet in der nun der Inhalt der Prozedur sichtbar ist.
7. Ersetze alles was im Abfrage Editor steht hiermit
8. Oben auf ausühren.
Wenn du Glück hast lag es nur daran das die Prozedur fehlerhaft ist, andernfalls musst du deine Source checken. Wie gesagt die ? sind eig Platzhalter wie bspw. Variablen. Und die ganzen "?" müssen eigentlich belegt sein.
andernfalls hast du wie gesagt die Möglichkeit mal ne andere Source zu nehmen, dann weisst du wenigstens das mit der DB alles in Ordnung ist sollte es mit den Offi Files klappen.
lg
|
|
|
04/19/2014, 01:55
|
#3
|
elite*gold: 0
Join Date: Jan 2009
Posts: 1,739
Received Thanks: 1,669
|
Quote:
Originally Posted by paddelx3
Falscher Aufruf der Prozedur.
Code:
query:{call CHARACTER_STR('U1','0000297','01','',?,?,?,?,?,?,? ,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,? ,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,? ,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,? ,?,?,?,?, 0, 0, 0,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)}
Die ? bilden normalerweise Platzhalter für Werte, bei dir ist jedoch ne Menge unbelegt, da ich Source technisch keine Ahnung hab kann ich dir nicht helfen, sollte der Deadlock durch nen Fehlerhaften Aufruf ausgelöst werden.
Ich würd dir empfehlen folgendes zu machen:
fehlerhafte Prozedur?
1. Geh in dein SQL Managment Studio
2. Meld dich wie gewohnt an und erweitere Rechts im Objekt-Explorer die DB CHARACTER_01_DBF
3. Wähle nun den Punkt Programmierbarkeit
4. Nun erweiterst du die Gespeicherten Prozeduren
5. Nun ein Rechtsklick auf dbo.CHARACTER_STR und anschließend auf "ändern" klicken
6. Du wirst zu den Abfragen Fenster weitergeleitet in der nun der Inhalt der Prozedur sichtbar ist.
7. Ersetze alles was im Abfrage Editor steht hiermit
8. Oben auf ausühren.
Wenn du Glück hast lag es nur daran das die Prozedur fehlerhaft ist, andernfalls musst du deine Source checken. Wie gesagt die ? sind eig Platzhalter wie bspw. Variablen. Und die ganzen "?" müssen eigentlich weg sein.
andernfalls hast du wie gesagt die Möglichkeit mal ne andere Source zu nehmen, dann weisst du wenigstens das mit der DB alles in Ordnung ist sollte es mit den Offi Files klappen.
lg
|
...bitte....lass es...sein...
Deadlocks können hin und wieder vorkommen, wenn Abfragen zu lange dauern. Ein Prozess greift auf eine Tabelle zu (lock) und gibt diese dann wieder frei. Dies geschieht meistens im ms Bereich, also nicht weiter schlimm.
Sind die Daten nun größer und der SQL Server braucht zu lange für eine Abfrage und ein anderer Prozess greift nun auch auf diese Daten zu, locken beide Prozesse an einem Objekt - man spricht nun vom Deadlock. Ein Prozess wird dabei "abgeschossen" (Deadlock victim), der andere wird freigegeben.
Wie verhindert man Deadlocks?
- Vernünftige Indizierung von Tabellen (suche hier mal nach "Deadlock Fixes", irgendjemand hat da mal etwas released...)
|
|
|
04/19/2014, 17:59
|
#4
|
elite*gold: 30
Join Date: Aug 2013
Posts: 187
Received Thanks: 32
|
Ja pumaaa aber der link von dem ist down <.<
|
|
|
04/19/2014, 20:28
|
#5
|
elite*gold: 10
Join Date: Sep 2010
Posts: 348
Received Thanks: 298
|
Deadlock Fix, der damals mal released wurde, glaube von Puma.
Greetz
|
|
|
All times are GMT +2. The time now is 19:47.
|
|