MYSQL: mysql_fix_privilege_tables Problem
Matt
- datenbank
0 dedlfix
Beim Start des MySQL Dienstes auf dem SystemServer "Windows 2000 Server" mit Xampp (neueste Version) und MySQL 5.xx bringt mir die Ereignisanzeige von Windows folgende Meldung die ich gerne wegbekommen würde:
mysql.user table is not updated to new password format; Disabling new password usage until mysql_fix_privilege_tables is run
Kein Problem, dachte ich.
Über CMD logge ich mich in die Datenbank ein und geben folgenden Befehl ein (laut: http://dev.mysql.com/doc/refman/5.0/en/mysql-fix-privilege-tables.html) :
C:\Server\Xampp\mysql>bin\mysql --force mysql < scripts\mysql_fix_privilege_tables_sql.c --user=root --password=xxx
jedoch kommt der Fehler:
ERROR 1064 (42000) at line 21: Fehler in der SQL-Syntax. Bitte die korrekte Syntax im Handbuch nachschlagen bei 'password=""
und weiter unter meckert er über das ' vor dem password...
in der Datei existiert es aber nicht (editor geöffnet).
MySQL Check Upgrade (http://dev.mysql.com/doc/refman/5.0/en/mysql-upgrade.html) habe ich bereits ausgeführt, mit Status okay (überall). Bekomme die Meldung aber trotzdem noch...
Weiß jemand Rat?
Danke & Grüße,
Matt
echo $begrüßung;
C:\Server\Xampp\mysql>bin\mysql --force mysql < scripts\mysql_fix_privilege_tables_sql.c --user=root --password=xxx
ERROR 1064 (42000) at line 21: Fehler in der SQL-Syntax. Bitte die korrekte Syntax im Handbuch nachschlagen bei 'password=""
Die Optionen --user und --password sind Programmoptionen von bin/mysql. Die musst du auch da (vorn) notieren. Die Eingabeumleitung < darf erst danach stehen.
echo "$verabschiedung $name";
»» Die Optionen --user und --password sind Programmoptionen von bin/mysql. Die musst du auch da (vorn) notieren. Die Eingabeumleitung < darf erst danach stehen.
Klingt logisch, allerdings ändert das nichts an der Fehlermeldung ;-)
echo $begrüßung;
Klingt logisch, allerdings ändert das nichts an der Fehlermeldung ;-)
O.K. nächster Fehler ist, dass der Datenbankname nach den Optionen stehen muss (aber noch vor der Eingabeumleitung).
echo "$verabschiedung $name";
O.K. nächster Fehler ist, dass der Datenbankname nach den Optionen stehen muss (aber noch vor der Eingabeumleitung).
Danke für deine Mühe, aber auch das bringt denselben Fehler.
In der SQL Datei wird bereits die Datenbank bestimmt, diese existiert, ist richtig und eigentlich ist die SQL Datei bestimmt, den genannten Fehler (mysql.user table is not updated to new password format; ) zu korrigieren ;-)
Problem gelöst, wen es interessiert, liest weiter...
Danke trotzdem dedlfix!!!
Ich habe etwas ignoriert bzw. überlesen:
http://dev.mysql.com/doc/refman/5.0/en/mysql-fix-privilege-tables.html
dort steht:
Note: As of MySQL 5.0.19, mysql_fix_privilege_tables is superseded by mysql_upgrade, which should be used instead. See Section 5.5.8, “mysql_upgrade — Check Tables for MySQL Upgrade”.
ab zu Seite:
http://dev.mysql.com/doc/refman/5.0/en/mysql-upgrade.html
und Befehl ausgeführt:
mysql_upgrade --datadir=c:\mysql\data --b
asedir=c:\mysql --user=root --password=xxx
BINGO!! Fehler von gestern ;-)
echo $begrüßung;
O.K. nächster Fehler ist, dass der Datenbankname nach den Optionen stehen muss (aber noch vor der Eingabeumleitung).
Danke für deine Mühe, aber auch das bringt denselben Fehler.
Wie lautet nun deine Kommandozeile? Wenn die Datebank im Script scripts\mysql_fix_privilege_tables_sql.c ausgewählt wird, dann brauchst du sie ja auch der Kommandozeile nicht mehr anzugeben. Was mir aber gerade auffällt: Wieso heißt das Script .c? mysql hätte gern SQL-Statements. Dateien mit SQL-Statements werden aber eher mit .sql benannt. Die von dir angegebenen Seite spricht auch von .sql und nicht .c. Außerdem ist mysql_fix_privilege_tables normalerweise ein eigenständiger Befehl.
echo "$verabschiedung $name";
Das ist der Fehler mal nicht abgekürzt ;-)
ERROR 1064 (42000) at line 1: Fehler in der SQL-Syntax. Bitte die korrekte Synta
x im Handbuch nachschlagen bei 'password=""
host="localhost"
user="root"
sql_only=0
basedir="@prefix@"
verbose=0' in Zeile 1
ERROR 1064 (42000) at line 24: Fehler in der SQL-Syntax. Bitte die korrekte Synt
ax im Handbuch nachschlagen bei '*) old_style_password="$1"' in Zeile 1
ERROR 1064 (42000) at line 24: Fehler in der SQL-Syntax. Bitte die korrekte Synt
ax im Handbuch nachschlagen bei 'shift' in Zeile 1
ERROR 1064 (42000) at line 25: Fehler in der SQL-Syntax. Bitte die korrekte Synt
usw... usw...
ich könnte alle zeilen oben auskommentieren, dann rutscht das mit dem Fehler einfach immer in die nächsten Zeilen ^^