Shell / mysql script

Pagina: 1
Acties:

  • Aapie
  • Registratie: September 2004
  • Niet online
Hallo hier een vraagje over het automatisch door laten lopen van een mysql command.

Ik wil graag een log file automatisch weg schrijven in mysql.
Nu wil ik graag een shell script hebben die deze commando's achter elkaar doorlopend uitvoerd!
Als ik deze simpel achter elkaar neer zet in een shell script logt hij wel in maar loopt hij niet door,dus hij blijft op de "mysql>" command line staan wie kan mij helpen ?

Nu heb ik het volgende:

Mysql aanroepen en inloggen:
code:
1
/opt/lampp/bin/mysql -uroot -pww


Connecten naar database:

code:
1
Connect project


Logfile inporteren:
code:
1
2
LOAD DATA LOCAL INFILE '/root/project/bewerkt.txt' 
INTO TABLE Testtabel2  FIELDS TERMINATED BY ',' LINES TERMINATED BY ';' (Dag,Maand,Tijd,Send,Received,Srcip,Dstip,Srcport,Dstport);



Groeten Joost

  • LeLo
  • Registratie: Mei 2006
  • Niet online
Als je van al je SQL commando's een tekst bestand maakt, kun je misschien met 'type command.txt | /opt/lampp/mysql -uroot -pww' alles later starten.

Verwijderd

Hoi,

Je kun met een < een sql command file in "pipen" dan voert hij alle commando's achter elkaar uit. net als LeLo zegt maar dan in unix ipv windows...

mysql -u loguser -pww < /tmp/log.sql

en misschien moet je als laatste commando nog een "exit" geven?

  • Zwerver
  • Registratie: Februari 2001
  • Niet online
Verwijderd schreef op maandag 16 juni 2008 @ 11:35:
Hoi,

Je kun met een < een sql command file in "pipen" dan voert hij alle commando's achter elkaar uit. net als LeLo zegt maar dan in unix ipv windows...

mysql -u loguser -pww < /tmp/log.sql

en misschien moet je als laatste commando nog een "exit" geven?
Volgens mij hoeft die exit niet ;)

Woonachtig Down Under. Ik negeer je insults niet, maar tegen de tijd dat ik ze lees zijn ze meestal niet relevant meer


  • Spider.007
  • Registratie: December 2000
  • Niet online

Spider.007

* Tetragrammaton

Kun je niet beter gewoon meteen `mysqlimport` gebruiken ipv moeilijk te doen; zoals je hierboven lijkt te doen?

---
Prozium - The great nepenthe. Opiate of our masses. Glue of our great society. Salve and salvation, it has delivered us from pathos, from sorrow, the deepest chasms of melancholy and hate


  • Aapie
  • Registratie: September 2004
  • Niet online
Het is gelukt !

/opt/lampp/bin/mysql -uroot -pww database < command.sql < command1.sql

Bedankt !!

[ Voor 9% gewijzigd door Aapie op 16-06-2008 12:12 ]


  • Rainmaker
  • Registratie: Augustus 2000
  • Laatst online: 14-07-2024

Rainmaker

RHCDS

Zoiets kun je trouwens ook mooi oplossen met een "expect" script.

code:
1
2
3
4
INTRODUCTION
       Expect  is  a program that "talks" to other interactive programs according to a script.  Following the script, Expect knows what can be expected from a program and what
       the correct response should be.  An interpreted language provides branching and high-level control structures to direct the dialogue.  In addition, the  user  can  take
       control and interact directly when desired, afterward returning control to the script.

We are pentium of borg. Division is futile. You will be approximated.


  • Gotiniens
  • Registratie: November 2002
  • Laatst online: 29-01 08:52

Gotiniens

Fairly odd Tim

Rainmaker schreef op maandag 16 juni 2008 @ 12:38:
Zoiets kun je trouwens ook mooi oplossen met een "expect" script.

code:
1
2
3
4
INTRODUCTION
       Expect  is  a program that "talks" to other interactive programs according to a script.  Following the script, Expect knows what can be expected from a program and what
       the correct response should be.  An interpreted language provides branching and high-level control structures to direct the dialogue.  In addition, the  user  can  take
       control and interact directly when desired, afterward returning control to the script.
Het idee is echt geniaal (heb dit al meerdere keren nodig gehad) maar jammer dat het niet standaard installed is, dat maakt het gebruiken in shell scripts een stuk moeilijker. Aangezien je ze op zoveel mogelijk plekken wil kunnen draaien zonder gedoe.
Pagina: 1