Spróbuj zrobić backup tej twojej bazy i zainstaluj mysql od początku.
To jest server wykupiony - nie na moim kompie i dlateog mam ograniczone prawa szczególnie do tablicy mysql.user!!!
Dam ci też dobrą radę - do administrowania MySQL-em używaj DBManager PRO... - świetne narzędzie i na dodatek darmowe
Do administracji używam MySQL-Front i na razie nie narzekam
Przy okazji dodam że ja do łączenia się z tą bazą używam komponentów MyDAC i jest rewelacyjny - nie kożysta z libmysql.dll - ale nie jest darmowy
Muszę miec darmowy komponent do użytku komercyjnego lub komponent zawierajacy sie w delphi 7 ent. Zresztą wolałbym juz nie zmieniać komponentu - zależy mi bardziej na rozwiązaniu poroblemu z tym kodowaniem hasla w nowszych wersjach serverów mysql (>4.1)
Zainstalowalem do testów u siebie MySQLa 4.1.11 i tam jest libMySQL.dll (1.02MB) ale z ta biblioteka mySQL.pas powoduje blad przy polaczeniu - access violation
Pytanie które pozostaje to przy pomocy jakiego komponentu (najlepiej z jakiegoś z delphi 7 ent) moge polaczyc sie z baza nowsza 4.1 gdzie wystepuje hashowanie hasel? Lub jak upgredować Tmysqlp.pas ?
Czy można do TMySQL dodać recznie hashowanie hasla by potem pasowało do wersji powyzej 4.1 mysqla ?
znalalzem cos takiego :
procedure hashPassword(pass:pchar; var res0,res1:longint);
var nr,add,nr2,tmp:int64;
i:longint;
e1:int64;
len:longint;
begin
nr:=1345345333;
add:=7;
nr2:=$12345671;
len:=length(pass)-1;
for i:=0 to len do
begin
if (Pass[i] = #20) or (Pass[i] = #9)then
continue;
tmp := $ff AND byte(Pass[i]);
e1:=(((nr and 63) +add)*tmp)+(nr shl 8);
nr:=nr xor e1;
nr2:=nr2+((nr2 shl 8) xor nr);
add :=add+tmp;
end;
res0 := nr AND $7fffffff;
res1 := nr2 AND $7fffffff;
end;