MySQL - SELECT * INTO OUTFILE LOCAL?
Bei einer kürzlichen Servermigration wurde eine Datenbank auf einen anderen Server verschoben, was den vorherigen verursachte Der Befehl „SELECT * INTO OUTFILE ...“ schlägt fehl. Während „LOAD DATA INFILE ...“ weiterhin funktionsfähig blieb, verwirrte das Fehlen einer entsprechenden Option „SELECT INTO OUTFILE LOCAL“ den Benutzer.
Erklärung für das Fehlen von „SELECT INTO OUTFILE LOCAL“
Im Gegensatz zu „LOAD DATA INFILE“, das aus einer lokalen Datei auf dem Server liest, soll „SELECT INTO OUTFILE“ eine Textdatei auf dem Server selbst generieren. Aus Sicherheitsgründen ist die Möglichkeit, Dateien auf externen Clients zu erstellen, eingeschränkt, weshalb „SELECT INTO OUTFILE LOCAL“ nicht funktioniert.
Alternative Lösung
Die Das Handbuch empfiehlt die Verwendung von MySQL in Kombination mit einer Umleitung, um die Datei auf dem Client-Host zu generieren, wie im folgenden Beispiel dargestellt:
mysql -h my.db.com -u usrname--password=pass db_name -e 'SELECT foo FROM bar' > /tmp/myfile.txt
Fähigkeit von MariaDB
Während die Da der Artikel MariaDB nicht ausdrücklich erwähnt, betrifft das Problem das Verhalten von MySQL und hat keinen direkten Einfluss auf die Funktionalität von MariaDB.
Das obige ist der detaillierte Inhalt vonWarum fehlt „SELECT * INTO OUTFILE LOCAL' in MySQL und wie kann ich das gleiche Ergebnis erzielen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!