Sie sind nicht angemeldet.

1

02.03.2009, 07:53

Mysql Shell Batch-Script mit Ausgabe-Umlenkung

Ich verwende das neu installierte Mysql DB Vers 5.0.70-r Gentoo-Paket zusammen mit phpMyAdmin oefters im Batch Modus und bin dabei auf ein Problem gestossen:

der Befehl (innerhalb einer While-Schlaufe)

/usr/bin/mysql -u root -proot vec_herden < $Line >> $LOGFILE

macht zwar die gewuenschen DB-Operationen, aber er verweigert die Umlenkung in eine Datei. Wie man sieht im beigefuegten Beispeiel, werden Umlenkungen auf der Schell-Ebene gemacht, nur diejenigen vom mysql werden vergessen.

nb) Die falschen "<" Zeichenin den Scripten sind beim Schreiben im KWrite entstanden und machen mir aber zZ keine Sorgen

Hat jemand einen Rat?

Vielen Dank
»sebu« hat folgende Datei angehängt:
  • Mysql_Aus.txt (857 Byte - 10 mal heruntergeladen - zuletzt: 03.03.2009, 20:37)

2

02.03.2009, 15:17

Habe momentan keinen zugriff auf die "Arbeitsrechner", macht aber sind mysql Info-ausgaben nicht error-Ausgaben?

Dann müsstest Du noch den Error-Bereich umleiten, z.B. mit 2>&1 (Leite alles was mit error zu tun hat auf die Normale Ausgabe, da Du diese umleitest ins Logfile ....
Meine Rechtschreibfehler sind gewollt und unterliegen dem Copyright des Verfassers, es sei denn, sie sind explizit unter die GPL gestellt .....

Außerdem sind sie ein Ausdruck der Persönlichkeit des Schreibers!

3

03.03.2009, 06:26

2>&1 bringt auch keine Meldung

Zum Glueck sind (auch bei mir) nicht alle Ausgaben Fehlermeldungen :P , aber selbst Fehlermeldungen werden vergessen.
Die Funktion "in File umlenken" ist in vielen Batch-Anwendungen aeusserst wichtig, ich hoffe immer noch, es ist ein Fehler meinerseits und nicht ein Systemfehler, trotzdem habe ich inzwischen auch eine Meldung an mysql.com gesendet...
Ueber allfaellige Ergebnisse von dieser Seite wuerde ich Dich natuerlich auch informieren.

Gruss Paul

4

03.03.2009, 10:08

"Also bei mir geht's" ... 8|

Quellcode

1
2
3
$ ls -l
total 4
-rw-r--r-- 1 dyle users 295 2009-03-03 10:05 test.sql

Quellcode

1
2
3
4
5
6
7
$ cat test.sql 
DELETE FROM  Property;
INSERT INTO Property (Name, Value) VALUES ('Test-1', 'Eins');
INSERT INTO Property (Name, Value) VALUES ('Test-2', 'Zwei');
INSERT INTO Property (Name, Value) VALUES ('Test-3', 'Drei');
INSERT INTO Property (Name, Value) VALUES ('Test-4', 'Vier');
SELECT * FROM Property;

Quellcode

1
2
$ mysql -u dyle -p -D test < test.sql &> test.out
Enter password: 

Quellcode

1
2
3
4
$ ls -l    
total 8
-rw-r--r-- 1 dyle users  59 2009-03-03 10:05 test.out
-rw-r--r-- 1 dyle users 295 2009-03-03 10:05 test.sql

Quellcode

1
2
3
4
5
6
$ cat test.out 
Name	Value
Test-1	Eins
Test-2	Zwei
Test-3	Drei
Test-4	Vier
http://www.dyle.org
IM-Account (Jabber!) sind auf meiner HP ...
There is no place like /home

http://www.gentooforum.de
http://www.gentoofreunde.org

<div>how to annoy a web developer?</span>

5

03.03.2009, 19:45

Das Problem war das SQL script

In den fuer den Test gewaehlten scripte waren keine SELECT Befehle sondern nur DROP , CREATE und ALTER Befehle, welche keine Ausgabe, sondern nur MYSQL Meldungen erzeugen.
Mit "select * from <table>" im script A.sql etc , wird auch die gesamte Liste, wie erhofft ausgegeben.
Besten Dank, Du hast mich aus dem Blackout gerettet.
Gruss Paul