ホームページ >データベース >mysql チュートリアル >MySQL ユーザーを作成するときに「%」と「localhost」の両方を使用するのはなぜですか?
複数のホスト仕様の必要性を理解する
MySQL ユーザーを作成するとき、ホストとして % を使用するかどうかという問題がよく発生します。または、% と localhost の両方を指定します。この議論は最近、appuser とサポート用に 4 つのアカウントの必要性に関するクエリで明らかになりました:
appuser@'%' appuser@'localhost' support@'%' support@'localhost'
ワイルドカード ホスト (%) とローカルホスト
の質問この問題は、開発者が 4 つのアカウントを作成することを主張したのに対し、データベース管理者はホストとして % を使用すれば十分であると主張したために起こりました。ただし、答えが正しく述べているように:
localhost は特殊なケースです:
MySQL では、localhost は UNIX ソケットまたは名前付きパイプ (Windows 上) を介して行われた接続を指します。 。これらの接続は、TCP/IP ソケット接続とは異なります。
ワイルドカード ホストは Localhost を除外します:
ホストとして % を使用すると、localhost を除くすべてのホストからの接続が許可されます。この除外により、ローカル アプリケーションからの接続に対応するために、% に加えて localhost を明示的に指定する必要がありました。
したがって、ローカル アプリケーションとリモート アプリケーションの両方が適切な権限でデータベースにアクセスできるようにするために、開発者の要求は正当化されました。
結論として、ユーザー権限を管理する際には、MySQL における localhost の特別な役割と、ホストと IP アドレスの違いを理解することが不可欠です。 % と localhost の両方を正しく指定することで、データベース管理者はセキュリティを維持しながら、さまざまなソースからのユーザーにアクセスを許可できます。
以上がMySQL ユーザーを作成するときに「%」と「localhost」の両方を使用するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。