PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : MySQL Versionsanzeige manipulieren



nepomuk
05.05.10, 03:30
hallo,
gibt es eine möglichkeit, die versionsanzeige zu manipulieren also das, was ausgegeben wird, wenn man SELECT VERSION(); eingibt?
ich hab leider ein geschlossenes programm wo wir ne mysql5 db hintersetzen müssen...aber das programm ne abgfrage hat, ob die DB neuer als 4.1 ist (sehr sinnvoll... :/)

danke & schönen gruß
nepo

lkwg82
05.05.10, 10:07
setze doch einen proxy zwischen und filtere raus/ändere

lkwg82
05.05.10, 10:15
kannst du etwas Perl?

dann sollte dir das hier helfen: http://sourceforge.net/projects/my-dexter/

habe gerade mal in den Code geschaut, ist auch gut lesbar und da kannste konkret bei Zeile 200 dein Kommando setzen. (So verstehe ich das, nciht ausprobiert)



if ($net{"SQL"} =~ /dex\_hallo/i) {

say_hallo();

$net{"SQL"} = "";

}

elsif ($net{"SQL"} =~ /dex\_show/i) {

dexter_show_cmd();

}

elsif ($net{"SQL"} =~ /dex\_exec/i) {

dexter_exec_cmd();

}

else {

net_write_to_server();

net_copy_server_to_client();

#net_read_from_server_to_client_buf();

#net_write_to_client();

}

nepomuk
05.05.10, 11:30
hallo, leider kann ich kein perl...

lkwg82
05.05.10, 11:38
kannst du sonst programmieren?

marce
05.05.10, 11:45
hm, 'ne 5er ist eigentlich neuer als eine 4.1 :-)

-> Wird MySQL 5 von der Software offiziell überhaupt supportet? (-> was sagt der Hersteller dazu?) - ein paar Dinge haben sich da nämlich durchaus geändert...

nepomuk
05.05.10, 12:15
ich kann php und grob csharp
die sql befehle der software (select/insert usw.) sind editierbar, aber nicht der connect und die abfrage nach der version, die software selbst nutzt 4.0 und 4.1 ist schon zu hoch (damals gab es wohl noch nicht 4.1)

nepomuk
05.05.10, 12:15
den hersteller gibt es nicht mehr

Roger Wilco
06.05.10, 09:28
Du suchst MySQL Proxy (http://forge.mysql.com/wiki/MySQL_Proxy). Die Beispiele, die in den verlinkten Artikeln beschrieben werden, sollten sich für deinen Einsatzzweck einfach abändern lassen.

nepomuk
08.05.10, 16:40
hallo,
probier ich montag mal aus, danke für den tip

oziris
08.05.10, 19:08
Also ich hätte noch zwei, mehr oder weniger komplizierte Ansätze, vorzuschlagen:
1. a) Den Quellcode besorgen und die Versionsnummer darin ersetzen und dann compilieren.
1. b) Mit einem Hex-Editor, oder so, die Versionsnummer in der Binärdatei ersetzen.
2. Mit sowas hochgradig gefährlichem, wie Ettercap, den Datenstrom im Netzwerk manipulieren.

Das Erste setzt früher an als der bereits vorgeschlagene Proxy und das Zweite setzt später als dieser an. Mit dem Zweiten kannst Du Dir aber versehentlich, vorrübergehend das ganze Netzwerk lahmlegen, also da muss man vorsichtig sein und benötigt eine entspr. Erlaubnis.

pferdefreund
10.05.10, 06:24
und wenn das Fremdprogramm statisch gelinkt ist und sich die API von MYSQL geändert hat, gehts
eh in die Hose.