MySQL per Komandozeile

  1. n8mensch

    n8mensch Thread Starter MacUser Mitglied

    Mitglied seit:
    04.01.2006
    Beiträge:
    10
    Zustimmungen:
    0
    Horido,

    ich Versuch' grade über Komandozeile etwas in meine MySQL Datenbank zu schreiben. Ich habe die Aktuelle Version des Server's installiert (5.0.18). Hat irgendwer ne Idee ?

    g
    n8m
     
    n8mensch, 29.01.2006
    #1
  2. nicolas-eric

    nicolas-eric MacUser Mitglied

    Mitglied seit:
    30.05.2005
    Beiträge:
    7.721
    Zustimmungen:
    10
    nicolas-eric, 29.01.2006
    #2
  3. oneOeight

    oneOeight MacUser Mitglied

    Mitglied seit:
    23.11.2004
    Beiträge:
    48.160
    Zustimmungen:
    3.885
    mysql -u user -p passwort < statements.sql
     
    oneOeight, 29.01.2006
    #3
  4. maceis

    maceis MacUser Mitglied

    Mitglied seit:
    24.09.2003
    Beiträge:
    16.696
    Zustimmungen:
    602
    Das Leerzeichen vor dem Passwort muss weg, oneOeight, es sei denn, die Datenbank heisst 'passwort' ;).
    Und eine Datenbank sollte natürlich auch abgegeben werden, es se denn, statements.sql beginnt mit einem use statement.

    Man kann aber auch eine interactive mysql Shell starten.
    Code:
    mysql -u [i]user[/i] -p [i]Datenbankname[/i]
    oder
    Code:
    mysql -u [i]user[/i] -p[i]passwort Datenbankname[/i]
     
    maceis, 29.01.2006
    #4
  5. MacEbola

    MacEbola MacUser Mitglied

    Mitglied seit:
    19.01.2004
    Beiträge:
    231
    Zustimmungen:
    0
    Seit wann wird der DB Name beim passwort mitübergeben, und woi st überhaupt der host?
    mysql -h $hostname -u $user $datenbanname -p $passwort

    außeder versucht er was reinzuscheiben und keine dumps einzuspielen, wobei man das auch als reinschreiben verstehen könnte.
     
    MacEbola, 29.01.2006
    #5
  6. Pingu

    Pingu MacUser Mitglied

    Mitglied seit:
    04.08.2003
    Beiträge:
    4.900
    Zustimmungen:
    341
    Weil zwischen der Option -p und dem eigentlichen Passwort kein Leerzeichen sein darf. Wenn dort ein Leerzeichen ist, interpretiert der Client dies als zwei verschiedene Argumente. Das erste Argument wird interpretiert als: interaktive Passworteingabe. Das zweite Argument (bei Dir $password) wird dann als Datenbankname interpretiert.
    Also richtig lautet es schon: mysql -h <host> -u <user> -p<password> <database>
    oder eben für eine interaktive Passworteingabe: mysql -h <host> -u <user> -p <database>

    Pingu
     
    Pingu, 29.01.2006
    #6
  7. maceis

    maceis MacUser Mitglied

    Mitglied seit:
    24.09.2003
    Beiträge:
    16.696
    Zustimmungen:
    602
    Ja, und wenn man den host weglässt wird eben standardmäßig localhost verwendet, wenn man den User weglässt, wird der aktuelle Benutzername verwendet, wenn man den Schalter -p weglässt, wird angenommen, dass die Datenbank kein Passwort hat (using password: NO) und wenn man $passwort weglässt, wird das Passwort interaktiv abgefragt.
    Die Datenbank kann man auch in der interaktiven mysql Shell wählen.

    Insofern lautet die Syntax also:
    Code:
    mysql [-h $hostname] [-u $user] [-p[$passwort]] [weitere Optionen] [$datenbanname]
    Das ist eigentlich sehr gut dokumentiert.
    Wenn es trotzdem noch Fragen gibt, bitte posten.
     
    maceis, 29.01.2006
    #7
  8. n8mensch

    n8mensch Thread Starter MacUser Mitglied

    Mitglied seit:
    04.01.2006
    Beiträge:
    10
    Zustimmungen:
    0
    wow super!

    danke erstmal fuer diese Zahlreichen Antworten! Wenn ich nun aber
    versuche einen mySQL Befehl abzusetzen sagt er mir:

    -bash: mysql: command not found

    Ich vermute das ich einfach nur irgendwo eine Pfadangabe machen
    muss (wie unter linux) damit das Binary von mySQL gefunden wird.
    In Linux wuerde ich das in der .bashrc machen aber funktioniert das
    dann auch wenn ich das z.b. per apple script dann aufrufe? Ich vermute
    das man das in OS X irgendwo Systemweit einstellen kann, habe nur
    leider keine Ahnung wo.

    Ich wuerde mich ueber ein paar Anregungen freuen.

    gruß
    n8m
     
    n8mensch, 29.01.2006
    #8
  9. Incoming1983

    Incoming1983 MacUser Mitglied

    Mitglied seit:
    23.07.2005
    Beiträge:
    7.545
    Zustimmungen:
    1
    hast du mysql überhaupt lokal installiert?

    oder mach mal:
    "locate mysql"
    dann zeigt er dir den Pfad an.
     
    Incoming1983, 29.01.2006
    #9
  10. n8mensch

    n8mensch Thread Starter MacUser Mitglied

    Mitglied seit:
    04.01.2006
    Beiträge:
    10
    Zustimmungen:
    0
    wenn ich "locate mysql" mache zeigt er mir allerhand zeux an, aber
    nicht meine installation in:

    /usr/locale/mysql/

    hab ich da bei der Installation irgendeinen Fehler gemacht ? Ich meine
    man konnte bei der Installation glaub' ich keine angaben machen, und im
    "bin" unterverzeichniss von mysql kann ich auch alles wunderbar
    ausfuehren (zumindest komme ich von da in die mySQL Shell rein ).

    gruß
    n8m
     
    n8mensch, 29.01.2006
    #10
Die Seite wird geladen...
Ähnliche Themen - MySQL per Komandozeile
  1. Bozol
    Antworten:
    0
    Aufrufe:
    179
    Bozol
    24.06.2017
  2. tdrocks
    Antworten:
    0
    Aufrufe:
    307
    tdrocks
    30.01.2017
  3. Knallgelber Hut

    MySQL

    Knallgelber Hut, 06.12.2009, im Forum: Mac OS - Unix & Terminal
    Antworten:
    11
    Aufrufe:
    1.292
    alexdavid
    05.05.2010
  4. catvarlog
    Antworten:
    9
    Aufrufe:
    816
    catvarlog
    16.10.2005
  5. Daria M.
    Antworten:
    8
    Aufrufe:
    1.264
    Daria M.
    16.11.2004