[解決済み] ホスト 'xxx.xx.xxx.xxx' はこのMySQLサーバーへの接続を許可されていません。
質問
簡単なことなのですが、私は
できない
どうしてもうまくいきません。
MySQLサーバーにリモートで接続しようとしているところです。
- として接続します。
mysql -u root -h localhost -p
- は正常に動作しますが、試してみてください。
mysql -u root -h 'any ip address here' -p
- はエラーで失敗します。
ERROR 1130 (00000): Host ''xxx.xx.xxx.xxx'' is not allowed to connect to this MySQL server
で
mysql.user
テーブルには、ホスト 'localhost' を持つユーザ 'root' のエントリと、ホスト '%' を持つ別のエントリがまったく同じように存在します。
どうしたらいいのかわからず、途方に暮れています。 どんなアイデアでも歓迎します。
どのように解決するのですか?
セキュリティ上の予防措置の可能性があります。新しい管理者アカウントを追加してみてはいかがでしょうか。
mysql> CREATE USER 'monty'@'localhost' IDENTIFIED BY 'some_pass';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'monty'@'localhost'
-> WITH GRANT OPTION;
mysql> CREATE USER 'monty'@'%' IDENTIFIED BY 'some_pass';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'monty'@'%'
-> WITH GRANT OPTION;
パスカルや他の人が指摘しているように、この種のアクセス権を持つユーザーをどのIPにも開放するのは良い考えとは言えません。もし管理ユーザが必要なら、rootを使い、それをlocalhostに置いてください。それ以外の場合は、必要な権限を正確に指定し、Pascalが提案するように、ユーザのアクセス権を制限してください。
編集する
MySQL FAQより。
が表示される原因がわからない場合 アクセス拒否された場合、ユーザー テーブルのすべてのエントリで、Host の値は、ワイルドカードを含む(エントリー または'_'文字を含むもの)。A 非常に一般的なエラーは、新しい のエントリは、Host='%'と User='some_user'だと思い込んでいます。 ローカルホストを指定することで は同じマシンから接続します。しかし これがうまくいかない理由は デフォルトの特権には のエントリは、Host='localhost' と User=''です。このエントリでは、ホスト の値である「localhost」よりも よりも具体的であるため、'%' が使用されます。 の場合、新しいエントリよりも優先されます。 ローカルホストからの接続 正しい 手順としては、2番目のエントリを挿入します。 で、Host='localhost' と User='some_user' とするか、あるいは のエントリは、Host='localhost' と User=''です。エントリーを削除した後 を発行することを忘れないでください。 ステートメントを使用して、グラントテーブルを再読み込みします。 また、項5.4.4, "アクセス 制御、ステージ1:接続 検証」を参照してください。
関連
-
[解決済み】MySQLエラー#1071 - 指定されたキーが長すぎる; キーの最大長は767バイトです。
-
[解決済み] MySql テーブル、エラー#1064 & エラー#1068 複数の主キーが定義されている [終了] 。
-
[解決済み] mysqladminのフラッシュホストでブロックを解除する方法
-
[解決済み] MySQLから最後のN行を選択する
-
[解決済み] MongoDBのようにMySQLにもTTLがあるのでしょうか?
-
[解決済み] mysql サーバーがクラッシュした -mysqld got signal 6
-
[解決済み] エラーコード1111。グループ関数の無効な使用
-
[解決済み] エラー 1698 (28000)。ユーザー 'root'@'localhost' のアクセスが拒否されました。
-
[解決済み] MySQL ERROR 1045 (28000)。ユーザー 'bill'@'localhost' (使用パスワード: YES)のアクセスが拒否されました。
-
[解決済み】macOSでbrew install mysqlをする。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】mysqladmin: 'localhost'でのサーバーへの接続に失敗しました。
-
[解決済み] 1030 ストレージエンジンからエラー28が発生しました
-
[解決済み] MySQL エラー 1093 - FROM 句で更新のターゲット テーブルを指定できません。
-
[解決済み] ローカルマシンからリモートDBをmysqldumpする方法
-
[解決済み] エラー 1044 (42000)。データベース 'db' へのユーザー ''@'localhost'' のアクセスが拒否されました。
-
[解決済み] MySQL エラー 1241。オペランドには1つのカラムが含まれている必要があります。
-
[解決済み] エラーコードです。1215. 外部キー制約を追加できません (外部キー)
-
[解決済み] MySQLの更新datetimeフィールド
-
[解決済み] MySQLの グループ関数の無効な使用
-
[解決済み] ERROR 1130 (HY000): ホスト '' はこの MySQL サーバーへの接続を許可されていません [重複] 。