ホームページ  >  記事  >  データベース  >  mysqlでユーザーを追加する方法

mysqlでユーザーを追加する方法

青灯夜游
青灯夜游オリジナル
2021-12-31 15:27:2012892ブラウズ

ユーザーを追加する方法: 1. 「CREATE USER user IDENTIFIED BY 'password';」ステートメントを使用します; 2. 「GRANT priv_type ON database.table TO user IDENTIFIED BY 'password';」ステートメントを使用します。

mysqlでユーザーを追加する方法

このチュートリアルの動作環境: Windows7 システム、mysql8 バージョン、Dell G3 コンピューター。

MySQL がインストールされると、root という名前のユーザーがデフォルトで作成されます。このユーザーはスーパー権限を持ち、MySQL サーバー全体を制御できます。

MySQL の日常的な管理と運用では、誰かがデータベースを制御するために root ユーザーを悪意を持って使用することを防ぐために、通常、適切な権限を持つユーザーを作成し、root ユーザーの使用を最小限または最小限に抑えます。データへの安全なアクセスを確保するために、システムにログインすることが可能です。

MySQL では、ユーザーを作成するために次の 3 つの方法が提供されています。

  • #CREATE USER ステートメントを使用してユーザーを作成します

  • #mysql.user テーブルにユーザーを追加します
  • GRANT ステートメントを使用してユーザーを作成する
  • これら 3 つの方法を例に基づいて詳しく説明します。

1. CREATE USER ステートメントを使用してユーザーを作成しますCREATE USER ステートメントを使用して MySQL ユーザーを作成し、対応するパスワード。基本的な構文形式は次のとおりです:

CREATE USER <用户> [ IDENTIFIED BY [ PASSWORD ] &#39;password&#39; ] [ ,用户 [ IDENTIFIED BY [ PASSWORD ] &#39;password&#39; ]]

パラメータの説明は次のとおりです:

1) User

ユーザー アカウントの作成を指定します。形式は user_name'@'host_name です。ここで、user_name はユーザー名、host_name はホスト名 (ユーザーが MySQL に接続するために使用するホストの名前) です。作成プロセス中にホスト名を指定せずにユーザー名のみを指定した場合、ホスト名はデフォルトでホストのグループを表す「%」に設定され、すべてのホストにアクセス許可が与えられます。

3) IDENTIFIED BY 句

は、ユーザーのパスワードを指定するために使用されます。新規ユーザーには初期パスワードは必要ありません。ユーザーがパスワードを持たない場合は、この句を省略できます。

2) PASSWORD 'password'

PASSWORD は、ハッシュ値を使用してパスワードを設定することを意味します。このパラメータはオプションです。パスワードがプレーンな文字列の場合は、PASSWORD キーワードを使用する必要はありません。 「password」は、ユーザーがログインするために使用するパスワードを表し、一重引用符で囲む必要があります。

CREATE USER ステートメントを使用するときは、次の点に注意する必要があります。

    CREATE USER ステートメントでは、初期パスワードを指定する必要はありません。ただし、セキュリティの観点から、このアプローチはお勧めできません。
  • CREATE USER ステートメントを使用するには、mysql データベースの INSERT 権限またはグローバル CREATE USER 権限が必要です。
  • CREATE USER ステートメントを使用してユーザーを作成した後、MySQL は mysql データベースのユーザー テーブルに新しいレコードを追加します。
  • CREATE USER ステートメントでは、複数のユーザーを同時に作成できます。複数のユーザーはカンマで区切られます。
  • 新しく作成されたユーザーには権限がほとんどなく、権限を必要としない操作のみを実行できます。たとえば、MySQL にログインし、SHOW ステートメントを使用して、すべてのストレージ エンジンや文字セットなどのリストをクエリします。 2 人のユーザーのユーザー名は同じでホスト名が異なる場合、MySQL はそれらを 2 人のユーザーとして扱い、2 人のユーザーに異なる権限セットを割り当てることを許可します。

例 1

CREATE USER を使用してユーザーを作成します。ユーザー名は test1、パスワードは test1、ホスト名は localhost です。 SQL文と実行処理は以下のとおりです。

mysql> CREATE USER &#39;test1&#39;@&#39;localhost&#39; IDENTIFIED BY &#39;test1&#39;;
Query OK, 1 rows affected (0.06 sec)

結果は、test1 ユーザーが正常に作成されたことを示しています。

実際のアプリケーションでは、クリア テキストでパスワードを指定することは避けるべきですが、PASSWORD キーワードを使用すると、パスワードのハッシュ値を使用してパスワードを設定できます。

例 2

MySQL では、password() 関数を使用してパスワードのハッシュ値を取得できます。test1 を表示するための SQL ステートメントと実行プロセスハッシュ値は以下の通りです。

mysql> SELECT password(&#39;test1&#39;);
+-------------------------------------------+
| password(&#39;test1&#39;)                         |
+-------------------------------------------+
| *06C0BF5B64ECE2F648B5F048A71903906BA08E5C |
+-------------------------------------------+
1 row in set, 1 warning (0.00 sec)

"*06C0BF5B64ECE2F648B5F048A71903906BA08E5C"はtest1のハッシュ値です。次に、ユーザー test1 を作成します。SQL 文と実行プロセスは次のとおりです:

mysql> CREATE USER &#39;test1&#39;@&#39;localhost&#39;IDENTIFIED BY PASSWORD &#39;*06C0BF5B64ECE2F648B5F048A71903906BA08E5C&#39;;
Query OK, 0 rows affected, 1 warning (0.00 sec)

実行に成功すると、パスワード「test1」でログインできます。

2. GRANT ステートメントを使用して新しいユーザーを作成しますCREATE USER は通常のユーザーを作成できますが、この方法はユーザーを付与するには不便です。権限。そのため、MySQL は GRANT ステートメントを提供します。

GRANT ステートメントを使用してユーザーを作成する基本的な文法形式は次のとおりです:

GRANT priv_type ON database.table TO <用户> [IDENTIFIED BY [PASSWORD] &#39;password&#39;]

その中には:

  • priv_type

    パラメータは、新しいユーザーの権限を表します;

  • database.table

    パラメータは、新しいユーザーの権限スコープを示します。つまり、新しいユーザーは自分の権限のみを使用できます。指定されたデータベースとテーブルに対する独自の権限;

  • 4c8e0c17c3bd7e0081bb17cc795e1984

    このパラメータは、ユーザー名とホスト名で構成される新しいユーザーのアカウントを指定します。 ;

  • IDENTIFIED BY

    キーワードはパスワードの設定に使用されます;

  • password

    パラメータは新しいユーザーのパスワードを表します。

例 3

次の例では、GRANT ステートメントを使用して test3 という名前のユーザーを作成します。ホスト名は localhost、パスワードは test3 です。このユーザーは、すべてのデータベースのすべてのテーブルに対する SELECT 権限を持っています。 SQL 文と実行プロセスは次のとおりです。

mysql> GRANT SELECT ON*.* TO &#39;test3&#39;@localhost IDENTIFIED BY &#39;test3&#39;;
Query OK, 0 rows affected, 1 warning (0.01 sec)

其中,“*.*” 表示所有数据库下的所有表。结果显示创建用户成功,且 test3 用户对所有表都有查询(SELECT)权限。

技巧:GRANT 语句是 MySQL 中一个非常重要的语句,它可以用来创建用户、修改用户密码和设置用户权限。教程后面会详细介绍如何使用 GRANT 语句修改密码、更改权限。

【相关推荐:mysql视频教程

以上がmysqlでユーザーを追加する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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