Ein Mechanismus zum Verwalten des gleichzeitigen Zugriffs auf gemeinsam genutzte Daten oder Ressourcen, indem vorübergehend exklusiver Zugriff auf die Prozesse gewährt wird, die die Sperre anfordern.
Der Ausführungsplan für Abfragen zeigt standardmäßig keine Sperrdetails an. Ist es möglich, die Sperren zusammen mit dem Typ anzuzeigen, der während der Ausführung einer Abfrage erfasst wurde?
In der Nacht habe ich viele Probleme mit Zeilensperren. Der umstrittene Tisch scheint ein bestimmter Tisch zu sein. Dies ist im Allgemeinen, was passiert - Entwickler 1 startet eine Transaktion über den Oracle Forms-Frontend-Bildschirm Entwickler 2 startet eine andere Transaktion aus einer anderen Sitzung und verwendet dabei denselben Bildschirm ~ …
Ich habe eine Tabelle, die ungefähr 15 Millionen Datensätze enthalten wird. Jetzt muss ich der Tabelle einen Index hinzufügen. Das Hinzufügen eines Index dauert einige Zeit, um jeden Eintrag in der Tabelle zu aktualisieren. Ich bin ziemlich verwirrt, ob das Hinzufügen des Index zu Ausfallzeiten führen wird. Wenn ja, wie …
Ich stehe vor einigen wiederkehrenden Deadlocks, von denen einer ein Keylock ist und eine SELECT-Abfrage mit XLOCK-Hinweis enthält, die zum Deadlock-Opfer wird. Die andere Anweisung ist ein INSERT in eine der Tabellen, die Teil der Ansicht der ersten Abfrage ist. Aussicht: create view dbo.viewE as select * from dbo.E where …
Ich habe zwei Tische. Eine ist eine Protokolltabelle; Ein anderer enthält im Wesentlichen Gutscheincodes, die nur einmal verwendet werden können. Der Benutzer muss in der Lage sein, einen Gutschein einzulösen, der eine Zeile in die Protokolltabelle einfügt und den Gutschein als verwendet markiert (durch Aktualisieren der usedSpalte auf true). Natürlich …
Wir haben kürzlich unsere Produktionsinstanzen von SQL 2008 R2 auf brandneue SQL 2014-Server migriert. Hier ist ein interessantes Szenario, das wir bei der Verwendung von Service Broker entdeckt haben. Betrachten Sie eine Datenbank Broker Enabled = truemit MyServiceund MyQueue. Die Behandlung von Giftnachrichten ist in dieser Warteschlange deaktiviert. Es gibt …
Vorwort Unsere Anwendung führt mehrere Threads aus, die DELETEAbfragen parallel ausführen . Die Abfragen wirken sich auf isolierte Daten aus, dh es sollte keine Möglichkeit bestehen, dass DELETEin denselben Zeilen von separaten Threads gleichzeitig etwas auftritt. Gemäß der Dokumentation verwendet MySQL jedoch die sogenannte "Next-Key" -Sperre für DELETEAnweisungen, die sowohl …
Wie implementiert man optimistisches Sperren in MySQL richtig? Unser Team hat festgestellt, dass wir # 4 unten ausführen müssen, da sonst das Risiko besteht, dass ein anderer Thread dieselbe Version des Datensatzes aktualisieren kann. Wir möchten jedoch bestätigen, dass dies der beste Weg ist, dies zu tun. Erstellen Sie ein …
Ich versuche zu verstehen, wie die Sperrzeit für die Abfragen, die in unserem langsamen MySQL-Abfrageprotokoll angezeigt werden, am besten interpretiert werden kann. Zum Beispiel, wenn eine UPDATE-Abfrage eine Sperrzeit von 10 Sekunden hat. Ich nehme an, es ist die Gesamtzeit, nachdem die Aktualisierungsabfrage die Sperre erhalten hat. Selbst wenn darauf …
Die Liste der Isolationsstufen in SQL Server gefunden hier heißt es, dass Schreibsperren innerhalb einer Transaktion erworben werden bis zum Ende der Transaktion beibehalten. Es wird jedoch nichts darüber erwähnt, wann diese Sperren erworben wurden. Werden Sperren standardmäßig zu Beginn einer Transaktion erworben oder nur dann, wenn sie benötigt werden? …
Ich muss eine eindeutige (pro Zeile) Revisionsnummer in einer document_revisions-Tabelle behalten, in der die Revisionsnummer für ein Dokument gilt, sodass sie nicht für die gesamte Tabelle, sondern nur für das zugehörige Dokument eindeutig ist. Ich habe mir anfangs etwas ausgedacht wie: current_rev = SELECT MAX(rev) FROM document_revisions WHERE document_id = …
Können wir wissen, welcher Datensatz gesperrt ist, wenn ein Datensatz gesperrt ist? Wie kann ich die Datensatz-Rowid oder andere Informationen erhalten? Ich kann einige Informationen von diesem SQL bekommen SELECT c.ROW_WAIT_OBJ#,c.ROW_WAIT_FILE#,c.ROW_WAIT_BLOCK#,c.ROW_WAIT_ROW# FROM v$locked_object a, dba_objects b, v$session c WHERE a.object_id = b.object_id AND a.SESSION_ID = c.sid(+) Ich habe im Web …
Wir müssen sicherstellen, dass in Oracle nur eine Kopie einer bestimmten Prozedur ausgeführt wird. Wenn es bereits ausgeführt wird und ein Benutzer versucht, ein anderes zu öffnen, sollte ein Fehler auftreten. Was ist die beste Methode dafür?
Wir haben ein Problem festgestellt, nachdem wir die Datenbank unseres Kunden auf einen zusätzlichen Server verschoben haben. Dies hätte sich positiv auf die Leistung der Site auswirken sollen, es gibt jedoch ein Problem mit der Tabellensperre in MyISAM. (Ich habe von der Verwendung von InnoDB anstelle von MyISAM gehört, aber …
Ich führe die folgende (Dummy-) Abfrage aus CREATE TABLE large_temp_table AS SELECT a.*, b.*, c.* FROM a LEFT JOIN b ON a.foo = b.foo LEFT JOIN c ON a.bar = c.bar Angenommen, die Abfrage dauert 10 Minuten. Wenn Sie versuchen, die Werte in den Tabellen a, b oder c während …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.