mysql のユーザー テーブル内の root ユーザーの "host" 値を誤って変更してしまいました。
arancillary2125 (他のマシンの DNS 名) に変更したため、localhost に戻す必要がありますが、「localhost」に権限がないため、(PHPMYADMIN またはコマンド プロンプトから) mysql にアクセスできません。
Windows XP // apache // を実行しています
次の解決策を試しましたが、うまくいきませんでした。
mysql のユーザー テーブル内の root ユーザーの "host" 値を誤って変更してしまいました。
arancillary2125 (他のマシンの DNS 名) に変更したため、localhost に戻す必要がありますが、「localhost」に権限がないため、(PHPMYADMIN またはコマンド プロンプトから) mysql にアクセスできません。
Windows XP // apache // を実行しています
次の解決策を試しましたが、うまくいきませんでした。
おっと。
これはローカルマシンにあると思いますか?[スタート]->[ファイル名を指定して実行]で、「services.msc」と入力し、MySQLサービスを見つけます。サービスを停止します。
編集:
my.iniファイルを見つけます(通常はC:\ WindowsまたはC:\ mysqlなどにあります)。お持ちでない場合は作成してください。単なるASCIIファイルです。
ファイルを変更し、[mysqld]セクションに追加しますskip-grant-tables
。
コマンドラインでコマンドを発行しnet start MySQL
、しばらく待つと、MySQLサービスが開始されます。
まだコマンドラインで、コマンドを発行してmysql -u root
「ENTER」を押します。'root'ユーザーとしてMySQLにログインする必要があります。助成金を慎重に変更してからログアウトします。MySQLサービス/サーバーを停止します。my.iniファイルを再編集し、行を削除/コメントアウトしてskip-grant-tables
、サーバーを再起動します。rootとして再度ログインしてみてください。
WinXPProボックスでこれをテストしました。
これは基本的にすべての許可テーブルをバイパスする効果があるため、そのマシンからアクセスすることになっているのかどうかをわざわざ検索する必要はありません。
MySQLリファレンスマニュアル:-skip-grant-tablesオプション
だから私もこの問題を抱えていました、#1130で突然起こりました-ホスト'localhost'はこのMySQLサーバーに接続することを許可されていません。
検索して検索した後、bdlソリューションが前進していることがわかります。サーバーに再度ログインできるようになったら、my.inimysql構成ファイルの下の行skip-grant-tablesに関する権限を変更して削除できます。
私はbdlの投稿に賛成しただけだったでしょうが、ウェブサイトではまだそれを行うには新しすぎます。
arancillary2125 を再作成し (古いデスクトップの場合でも)、その方法で DB にアクセスします。