Datenbankupgrade 19.02.2011 - 02:00

  • Antworten:5
Sven Woltmann
  • Admin
  • Staff
  • Forum-Beiträge: 1.922

19.02.2011, 01:31:49 via Website

Hallo zusammen,

ich werde um 2:00 die Datenbank auf MySQL 5.5 upgraden.
Dafür wird die Webseite für ca. 30 Minuten nicht erreichbar sein.
Das Upgrade an sich geht schnell, doch das Anfertigen einer Sicherheitskopie des 53 GB Datafiles wird vermutlich etwa 25 Minuten dauern.

Viele Grüße,
Sven

Svens Java-Entwickler-Blog: https://www.happycoders.eu

Antworten
Sven Woltmann
  • Admin
  • Staff
  • Forum-Beiträge: 1.922

19.02.2011, 03:03:29 via Website

Hallo,

es hat wie immer etwas länger gedauert als gedacht.
Seit 02:50 läuft AndroidPIT nun mit MySQL 5.5.

Viele Grüße,
Sven

Svens Java-Entwickler-Blog: https://www.happycoders.eu

Antworten
Andreas V.
  • Admin
  • Forum-Beiträge: 7.352

19.02.2011, 11:07:27 via App

Hallo Sven,

vielen Dank für das Upgrade. Dann werden die 500er hoffentlich der Vergangenheit angehören :)

Antworten
Sven Woltmann
  • Admin
  • Staff
  • Forum-Beiträge: 1.922

19.02.2011, 11:33:49 via Website

Das Upgrade allein wird vermutlich nicht reichen.
Ich muss noch die pessimistischen Locks in der Datenbank durch optimistische ersetzen, um ganz sicher zu gehen.
Das ist für Anfang nächster Woche geplant!

Svens Java-Entwickler-Blog: https://www.happycoders.eu

Antworten
Gelöschter Account
  • Forum-Beiträge: 2.006

19.02.2011, 12:11:06 via Website

Ich weiß zwar nicht, was ein Lock ist, aber es gibt tatsächlich pessimistische und
optimistische davon? :O

Wie muß ich mir das vorstellen?

Hängt da irgendwo so'n pessimistisches, den Weltuntergang erwartendes Lock traurig
in der Gegend rum und jammert dir die Ohren voll? :lol:

Bitte beachten! > AndroidPIT-Regeln

Antworten
Sven Woltmann
  • Admin
  • Staff
  • Forum-Beiträge: 1.922

19.02.2011, 12:31:07 via Website

Ein pessimistischer Lock sperrt eine Datenbanktabelle (oder besser gesagt: eine Page im File) während einer Änderung für andere Connections. Heißt: Wenn Verbindung A einen Datensatz ändern möchte, sperrt se ihn, ändert und gibt die Sperre wieder frei - solange kann Verbindung B den Datensatz nicht ändern. Bei mehreren Millionen Transaktionen am Tag kostet das erstens Performance und zweitens kann es immer wieder zu sogenannten Deadlocks kommen: Zwei Verbindungen warten auf die Freigabe einer Tabelle, die gerade von der jeweils anderen gelockt wird.

Ein optimistischer Lock ist kein tatsächlicher Lock. Stattdessen wird beim Speichern eines Datensatzes im Nachhinein geprüft, ob dieser in der Zwischenzeit von einer anderen Transaktion verändert wurde. Wenn ja, wird die Transaktion zurückgesetzt und neu gestartet. Das ist mehr Programmieraufwand, dafür aber wesentlich performanter.

Svens Java-Entwickler-Blog: https://www.happycoders.eu

Antworten