Datenbank Speichererweiterung

Ich wähle in MySQLDumper das Backup der Datenbank. Beim Wiederherstellen wähle ich "Kodierung der Backup-Datenbank: utf8mb4". Nach dem Import einiger Datensätzen erscheint diese Fehlermeldung:

MySQL-ERROR
MySQL meldet:
Variable 'character_set_client' can't be set to the value of 'NULL'

Fehler bei der Anfrage:
/*!40101 SET character_set_client = @saved_cs_client */;

/*!40101 SET character_set_client = @saved_cs_client */; -> Variable 'character_set_client' can't be set to the value of 'NULL'
 
Ok, ich hab keine Ahnung von diesen ganzen MySQL-(PHP-)-WebTools. Ich kenne nur die Kommandozeilenprogramme (mysqldump, mysql). Der MySQLDumper scheint auch nicht mehr aktiv entwickelt zu werden. Glaub nicht, dass das was ausmacht, aber nur so am Rande: https://www.mysqldumper.de/

Meine ursprüngliche Antwort bezog sich darauf, dass die Fehlermeldung ja sagt, dass kein "character_set_client" gesetzt ist (Variable 'character_set_client' can't be set to the value of 'NULL'). Deine Einstellung scheint also nicht zu wirken (oder sie setzt eine andere "charset" Variable).

Deshalb meine Ausführung in #60, wie du deine mysqldump.sql anpassen kannst um 'character_set_client' zu setzen. ich würde direkt 'utf8mb4' probieren statt 'utf8'. Du brauchst nur einen "Editor" und die Datei öffnen. Wie man das auf deinen Webspace am besten macht, keine Ahnung. Ich kenn nur "((v)root) server" mit richtiger Shell.


Du kannst auch einfach mal nach "character_set_client mysql" oder "character_set_client mysqldump" googlen, falls dus nicht eh schon gemacht hast. Vielleicht hilft dir das fürs weitere Verständnis.
 
Moin, Moin,

ein anderer Workaround.

Ich habe jetzt auf Rat eines Kollegen die Applikation MAMP auf meinem Mac installiert.

Die erfreulichen Nachrichten:
  • Bei Aufruf von „localhost“ erscheint die Meldung „It Works!“.
  • Bei Eingabe von „localhost“ plus Port greife ich über den Browser auf die Daten des Webspace und der Datenbank zu, die ich laut Anleitung in den entsprechenden htdocs-Ordner von MAMP gelegt habe.
  • Über phpinfo erhalte ich eine schöne Übersicht über alle Konfigurationseinstellungen von PHP, PhpMyAdmin, Apache und MySQL.
  • Bei Aufruf von PhpMyAdmin gelange ich endlich (!) ohne Fehlermeldung auf das Interface des PhpMyAdmin-Programms.
Die unerfreulichen Nachrichten:
  • Beim Aufruf meiner Website des Foodblogs über localhost: Port/foodblog erhalte ich die gleiche Fehlermeldung wie beim Aufruf auf dem externen Host: "Fehler beim Aufbau einer Datenbankverbindung".
  • Das PhpMyAdmin-Programm hat beim Import einer Datenbank das Dateigrößenlimit von 8 MB!
  • Ich kann über den lokalen Webserver von MAMP das Installations-Programm von MySQLDumper, dessen Ordner ich in den Ordner htdocs gelegt habe, wie auf dem Webspace des Hosters aufrufen, aber nicht bis zur Fertigstellung ausführen. Datenbankname, -nutzer und Passwort werden nicht angenommen, es wird keine komplette Installation durchgeführt, es erfolgt aber auch keine Fehlermeldung.
Meine Fragen:
  • Warum die gleiche Fehlermeldung des Foodblogs lokal wie im Webspace?
  • Wie erhöhe ich die maximale Dateigröße der zu importierenden Datenbank?
  • Wie bekomme ich MySQLDumper zum Laufen, um damit lokal die große Datenbank in PhpMyAdmin zu importieren?
Andere Lösungsvorschläge, wie ich mit diesem geänderten Workaround die Datenbank bearbeiten kann?

Grüße aus Hamburg

Thobie
 
Keine Ahnung was genau jetzt wie bei dir konfiguriert oder wo hinkopiert wurde, aber wenn du unter MAMP deinen Blog lokal aufrufen willst, musst du in der Konfigdatei deines Blogs auch die neue Datenbank mit Zugangsdaten von MAMP hinterlegen, in welche du den Dump eingespielt hast.
 
Korrekt. Das war auch mein Gedanke. Die Daten in der wp-config.php auf dem Mac für lokalen Zugriff sind noch die alten, also versucht die WP-Installation beim lokalen Zugriff auf die URL des Hosters zuzugreifen.

Liege ich damit richtig, die wp-config.php anpassen zu müssen?

Ich habe jetzt den Host angepasst. Auf unterschiedliche Arten:
  • localhost mit und ohne Slash
  • localhost: Port mit und ohne Slash
  • localhost: Foodblogordner mit und ohne Slash
Ich bekomme nach wie vor die Fehlermeldung:
Fehler beim Aufbau einer Datenbankverbindung

Kann doch nicht sein, oder?

Oder gibt es da spezielle Konfigurationsdaten von MAMP?
 
Bringt MAMP Wordpress mit?
Dann in dessen Verzeichnissen danach gucken.
 
Zum Grundverständnis, du hast einen:
  • Webserver (extern):
    • Wordpress
    • Datenbank mit zugehörigen Tabellen/Daten
  • MAMP auf dem Rechner (lokal):
    • Wordpress (Kopie der Dateien?)
    • Datenbank (Noch leer oder mit Dump der Tabellen/Daten?)
Willst du den Blog als Kopie unter MAMP testweise lokal haben, musst du:
  1. Die Wordpress-Dateien vom externen Webserver nach MAMP lokal kopieren
  2. Die exportierten/gesicherten Daten (Dump) der Datenbank in die Datenbank von MAMP einspielen
  3. Das lokale Wordpress unter MAMP so konfigurieren, dass es die unter MAMP laufende Datenbank nutzt.
Es gibt auch Webserveranbieter, welche die Kommunikation mit der Datenbank nur vom Webserver aus erlauben, als dass du von deinem lokalen Rechner keine direkte Verbindung dazu bekommst. Weiß jetzt nicht, ob dies mit am Problem liegt bzw. schon geprüft wurde.
 
Zum Grundverständnis, du hast einen:
  • Webserver (extern):
    • Wordpress
    • Datenbank mit zugehörigen Tabellen/Daten
Ja, bei meinem Hoster.
  • MAMP auf dem Rechner (lokal):
    • Wordpress (Kopie der Dateien?)
    • Datenbank (Noch leer oder mit Dump der Tabellen/Daten?)
Ja. Eine Kopie der WP-Installation im Rootverzeichnis von MAMP, wie von MAMP angegeben. Backup der DB vom Hoster, ebenfalls im von MAMP angegebenen Ordner. Und auch eine leere DB zum Importieren der alten DB mit MySQL.
Willst du den Blog als Kopie unter MAMP testweise lokal haben, musst du:
  1. Die Wordpress-Dateien vom externen Webserver nach MAMP lokal kopieren
Siehe oben.
  1. Die exportierten/gesicherten Daten (Dump) der Datenbank in die Datenbank von MAMP einspielen
Ergibt auch eine Fehlermeldung, weil die Dateigröße der DB bei MAMP ebenso eine Begrenzung hat wie die DB beim Hoster.
Es gelingt auch nicht über MySQLDumper, mit dem man in mehreren Schritten eine große DB importieren können soll.
  1. Das lokale Wordpress unter MAMP so konfigurieren, dass es die unter MAMP laufende Datenbank nutzt.
Das habe ich mit mehreren Einstellungen versucht, indem ich die wp-config.php-Datei geändert habe. Entsprechender DB-Name, Username, Passwort, Host. Nichts funktioniert. Es erscheint immer die Fehlermeldung: Fehler beim Aufbau einer Datenbankverbindung.
 
Versuche mal testweise eine neue Wordpressinstallation unter MAMP zu erstellen. Um erstmal herauszubekommen, was in Wordpress konfiguriert werden muss, dass es mit einer neuen leeren Datenbank funktioniert. Dies kannst du ja dann wieder löschen.


In der Dokumentation zu MAMP muss doch irgendwo stehen, wie du die Datenbankfunktionalität (mysql? localhost + port + ...) aktivierst und wie die lokalen Zugangsdaten dafür sind.
 
Moin, Moin, Tigion, der Rat ist einleuchtend. Dann werde ich das einmal so machen.
 
Moin, Moin, Tigion,

erst einmal die erfreuliche Nachricht: Die WP-Test-Installation über MAMP hat funktioniert. Ich habe die WP-Dateien in den entsprechenden Ordner gelegt, eine neue Datenbank in PhpMyAdmin erstellt und die Konfiguration abgeschlossen. Ich kann nun die Test-Installation lokal auf meinem Mac aufrufen.

Drei Dinge:
1. MAMP als kostenlose Software unterstützt nur eine Webinstallation. Daher müssen die Dateien der WP-Installation komplett ohne zusätzliche Dateien/Ordner in den Ordner htdocs. Also nicht in einen Ordner und dieser dann in htdocs, wie ich es bisher gemacht habe.

2. Die Verbindungdaten der WP-Installation zur Datenbank sind die folgenden:
Database Name: wordpress
Username: root
Password: root
Database Host: localhost

3. Die Datenbank, die ich in PhpMyAdmin angelegt habe, ist in PhpMyAdmin links in der Übersicht als neue Datenbank zu finden. Sie liegt im Ordner Programme/MAMP/db/mysql57. Allerdings als offener Ordner "wordpress" mit den entsprechenden Dateien für die Tabellen und Einträge in der Datenbank. Also keine Datei wordpress.sql. Wie die anderen Datenbanken eben vorliegen. Und exportiere ich die Datenbank aus PhpMyAdmin, landet sie als localhost.sql im Downloads-Ordner des Mac.

Wie verfahre ich jetzt weiter?
 
Wie erhöhe ich die maximale Dateigröße der zu importierenden Datenbank?

  • Wie bekomme ich MySQLDumper zum Laufen, um damit lokal die große Datenbank in PhpMyAdmin zu importieren?
Solche Vorgaben kann gewöhnlich nur der Hoster ändern.

Ich bin erstaunt, dass MySQLDumper überhaupt läuft bei Dir/Euch. Ich hab ihn entsorgt, weil er bei mir nicht mehr lief und auch nicht mehr gepflegt wird (war ein genialer Helfer!)…


PS: Webspace gibt es ja problemlos mit soviel Speicher und DB-Größe, wie man will (bzw. zu bezahlen bereit ist). Dafür braucht es ja keinen virteullen oder Managed Server. Die Mühe habe ich mir auch abgewöhnt. Insbesondere sicherheitstechnisch ist das von Normalmenschen, die nicht beruflich oder voll hobbymäßig Admin sind, nicht zu stemmen ,wie ja schon mehrere schrieben (das Aufsetzen des Servers ist nicht das Problem). Auch in Sachen Datenschutz ist es kaum noch „nebenbei“ zu leisten.
Bei Sicherheit geht es nicht darum, dass jemand Deine Inhalte klauen/löschen kann, sondern dass Dein Server für vielhunderttausendfache Straftaten benutzt werden kann (Phishing, DDoS- und andere Attacken, Botnetze und und und). Das Risiko würde ich nicht mehr eingehen.
 
Zu meinem 3. Punkt, den ich in meinem Post genannt habe: Mich wundert, dass die erzeugte Datenbank "wordpress" als offener Ordner mit entsprechenden Dateien als Inhalt vorliegt. Und keine (gepackte) Datei mit Dateiendung .sql, wie ich die Backups meiner Datenbank von meinem Hoster vorliegen habe.

Ich habe nun einmal über Google geschaut, wie man eine sql-Datei "entpacken" oder öffnen kann. Ich bin auf zwei Programme gestoßen, mit denen ich die Datenbank öffnen konnte, MySQLWorkBench und Navicat for MySQL. Die Datenbank scheint also zumindest nicht korrumpiert zu sein. Allerdings kann ich sie nicht in der Kodierung utf8 oder utf8mb4 öffnen, sondern in der Kodierung "latin1" (als Text?). Ich bekomme aber eine komplette Übersicht mit etwa 11.300 Zeilen Einträgen. Kann ich auf diesem Wege – Bereinigung und Optimierung – weiterkommen?
 
Ein paar allgemeine Punkte:
  1. Ich würde nicht an den von MySQL erzeugten Dateien herumspielen, sondern die Datenbanken und Tabellen nur über die PhpMyAdmin Oberfläche bearbeiten.
  2. Die exportierten sql-Dateien enthalten die Statements in SQL-Syntax, um die Tabellen und Daten über bspw. PhpMyAdmin wieder anlegen zu können.
  3. Eigentlich ist es egal, ob Wordpress oder andere Webseiten in Unterordnern von htdocs liegen. Dazu beim Aufruf der entsprechenden Seite einfach den Ordner an die URL hinten dran hängen. Bspw. localhost:8888/<folder>/<blog>/
  4. Ich denke, dein Ziel sollte erstmal sein, eine Kopie deines Blogs lokal auf deinem Rechner über MAMP ohne Optimierungen zum Laufen zu bekommen.
 
sondern in der Kodierung "latin1"
Willkommen in der mysql Kodierungshölle, da musst du gucken auf was die Datenbank kodiert ist vor dem Dump und auch vor dem Import, sonst hast nachher schön Salat.

Von deinen Posts merkt man aber, du musst dich noch in jede Menge Grundlagen einarbeiten. So einfach wie du dir gedacht hast, ist es nicht. ;)
 
  • Gefällt mir
Reaktionen: wegus
Ein paar allgemeine Punkte:
  1. Ich würde nicht an den von MySQL erzeugten Dateien herumspielen, sondern die Datenbanken und Tabellen nur über die PhpMyAdmin Oberfläche bearbeiten.
Okay, aber dazu muss ich die sql-Datei der DB erst einmal in PhpMyAdmin importieren können.
  1. Die exportierten sql-Dateien enthalten die Statements in SQL-Syntax, um die Tabellen und Daten über bspw. PhpMyAdmin wieder anlegen zu können.
Okay.
  1. Eigentlich ist es egal, ob Wordpress oder andere Webseiten in Unterordnern von htdocs liegen. Dazu beim Aufruf der entsprechenden Seite einfach den Ordner an die URL hinten dran hängen. Bspw. localhost:8888/<folder>/<blog>/
Das habe ich bisher auch so gemacht. Da MAMP aber die Test-Installation von WP im Ordner htdocs anlegt, ohne Unterordner, kopiere ich jetzt einmal die WP-Installation meines Blogs direkt in den Ordner htdocs. Eventuell ist dieser Punkt auch eine mögliche Fehlerquelle.
  1. Ich denke, dein Ziel sollte erstmal sein, eine Kopie deines Blogs lokal auf deinem Rechner über MAMP ohne Optimierungen zum Laufen zu bekommen.
Da hast Du vollkommen recht, das ist das Ziel, das ich habe. Aber bisher habe ich das nicht geschafft. Da mir nun die Zugangsdaten der erfolgreich installierten WP-Test-Version vorliegen, wie verfahre ich damit, um die WP-Installation des Blogs mit einer der Backups der DB einrichten zu können? Das ist nach wie vor mein Hauptproblem.

Ich habe auch keinen Hinweis zu der in die beiden Softwareprogramme importierten DB erhalten, ob ich diese irgendwie für die Reaktivierung meines Foodblogs – sei es lokal oder auf dem Webserver – verwenden kann.
 
Das ist ja bisher ein ganz schönes Gefrickel bei dir…

PhpMyAdmin hat eine "(server-seitige) standardisierte Upload-Begrenzung", welche man aber ändern kann.
Danach solltest du deine mySQL Datenbank importieren können – auch wenn sie größer oder groß ist.
Was Sache ist bekommst du mit phpinfo() heraus.

Ansatz: php.ini ändern > Apache Module Neustart
Beispiel:
(für eine temporäre Einstellung für den db-Import)
Code:
max_execution_time = 5000
max_input_time = 5000
memory_limit = 1000M
post_max_size = 750M
upload_max_filesize = 750M

Wordpress-System Dateien in den MAMP-Root kopieren und config.php mit den Verbindungsdaten anpassen.
Auch hier kann man bei MAMP den root selbst vergeben, wenn man ein anderes Verzeichnis haben möchte.
Schauen, WAS angegeben ist.

Einzig noch nachschauen, wie die Einstellungen bei MAMP gesetzt sind.
Kann sein, dass du Port :8888 oder :8890 (ssl) mit angeben musst, wenn du die locale domain im Browser aufrufen willst.

Auch nicht schlecht wäre es, zu wissen auf welcher php-Version dein Blog lief und ob die bei MAMP eingestellt ist.
Und ebenso wissenwert die mySQL-Version: MySQL version 5.5.3 or greater, you can use utf8mb4, if lower you should use utf8.

Und je nach dem welche MAMP Version du da installiert hast und ob dessen Testphase noch läuft (pro) oder
bereits nach Ablauf in Demo-Version wandelte, verändern sich dadurch u.a. die mySQL-Pfade und anderes.

PS:
Komplizierter wird es noch, falls du evtl. Wordpress als Multisite-Installation angelegt haben solltest.
Da müsste man evtl. den root in der wp-Datenbank noch vorher ändern, damit du die local aufrufen kannst usw.
 
Darunter war auch die Mailadresse und das Passwort, das ich für den Router nutze.

Ich nehme gern Ratschläge an, wenn sie fundiert und konstruktiv sind.
Fundiert und konstruktiv: Man verwendet nicht Mailadresse und gleiches Passwort für mehrere Dienste.
Unfundiert: Das sagt einem schon der gesunde Menschenverstand.
Moin, Moin, ich werde in meinem Foodblog angefeindet wegen ausgefallenen und extravaganten Rezepten.

Es handelt sich um Rezepte zur Zubereitung von Tieren, die in Deutschland laut Tierschutzgesetz nicht erlaubt sind.
Dann feinden Dich wohl Tierschützer an.

Was ich echt nicht verstehe, wenn man sich diese Threads vom TE so durchliest ... Wie kommt man so auf Dauer durch, dass man sich alles so verbraten lässt? ... Schritt für Schritt ... Noch ein Fehler, noch ein Fehler, noch ein Problem, noch ein Fehler, noch ein Trugschluss, noch eine Beratungsresistenz ...
 
  • Gefällt mir
Reaktionen: dg2rbf, Carmageddon und BEASTIEPENDENT
MySQL-ERROR
MySQL meldet:
Variable 'character_set_client' can't be set to the value of 'NULL'

Fehler bei der Anfrage:
/*!40101 SET character_set_client = @saved_cs_client */;


/*!40101 SET character_set_client = @saved_cs_client */; -> Variable 'character_set_client' can't be set to the value of 'NULL'
Der Dump exportiert den Inhalt der Umgebungsvariable 'charcter_set_client' aus der Konfiguration der alten MySQL-Installation. Bei einer neuen, einfachen Installation ist dieser Wert nicht gesetzt. Es wird dann mit dem Default von MySQL gearbeitet. Daher kann diese Variable auch nicht aus der Konfiguration gelesen werden.

Die saubere Lösung ist, den Wert der Variablen aus der alten Installation in Erfahrung bringen. phpMyAdmin bietet dazu eine Übersicht unter "Servervariablen und Einstellungen". Je nach Fensterbreite ist das unter "Mehr" versteckt. Die neue Installation sollte dann genauso konfiguriert werden. Anpassungen sollten erst nach dem erfolgreichen Import des Dumps vorgenommen werden. Ansonsten kann es bei Umlauten und weiteren Sonderzeiten bzw. sprachspezifischen Zeichen zu Fehlern kommen.

Die allgemeine Empfehlung im Internet lautet seit vielen, vielen Jahren, alle Systeme auf UTF-8 zu konfigurieren. MySQL verwendet aber als Default Latin-1 Schwedisch (der ursprüngliche Entwickler war Schwede). Mein bevorzugtes Character-Set für Datenbanken, Tabellen und Feldern ist übrigens utf8_unicode_ci. Das ist zwar etwas langsamer, aber das merkt man kaum. Dafür ist die Sortierung am korrektesten. "_ci" bedeutet, "Case insensitive", was die Suche erleichtert, weil nicht nach Groß- und Kleinbuchstaben unterschieden wird. Aber ACHTUNG: Manche Felder müssen case sensitive sein (also ohne _ci". Zum Beispiel Felder mit Passwörtern. Sonst match auch ein Kleinbuchstabe mit seinem Großbuchstaben und das will man nicht. Aber eigentlich sollten Passworte ohnehin nicht im Klartext gespeichert sein, sondern als Hash.
 
  • Gefällt mir
Reaktionen: dg2rbf und Difool
Das ist ja bisher ein ganz schönes Gefrickel bei dir … (…) PS: Komplizierter wird es noch, falls du evtl. Wordpress als Multisite-Installation angelegt haben solltest. Da müsste man evtl. den root in der wp-Datenbank noch vorher ändern, damit du die local aufrufen kannst usw.
Danke. Ich werde das alles morgen ausprobieren und berichten.
 
Zurück
Oben Unten