MySQL ==> PDO

Hier können Probleme und alles andere in Deutscher Sprache gelöst werden.
HadleyB
Regular
Posts: 837
Joined: Sat Feb 11, 2006 11:47 pm

MySQL ==> PDO

Post by HadleyB »

Gibt es eine Möglichkeit, seine MySQL-Datenbank nach PDO zu konvertieren? Ich habe immer wieder mal Probleme mit dem MySQL-Service von Knallhart, sodaß ich darüber nachdenke.
mfg
Hadley
yellowled
Regular
Posts: 7111
Joined: Fri Jan 13, 2006 11:46 am
Location: Eutin, Germany
Contact:

Re: MySQL ==> PDO

Post by yellowled »

Mich würde das ja eher dazu bringen, über einen anständigen™ Webhoster nachzudenken.

YL
bernd_d
Regular
Posts: 468
Joined: Thu Jun 03, 2010 9:28 am
Contact:

Re: MySQL ==> PDO

Post by bernd_d »

Mal blöd gefragt: PDO ist laut http://php.net/manual/de/intro.pdo.php nur eine Variante in PHP um auf MySQL-Datenbanken zuzugreifen. Das ändert doch rein gar nix daran, dass weiterhin MySQL läuft?!? Was/Wie soll man da also was konvertieren?
onli
Regular
Posts: 2828
Joined: Tue Sep 09, 2008 10:04 pm
Contact:

Re: MySQL ==> PDO

Post by onli »

Wenn s9y einen PDO-Mysql-Wrapper hätte, könnte man in der Datenbank-Konfiguration einfach von mysql/mysqli auf PDO wechseln, so wie man jetzt von mysql auf mysqli wechseln kann. Bernd hat recht, das ist nur die Zugriffsart auf die gleiche Datenbank, da muss nichts an der Datenbank geändert werden. Aber es würde auch ncihts helfen, wenn die Datenbank selbst das Problem ist.
HadleyB
Regular
Posts: 837
Joined: Sat Feb 11, 2006 11:47 pm

Re: MySQL ==> PDO

Post by HadleyB »

Ich kann einen Blog mit MySQL starten, oder mit einer, direkt auf dem Webspace liegenden PDO::SQlite (oder so ähnlich). Wenn ich meinen Blog nun neu mache und mich für eine PDO-Datenbank entscheide, dann müsste ich alle 500 Artikel von Hand in den neuen Blog einfügen. Das wäre eine verdammte Menge Arbeit. Deswegen meine Frage, ob man die MySQL-Datenbank mit irgendeinem Konverter in eine PDO::SQLite umwandeln kann und schon sind alle Probleme gelöst.
mfg
Hadley
onli
Regular
Posts: 2828
Joined: Tue Sep 09, 2008 10:04 pm
Contact:

Re: MySQL ==> PDO

Post by onli »

Das ist was anderes. Sqlite heißt die Datenbank, nicht PDO, PDO ist nur die Zugriffsart. Dafür könntest du den Importer nutzen - einfach umstellen auf sqlite, wahrscheinlich muss dann noch die serendipity_config_local.inc.php gelöscht werden, den Blog neu installeiren udn dabei Sqlite auswählen, und dann im Importer die alten Mysql-Zugangsdaten angeben.

Sqlite ist hervorragend, aber es ist eine Datenbank in einer Datei. Das gilt als nicht geeignet für Blogs mit höheren Zugriffszahlen, es dürfte schlechtere Performance haben als Mysql.

Auf jeden Fall brauchst du vorher ein Backup.
yellowled
Regular
Posts: 7111
Joined: Fri Jan 13, 2006 11:46 am
Location: Eutin, Germany
Contact:

Re: MySQL ==> PDO

Post by yellowled »

onli wrote:Sqlite ist hervorragend, aber es ist eine Datenbank in einer Datei. Das gilt als nicht geeignet für Blogs mit höheren Zugriffszahlen, es dürfte schlechtere Performance haben als Mysql.
Ich gebe zusätzlich zu bedenken, dass ich mich fragen würde, ob ein Hoster, der nicht einmal stabiles MySQL hinkriegt, etwas in dem Bereich eher exotisches wie Sqlite wohl besser hinkriegt.

YL
onli
Regular
Posts: 2828
Joined: Tue Sep 09, 2008 10:04 pm
Contact:

Re: MySQL ==> PDO

Post by onli »

Füq Sqlite muss man eigentlich nichts machen, außer eine halbwegs vernünftige Festplatte dazuhaben. Da sind aber gerade vserver oft beschissen. Ansonsten ist die Idee nicht völlig verkehrt, wenn die Mysql-Probleme wirklich gravierend (d.h. regelmäßige Abstürze des Datenbankservers, wirklich und gemessen miserable Performance) sind und der Blog wenige Aufrufe hat.

Aber es ist immer noch nahezu ein Blogumzug, einfach genug wenn alles klappt, aber wenn es schief läuft… wäre mir wohl zu riskant.
HadleyB
Regular
Posts: 837
Joined: Sat Feb 11, 2006 11:47 pm

Re: MySQL ==> PDO

Post by HadleyB »

Also ich habe 200 bis 500 Zugriffe am Tag. Meine MySQL-Datenbank ist jetzt knapp 5 MB groß. In S9Y kann man doch zwischen SQlite und PDO::SQlite unterscheiden und ich hatte schon das Gefühl, dass die PDO::SQLite mehr Funktionen bietet.
mfg
Hadley
onli
Regular
Posts: 2828
Joined: Tue Sep 09, 2008 10:04 pm
Contact:

Re: MySQL ==> PDO

Post by onli »

Was meinst du mit Funktionen?

Serendipity bietet keine unterschiedlichen Funktionen je nach Datenbank, höchstens verweigert mal ein Plugin den Dienst. Die Fähigkeit der Datenbank selbst ändert sich nicht durch die Anbindung, auch wenn z.B. zwischen den Anbindungen mysql und mysqli durchaus Unterschiede bestehen - die wir aber nicht wirklich nutzen. Mir ist nicht bewusst, dass PDO::Sqlite mehr kann als die normale SQLite Anbindung, und meiner Erinnerung nach sind die im Code fast immer synonym.

Aber 200-500 Zugriffe sollte eine sqlite-DB durchaus bewältigen können. Wie gesagt, skaliert afaik mit der Festplatte.
HadleyB
Regular
Posts: 837
Joined: Sat Feb 11, 2006 11:47 pm

Re: MySQL ==> PDO

Post by HadleyB »

Ja, ich meinte das mit dem PDO mehr Plugins laufen, ich hatte so daß Gefühl. Aber wie konvertiere ich die Datenbank nun?
mfg
Hadley
HadleyB
Regular
Posts: 837
Joined: Sat Feb 11, 2006 11:47 pm

Re: MySQL ==> PDO

Post by HadleyB »

http://http.ag/uploads/media/Knallhart_JA_2011.pdf

Das ist die GUV meines Providers Knallhart. Ich dachte immer, das ist eine riesige Firma mit Millionenumsätzen. Da hab ich mich wohl getäuscht.
mfg
Hadley
onli
Regular
Posts: 2828
Joined: Tue Sep 09, 2008 10:04 pm
Contact:

Re: MySQL ==> PDO

Post by onli »

Ich hab das oben eigentlich schon geschrieben:

Du würdest deinen Blog neu installieren, also einfach die serendipity_config_local.inc.php löschen. Im Installer dann sqlite als Datenbank auswählen. Nach der Installation im Importer serendipity auswählen und mit den alten mysql-Zugangsdaten die alte Datenbank importieren.

Nichts für ungut, aber: Wenn dir das nicht von alleine klar ist, würde ich das eher sein lassen. Die Chance, dass was schiefgeht (ich weiß z.B. nicht, wie gut der Importer derzeit funktioniert) und du dann nicht weiter kommst ist relativ hoch. Am besten spielst du das erstmal lokal auf deinem Rechner in einer Testinstallation durch.
mattsches
Regular
Posts: 440
Joined: Sat Nov 05, 2005 9:35 pm
Location: Wiesbaden, Germany
Contact:

Re: MySQL ==> PDO

Post by mattsches »

Ich bin immer noch verwirrt und versuche das daher mal aufzudröseln.

MySQL und SQLite sind grundsätzlich verschieden Datenbanktypen bzw. Datenbankmanagementsysteme (DBMS). MySQL ist ein Datenbankserver, der zusätzlich zum Webserver läuft, und in der PHP-Welt wohl die am meisten verwendete Lösung darstellt. SQLite dagegen ist eine Programmbibliothek, die keinen zusätzlichen Server benötigt. Die Daten werden einfach in einer speziellen Datei auf der Festplatte des Webservers gespeichert.

Auf beide Systeme kann PHP mittels PDO (PHP Data Objects). Für jedes System gibt es eigene Treiber, z.B. PDO_MYSQL oder eben PDO_SQLITE. Ja, PDO ist moderner, aber das ist in der Regel nur für Programmierer relevant.

Wenn du deine Daten jetzt schon in einer SQLite-Datenbank liegen hast, solltest du theoretisch in Serendipity einfach zwischen "sqlite" und "pdo-sqlite" umschalten können, und alles funktioniert noch. Wenn du deine Datein in einer MySQL-Datenbank liegen hast, würde ich davon abraten, diese zu SQLite zu konvertieren, außer du hast wirklich triftige Gründe dafür, wie onli schon geschrieben hat. Ich würde mir höchstens testhalber mal ein zweites Blog mit SQLite installieren und dort die Daten deines Originalblogs importieren (ohne am Original etwas zu ändern, sicher ist sicher).

Möglicherweise wäre es in deinem Fall sinnvoller, wenn du dich nach einem anderen Webhoster umsiehst. MySQL-Ausfälle sollte es eigentlich so gut wie gar nicht geben, dafür läuft MySQL nämlich im Normalfall einfach zu stabil :wink:
HadleyB
Regular
Posts: 837
Joined: Sat Feb 11, 2006 11:47 pm

Re: MySQL ==> PDO

Post by HadleyB »

Bin schon dabei mich umzusehen und schwanke zwischen HostEurope (da habe ich einen VServer) und Strato. 1&1 kommt nicht in frage, da dort die Anzahl der Dateien auf dem Webspace auf 256.000 begrenzt ist, was die wenigsten wissen dürften.

http://www.hadley.de/cms/archives/11391 ... teien.html

Meines Wissens nach ist es nicht möglich, auf eine MSQ-Datenbank zuzugreifen, die nicht beim gleichen Provider liegt (S9Y-Importer) oder irre ich mich da? Das würde ja auch schon alleine wegen der verschiedenen Pfade gar nicht gehen.
mfg
Hadley
Post Reply