MySQLでユーザーを作成する

MySQLでユーザーを作成する方法のクイックステップバイステップガイド

MySQLをインストールした直後に、root利用可能なユーザー。

これは、MySQLが機能しているかどうかを確認するために使用する可能性のあるユーザーですが、他の種類の使用法のユーザーであってはなりません。

どうして?だってそれは強力すぎる

大きな力には大きな責任が伴います(スパイダーマンの叔父は言いました)。特に、間違えると大きな危険があります。

代わりに、ジョブを実行するための権限のみを持ち、それ以上は持たないアドホックユーザーを作成する必要があります。 Linuxまたは任意のUnixシステムを使用する場合も同じです。たとえば、次のように使用する必要はありません。rootユーザーですが、自分のユーザーアカウントです。

新しいユーザーを作成するには、を使用してMySQLに接続しますrootユーザー:

mysql -u root -p

次に、コマンドを使用します

CREATE USER '<username>'@'localhost' IDENTIFIED BY '<password>';

たとえば、という名前のユーザーを作成するにはtest_userパスワード付きtest_password12A次のコマンドを実行します。

CREATE USER 'test_user'@'localhost' IDENTIFIED BY 'test_password12A';

コマンドは次の行を返す必要がありますQuery OK, 0 rows affected (X.XX sec)

無効なパスワードを使用した場合、システムは次のように通知しますERROR 1819 (HY000): Your password does not satisfy the current policy requirements。この場合、MySQLをインストールしたときに、パスワードに特定のポリシーを使用するように指示したため、エラーはパスワードが十分に複雑ではないことを示しています。

それは素晴らしいことです!これでユーザーが作成され、そのユーザーを使用してMySQLに接続できます。コマンドラインから、次のように入力して終了できますQUIT、および入力:

mysql -u test_user -p

データベースを作成しようとすると、次のようなエラーが表示されます。ERROR 1044 (42000): Access denied for user 'test_user'@'localhost' to database 'testing'

どうして?ユーザーが新しいデータベースを作成する権限がありません

別のチュートリアルで、権限を操作する方法を説明します。

言及する価値があります@'localhost'ユーザーの作成に使用した文字列。これは、ユーザーがローカルホストからのみ接続できることをMySQLに通知します。これは、テストを行う場合や、MySQLに接続するアプリケーションがDBMSを実行するのと同じコンピューターで実行されている場合に問題ありません。

これが当てはまらない場合は、ユーザーが接続するIPを手動で入力するか、%ワイルドカード:

CREATE USER 'test_user'@'%' IDENTIFIED BY 'test_password12A';

作成したユーザーを削除する方法を示して、このチュートリアルを終了します。

DROP USER 'test_user'@'localhost';

その他のデータベースチュートリアル: