Forum: PC Hard- und Software SQL Abfrage per shell script


von SQLer (Gast)


Lesenswert?

Hallo zusammen

Frage zur ausführung eines UNIX Shellscriptes:

Ich habe folgendes Shellscript:
export.sh
mysql -u Benutzername -pPasswort
source /home/xy/export_all_to_csv.sql;
quit;
exit

aufruf mit: sh export.sh

die Anmeldung an die Datenbank klappt nur dann wartet mysql auf die 
Eingabe von oben ( source... usw.)

Wie kann ich MYSQL meine Abfrage automatisiert übergeben?

Ich möchte das export.sh script per cron ausführen lassen.

von Peter II (Gast)


Lesenswert?

man mysql

liefert:

shell> mysql db_name < script.sql > output.tab

von SQLer (Gast)


Lesenswert?

Die Ausgabedatei wird ja schon vom sql script erstellt.
SELECT ... INTO OUTFILE FROM ...;

von SQLer (Gast)


Lesenswert?

Könnte ein Admin diesen Post in das Forum "PC-Programmierung" 
verschieben ich hab mich verklickt. Danke

von g457 (Gast)


Lesenswert?

> Wie kann ich MYSQL meine Abfrage automatisiert übergeben?

Parameter, echo/stdin, stdin-redirect, here-string oder here-document 
regeln.

von Rolf Magnus (Gast)


Lesenswert?

SQLer schrieb:
> die Anmeldung an die Datenbank klappt nur dann wartet mysql auf die
> Eingabe von oben ( source... usw.)

Wie sollte das auch gehen? Das source-Kommando wird erstens erst 
ausgeführt, wenn dein mysql fertig ist und zweitens führt es das File in 
der Shell aus.

von g457 (Gast)


Lesenswert?

> Wie sollte das auch gehen?

Kuckst Du ein Posting weiter oben, da stehts wie das geht.

> Das source-Kommando wird [..] erst ausgeführt [..] wenn [..] mysql
> fertig ist [..]

Genau das will der TO ja nicht.

Nix für ungut.

von Ungläubiger (Gast)


Lesenswert?

mysql -u USER -pPASSWORT DATENBANK < DATEI.SQL

wichtig zwischen dem -p und Passwort kein leerzeichen

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.