qua: SSH-Connection ueber PHP

Hallo zusammen,

also, mein Anliegen:

ich bin zu faul, mich an meinem benachbarten Rechner, der als Linux-mySQL-Server dient, einzuloggen und myisamchk's zu machen, wenn es mir meine DB mal wieder zerschossen hat.
Also moechte ich mich von meinem Windowsrechner aus ueber SSH einloggen und myisamchk's laufen lassen. Das ganze per PHP.
Hat da jmd vllt ne Idee, wie ich eine SSH-Connection per PHP hinbekomme?
Die ganze Zeit google ich schon danach und finde nur irgendwas von SSH2-Packet runterladen fuer PHP4. Ich nutze jedoch PHP5. Das Packet gibt es auch nur fuer Linux.

q

  1. Hallo!

    Also moechte ich mich von meinem Windowsrechner aus ueber SSH einloggen und myisamchk's laufen lassen. Das ganze per PHP.

    Warum per php? Wie willst Du das ganze aufrufen?

    Du könntest z.B. per plink Befehle auf dem entfernten Server über SSH ausführen, halt über die Kommandozeile: http://the.earth.li/~sgtatham/putty/0.56/htmldoc/Chapter7.html#C7

    Du könntest auch einen lokalen mysql-client verwenden, der (auch verschlüsselt) über Netzwerk auf den Server zugreift.

    Oder ein PHP-Script auf dem Server, welches Du per HTTPS aufrufst.

    Hat da jmd vllt ne Idee, wie ich eine SSH-Connection per PHP hinbekomme?
    Die ganze Zeit google ich schon danach und finde nur irgendwas von SSH2-Packet runterladen fuer PHP4. Ich nutze jedoch PHP5. Das Packet gibt es auch nur fuer Linux.

    Vielleicht hilft Dir http://pecl.php.net/package/ssh2/ (http://snaps.php.net/win32/PECL_5_0/php_ssh2.dll), weiß aber nicht ob es dazu irgendwo eine Doku gibt.

    Grüße
    Andreas

    --
    SELFHTML Feature Artikel: http://aktuell.de.selfhtml.org/artikel/
    1. Hallo!

      warum einfach, wenns auch kompliziert geht? ;)

      Du könntest z.B. per plink Befehle auf dem entfernten Server über SSH ausführen, halt über die Kommandozeile:

      Putty hab ich schon, geht ja auch alles perfekt....

      Du könntest auch einen lokalen mysql-client verwenden, der (auch verschlüsselt) über Netzwerk auf den Server zugreift.

      Ist nicht genau das, was ich wollte....

      Oder ein PHP-Script auf dem Server, welches Du per HTTPS aufrufst.

      negative, sir. mein Linux-Server kann noch kein PHP, muss ich ihm erst beibringen...

      Vielleicht hilft Dir http://pecl.php.net/package/ssh2/

      Danke, da war ich schon... das meinte ich, dass das nur für Linux ist... (tar-file - ich weiss, Packer koennen auch tar sprechen- das entpackte zaehlt... damit kann ich nix anfangen....)

      (http://snaps.php.net/win32/PECL_5_0/php_ssh2.dll), weiß aber nicht ob es dazu irgendwo eine Doku gibt.

      Schade, genau die brauch ich. Ist ja nett, die .dll, aber wohin damit?
      Wie alle php-dll's in /php/ext/? Neustart des Listeners bringt auch kein Ergebnis... Er bindet die dll offensichtlich nicht ein. Also Umgebungsvariablen setzen unter XP? In der php5.ini die Pfadangaben stimmen, es sei denn ich hab was uebersehen...

      q

      1. Hallo!

        warum einfach, wenns auch kompliziert geht? ;)

        Ich verstehe nicht was Du willst!

        Putty hab ich schon, geht ja auch alles perfekt....

        Du kannst plink per shell-Funktionen aus PHP nutzen - ohne die Putty-Gui!

        Vielleicht hilft Dir http://pecl.php.net/package/ssh2/
        Danke, da war ich schon... das meinte ich, dass das nur für Linux ist... (tar-file - ich weiss, Packer koennen auch tar sprechen- das entpackte zaehlt... damit kann ich nix anfangen....)

        Für Windows gibt es die DLL unten

        (http://snaps.php.net/win32/PECL_5_0/php_ssh2.dll), weiß aber nicht ob es dazu irgendwo eine Doku gibt.

        Schade, genau die brauch ich. Ist ja nett, die .dll, aber wohin damit?

        Lies die PHP-Doku: http://de3.php.net/manual/en/install.pecl.php.

        Das Paket ist allerdings beta.

        Grüße
        Andreas

        --
        SELFHTML Linkverzeichnis: http://aktuell.de.selfhtml.org/links/
      2. Hallo!

        Du könntest auch einen lokalen mysql-client verwenden, der (auch verschlüsselt) über Netzwerk auf den Server zugreift.
        Ist nicht genau das, was ich wollte....

        Warum eigentlich? Hast Du MySQL explizit so konfiguriert dass es nur lokal erreichbar ist? Das ist per default nicht der Fall. So kannst Du lokal einen graphischen MySQL-Client nehmen, oder ein Kommandozeilentool, welches Du z.B. auch über PHP verwenden kannst. Oder Du tunnelst die Verbindung durch SSH, mit Hilfe von Putty kein Problem, das geht dann auch wenn MySQL nur lokal erreichbar ist.

        Grüße
        Andreas

        --
        SELFHTML Tipps & Tricks: http://aktuell.de.selfhtml.org/tippstricks/
  2. 你好 qua,

    ich bin zu faul, mich an meinem benachbarten Rechner, der als
    Linux-mySQL-Server dient, einzuloggen und myisamchk's zu machen, wenn es
    mir meine DB mal wieder zerschossen hat.

    Also, deine Datenbank sollte eigentlich gar nicht kaputt gehen. Wenn sowas
    passiert, dann ist da irgendwas anderes falsch und du solltest dir eher
    Sorgen darum machen als nach Arbeitsersparnis zu suchen.

    再见,
     CK

    --
    Wer sich zu überschwänglich freut, wir später Grund zum Weinen haben.
    http://wwwtech.de/
    1. Also, deine Datenbank sollte eigentlich gar nicht kaputt gehen. Wenn sowas
      passiert, dann ist da irgendwas anderes falsch und du solltest dir eher
      Sorgen darum machen als nach Arbeitsersparnis zu suchen.

      Wenn man keine Ahnung hat [...] egal.
      Danke. Eine DB kann schon kaputt gehen, wenn sie knapp 20GB gross ist... Im Indexfile stand ein Datensatz mehr, als im Datenfile. Das passiert hin und wieder mal. Besonders, wenn man diese Datenmengen mehrmals von einen Server auf den naechsten mit scp schaufelt.

      -egal-

      q

      1. 你好 qua,

        Also, deine Datenbank sollte eigentlich gar nicht kaputt gehen. Wenn
        sowas passiert, dann ist da irgendwas anderes falsch und du solltest dir
        eher Sorgen darum machen als nach Arbeitsersparnis zu suchen.

        Wenn man keine Ahnung hat [...] egal.

        Hehe, starke Worte, Hasi.

        Danke. Eine DB kann schon kaputt gehen, wenn sie knapp 20GB gross ist...

        Nein, kann sie eigentlich nicht. Dann ist entweder in deinen Programmen
        was kaputt und wie du mit den Daten umgehst, oder mit deiner Datenbank.

        Im Indexfile stand ein Datensatz mehr, als im Datenfile. Das passiert
        hin und wieder mal. Besonders, wenn man diese Datenmengen mehrmals von
        einen Server auf den naechsten mit scp schaufelt.

        MySQL-Datenbank-Files koennen genau dann kaputt gehen, wenn man den
        Datenbankserver vor dem Kopieren nicht anhaelt... da kann dann auch
        wesentlich mehr kaputt gehen. Das ist nicht erlaubt, dafuer solltest du
        mysqlhotcopy benutzen. Wenn du das anders machst bist du selber Schuld
        und verdienst Strafe. Wie gesagt, damit kannst du auch wesentlich mehr
        kaputt machen...

        再见,
         CK

        --
        If God had a beard, he'd be a UNIX programmer.
        http://wwwtech.de/
        1. Hehe, starke Worte, Hasi.

          nicht wahr? ;)

          Im Indexfile stand ein Datensatz mehr, als im Datenfile. Das passiert
          hin und wieder mal. Besonders, wenn man diese Datenmengen mehrmals von
          einen Server auf den naechsten mit scp schaufelt.

          MySQL-Datenbank-Files koennen genau dann kaputt gehen, wenn man den
          Datenbankserver vor dem Kopieren nicht anhaelt... da kann dann auch
          wesentlich mehr kaputt gehen.

          -hust-
          ein /etc/init_d/mysql stop sollte es tun... schon klar. soweit war ich dann auch schon. Danke.

          und verdienst Strafe.

          Was ein Satz....
          Danke. Passt scho... habs geloest.

          q

          1. 你好 qua,

            Im Indexfile stand ein Datensatz mehr, als im Datenfile. Das passiert
            hin und wieder mal. Besonders, wenn man diese Datenmengen mehrmals von
            einen Server auf den naechsten mit scp schaufelt.

            MySQL-Datenbank-Files koennen genau dann kaputt gehen, wenn man den
            Datenbankserver vor dem Kopieren nicht anhaelt... da kann dann auch
            wesentlich mehr kaputt gehen.

            -hust-
            ein /etc/init_d/mysql stop sollte es tun... schon klar. soweit war ich
            dann auch schon. Danke.

            Dann sollten die Datenbank-Dateien auch nicht kaputt sein. Wie gesagt, das
            deutet auf schwerere Probleme hin. Und nein, das kopieren ist eher nicht der
            Grund.

            再见,
             CK

            --
            Microsoft: Where do you want to go today?
            Linux: Where do you want to go tomorrow?
            FreeBSD: Are you guys coming, or what?
            http://wwwtech.de/