Inhaltsverzeichnis
Verarbeitung von PHP-Skripten
Auf diese Weise können Sie mehrere Dateien in einem Quellbefehl importieren. Es gab auch einige Probleme während
Heim Backend-Entwicklung PHP-Tutorial Zusammenfassung der Implementierung von massivem Datenimport und -export durch PHP+MySQL

Zusammenfassung der Implementierung von massivem Datenimport und -export durch PHP+MySQL

Apr 16, 2019 pm 01:25 PM
mysql php 数据导入导出

Vor einiger Zeit bestand die Notwendigkeit, einige Daten aus der Produktionsumgebung zum Testen auf den Testserver zu übertragen. Da ich nur die Daten eines bestimmten Kontos importieren muss, habe ich darüber nachgedacht, ein Skript zu schreiben, um die Daten in SQL-Anweisungen zusammenzusetzen und sie in SQL-Dateien zu exportieren, sie dann auf den Testserver zu übertragen und in MySQL zu importieren. Die Fantasie ist schön, aber der Prozess ist schmerzhaft. Fassen wir die folgenden Punkte zusammen.

Verarbeitung von PHP-Skripten

1 Die Idee des Skripts besteht darin, bestimmte Kontodaten abzufragen und diese in SQL-Textdaten zusammenzusetzen. Hierbei ist zu beachten, dass der Abfragewert gefiltert werden muss, da einige Felder einige unzulässige Zeichen enthalten, wie zum Beispiel: ' (einfaches Anführungszeichen), " (doppeltes Anführungszeichen), ` (das zweite von der oberen linken Ecke von Wenn SQL-Anweisungen ausgeführt werden, ändert sich der Wert, da das andere Ende des Abschlusses nicht gefunden werden kann. Daher müssen diese Zeichen ersetzt werden. Ich verwende die Funktion str_replace(), um diese Symbole auf leer zu setzen. Ich verwende die Funktion is_numeri, um festzustellen, ob es sich bei dem Wert um eine numerische Typstruktur handelt Anführungszeichen), aber es gibt ein Problem mit is_numeri. Einige Werte haben den Buchstaben e, es gibt auch true zurück,

Dies ist tatsächlich ein Problem, weil der Wert kann nicht in MySQL eingefügt werden, ohne „“ hinzuzufügen. >Später habe ich die Funktionen is_float() und is_string() gleichzeitig hinzugefügt, um zu bestimmen, ob der Wert in doppelte Anführungszeichen gesetzt werden muss 3

Da die Menge der exportierten Daten relativ groß ist, habe ich sie in vier PHP-Prozesse aufgeteilt, und ein Prozess führt 10.000 Benutzerdaten aus, was jedoch viel Zeit sparen kann Der gespeicherte SQL-Text muss ebenfalls unterschieden werden, da möglicherweise mehrere Prozesse gleichzeitig eine Textdatei schreiben. Es kam zu einem Datenverlust (ich habe es später herausgefunden und viel Zeit damit verbracht, die Daten wiederherzustellen)

4

. Verwenden Sie den Befehl tar -xcvf, um die SQL-Datei zu komprimieren und zu packen. Sie kann auf mehr als 700 MB komprimiert werden, und der Komprimierungseffekt ist immer noch gut

Daten in MySQL importieren

1

, aufgrund der relativ großen Datenmenge habe ich die Daten auch in mehrere Prozesse aufgeteilt um diese großen SQL-Dateien zu importieren

    mysql>source D:/www/sql/data.sql;
Nach dem Login kopieren
Die SQL-Datei enthält die Nutzungsdatenbank, daher gibt es hier keine Nutzungsdatenbank >Importieren Sie mehrere Dateien über den Quellbefehl , das die folgenden Befehle speichert Zum Beispiel:

    source c:/1.sql;
    source c:/2.sql;
Nach dem Login kopieren

Auf diese Weise können Sie mehrere Dateien in einem Quellbefehl importieren. Es gab auch einige Probleme während

:

erschien:

                                                         🎜>

Nach der Überprüfung liegt es an der. Menge Die Anzahl der Daten in einer einzelnen Tabelle ist groß, und das ist im Allgemeinen der Fall glaubte, dass MySQL SQL mit einer großen Datenmenge in einer einzelnen Tabelle einschränken würde

Lösung:

Ändern Sie die max_allowed_packet-GrößeOption 1, vorübergehend Änderung: Geben Sie den Befehl set global max_allowed_packet = size ein. (Beachten Sie, dass die Größe hier nur in Bytes angegeben werden kann. Nach dem Neustart des MySQL-Dienstes wird die Konfiguration ungültig! )

Option 2: Ändern Sie die Datei my.ini und fügen Sie max_allowed_packet=size im Abschnitt [mysqld] hinzu

2

Da der Quellbefehl den Positionierungsdatensatz nicht aufzeichnen kann Auf diese Weise wird eine Fehlermeldung angezeigt, sodass ich später auf die Linux-Shell-Methode umgestiegen bin, um

wie folgt zu importieren: sql.sh

  #!/bin/bash
    p="d:backup/sql.sql" //绝对路径
    User='abc'
    Password='123'
     
    mysql -u $User -p$Password -e "source $f"  2>err1.txt;//输出错误到文件中,方便后面查询     
    echo 'OK!'
Nach dem Login kopieren
Auf diese Weise finden Sie einige Fehlermeldungen, die die Fehlerbehebung erleichtern später.

MySQL-Video-Tutorial

Das obige ist der detaillierte Inhalt vonZusammenfassung der Implementierung von massivem Datenimport und -export durch PHP+MySQL. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So erstellen Sie Navicat Premium So erstellen Sie Navicat Premium Apr 09, 2025 am 07:09 AM

Erstellen Sie eine Datenbank mit Navicat Premium: Stellen Sie eine Verbindung zum Datenbankserver her und geben Sie die Verbindungsparameter ein. Klicken Sie mit der rechten Maustaste auf den Server und wählen Sie Datenbank erstellen. Geben Sie den Namen der neuen Datenbank und den angegebenen Zeichensatz und die angegebene Kollektion ein. Stellen Sie eine Verbindung zur neuen Datenbank her und erstellen Sie die Tabelle im Objektbrowser. Klicken Sie mit der rechten Maustaste auf die Tabelle und wählen Sie Daten einfügen, um die Daten einzufügen.

MySQL: Einfache Konzepte für einfaches Lernen MySQL: Einfache Konzepte für einfaches Lernen Apr 10, 2025 am 09:29 AM

MySQL ist ein Open Source Relational Database Management System. 1) Datenbank und Tabellen erstellen: Verwenden Sie die Befehle erstellte und creatEtable. 2) Grundlegende Vorgänge: Einfügen, aktualisieren, löschen und auswählen. 3) Fortgeschrittene Operationen: Join-, Unterabfrage- und Transaktionsverarbeitung. 4) Debugging -Fähigkeiten: Syntax, Datentyp und Berechtigungen überprüfen. 5) Optimierungsvorschläge: Verwenden Sie Indizes, vermeiden Sie ausgewählt* und verwenden Sie Transaktionen.

Die Zukunft von PHP: Anpassungen und Innovationen Die Zukunft von PHP: Anpassungen und Innovationen Apr 11, 2025 am 12:01 AM

Die Zukunft von PHP wird erreicht, indem sich an neue Technologietrends angepasst und innovative Funktionen eingeführt werden: 1) Anpassung an Cloud Computing, Containerisierung und Microservice -Architekturen, Unterstützung von Docker und Kubernetes; 2) Einführung von JIT -Compilern und Aufzählungsarten zur Verbesserung der Leistung und der Datenverarbeitungseffizienz; 3) die Leistung kontinuierlich optimieren und Best Practices fördern.

PHP vs. Python: Verständnis der Unterschiede PHP vs. Python: Verständnis der Unterschiede Apr 11, 2025 am 12:15 AM

PHP und Python haben jeweils ihre eigenen Vorteile, und die Wahl sollte auf Projektanforderungen beruhen. 1.PHP eignet sich für die Webentwicklung mit einfacher Syntax und hoher Ausführungseffizienz. 2. Python eignet sich für Datenwissenschaft und maschinelles Lernen mit präziser Syntax und reichhaltigen Bibliotheken.

So erstellen Sie eine neue Verbindung zu MySQL in Navicat So erstellen Sie eine neue Verbindung zu MySQL in Navicat Apr 09, 2025 am 07:21 AM

Sie können eine neue MySQL -Verbindung in Navicat erstellen, indem Sie den Schritten folgen: Öffnen Sie die Anwendung und wählen Sie eine neue Verbindung (Strg N). Wählen Sie "MySQL" als Verbindungstyp. Geben Sie die Hostname/IP -Adresse, den Port, den Benutzernamen und das Passwort ein. (Optional) Konfigurieren Sie erweiterte Optionen. Speichern Sie die Verbindung und geben Sie den Verbindungsnamen ein.

MySQL und SQL: Wesentliche Fähigkeiten für Entwickler MySQL und SQL: Wesentliche Fähigkeiten für Entwickler Apr 10, 2025 am 09:30 AM

MySQL und SQL sind wesentliche Fähigkeiten für Entwickler. 1.MYSQL ist ein Open -Source -Relational Database Management -System, und SQL ist die Standardsprache, die zum Verwalten und Betrieb von Datenbanken verwendet wird. 2.MYSQL unterstützt mehrere Speichermotoren durch effiziente Datenspeicher- und Abruffunktionen, und SQL vervollständigt komplexe Datenoperationen durch einfache Aussagen. 3. Beispiele für die Nutzung sind grundlegende Abfragen und fortgeschrittene Abfragen wie Filterung und Sortierung nach Zustand. 4. Häufige Fehler umfassen Syntaxfehler und Leistungsprobleme, die durch Überprüfung von SQL -Anweisungen und Verwendung von Erklärungsbefehlen optimiert werden können. 5. Leistungsoptimierungstechniken umfassen die Verwendung von Indizes, die Vermeidung vollständiger Tabellenscanning, Optimierung von Join -Operationen und Verbesserung der Code -Lesbarkeit.

PHP: Stirbt es oder passt es sich einfach an? PHP: Stirbt es oder passt es sich einfach an? Apr 11, 2025 am 12:13 AM

PHP stirbt nicht, sondern sich ständig anpasst und weiterentwickelt. 1) PHP hat seit 1994 mehreren Versionen für die Version unterzogen, um sich an neue Technologietrends anzupassen. 2) Es wird derzeit in E-Commerce, Content-Management-Systemen und anderen Bereichen häufig verwendet. 3) PHP8 führt den JIT -Compiler und andere Funktionen ein, um die Leistung und Modernisierung zu verbessern. 4) Verwenden Sie Opcache und befolgen Sie die PSR-12-Standards, um die Leistung und die Codequalität zu optimieren.

Wie man phpmyadmin öffnet Wie man phpmyadmin öffnet Apr 10, 2025 pm 10:51 PM

Sie können PhpMyAdmin in den folgenden Schritten öffnen: 1. Melden Sie sich beim Website -Bedienfeld an; 2. Finden und klicken Sie auf das Symbol phpmyadmin. 3. Geben Sie MySQL -Anmeldeinformationen ein; 4. Klicken Sie auf "Login".

See all articles