ホームページ >データベース >mysql チュートリアル >MySQL はリモート アクセスを許可しません

MySQL はリモート アクセスを許可しません

怪我咯
怪我咯オリジナル
2017-07-05 11:14:131430ブラウズ

MySQL リモート アクセスが許可されない理由は数多くあります。次の方法に加えて、サーバー セキュリティ を確認し、ローカル マシンへのアクセスを禁止する 3306 ポートを設定する必要もあります。

解決策:
1. テーブルのメソッドを変更します。
あなたのアカウントではリモート ログインが許可されておらず、ローカルホストのみが許可されている可能性があります。このとき、localhost のコンピューター上の mysql にログインし、「mysql」データベースの「user」テーブルの「host」項目を「localhost」から「%」に変更するだけです

コードは次のとおりです。

mysql -u root -pvmwaremysql>use mysql; 
mysql>update user set host = '%' where user = 'root'; 
mysql>select host, user from user;

2. 認可法。
たとえば、myuser に mypassword を使用して任意のホストから mysql サーバーに接続させたい場合。
GRANT オプションを使用して、*.* のすべての権限を 'mypassword' で識別された 'myuser'@'%' に付与します
FLUSH 権限
ユーザー myuser が IP を使用してホストから mysql サーバーに接続できるようにする場合192.168.1.6 、パスワードとして mypassword を使用します
GRANT オプションを使用して、*.* のすべての権限を 'myuser'@'192.168.1.3' に付与します
権限をフラッシュします
IP からのユーザー myuser を許可する場合。 192.168.1.6 ホストは mysql サーバーの dk データベースに接続し、パスワードとして mypassword を使用します
GRANT ALL PRIVILEGES ON dk.* TO 'myuser'@'192.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION; ;
私は最初の方法を使用していますが、最初は機能しなかったことがわかりました。オンラインで確認したところ、変更を有効にするために mysql>FLUSH RIVILEGES ステートメントを 1 つ少なく実行したことがわかりましたが、まだ試していません。個人的には、csdn.net にあります。探している場合は、
mysql がインストールされているマシンで実行してください:
1. d:mysqlbin>mysql -h localhost -u root //これは次のようになります。 MySQL サーバーに入ることができます
2. mysql>GRANT ALL PRIVILEGES ON * .* TO 'root'@'%' WITH GRANT OPTION //任意のホストにデータへのアクセス許可を与えます3. mysql>FLUSH PRIVILEGES //変更有効になります4.mysql>EXIT //
MySQL サーバーを終了します
以上です
他の
任意のホストに root としてログインします。

以上がMySQL はリモート アクセスを許可しませんの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。