ホームページ >データベース >mysql チュートリアル >MySQL が「localhost」を「127.0.0.1」とは異なる方法で扱うのはなぜですか?
MySQL localhost != 127.0.0.1?
この不一致は、ホスト名なしで呼び出されたとき、または「localhost」を使用して呼び出されたときの MySQL のソケットの使用が原因で発生します。 ' ホスト名。以下に示すように、ホスト名「127.0.0.1」で MySQL を使用すると TCP/IP ソケット経由で接続します:
$ mysql -u root -h 127.0.0.1 -e 'show tables' created_from_host; +-----------------------------+ | Tables_in_created_from_host | +-----------------------------+ | test | +-----------------------------+
ただし、「localhost」を使用すると UNIX ソケット経由で接続するため、次のエラーが発生します:
$ mysql -u root -h localhost -e 'show tables' created_from_host; ERROR 1049 (42000): Unknown database 'created_from_host'
すべてのホストからすべてのデータベースに対するすべての権限を付与する方法root?
「root」ユーザーに無制限の権限を付与するには、次の SQL ステートメントを実行します:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
追加の考慮事項:
以上がMySQL が「localhost」を「127.0.0.1」とは異なる方法で扱うのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。