ホームページ データベース mysql チュートリアル mysqlにはユーザーテーブルがありますか?

mysqlにはユーザーテーブルがありますか?

Feb 24, 2022 pm 06:43 PM
mysql

Mysql にはユーザー テーブルがあります。ユーザー テーブルは MySQL の権限テーブルで、サーバーへの接続を許可するアカウント情報を記録するために使用されます。ユーザー テーブルのフィールドは、ユーザー カラム、権限カラム、セキュリティ カラム、リソース制御の 4 つのカテゴリに大別できます。列。

mysqlにはユーザーテーブルがありますか?

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

mysql にはユーザー テーブルがあります。

ユーザー テーブルは MySQL で最も重要な権限テーブルであり、サーバーへの接続を許可されたアカウント情報を記録するために使用されます。ユーザー テーブルで有効になっているすべての権限はグローバルであり、すべてのデータベースに適用されることに注意してください。

ユーザーテーブルのフィールドはユーザー列、権限列、セキュリティ列、リソース制御列の4つに大別できますが、以下では主にこれらのフィールドの意味を紹介します。

ユーザー列

ユーザー列には、ユーザーが MySQL データベースに接続するときに入力する必要がある情報が保存されます。 MySQL 5.7 バージョンではパスワード フィールドとして Password が使用されなくなり、authentication_string に変更されたことに注意してください。

MySQL バージョン 5.7 のユーザー リストを表 1 に示します。

#ホスト名ユーザーchar(32)NOなしユーザー名認証文字列テキストYESなしパスワード

ユーザーがログインするとき、MySQL データベース システムは、これら 3 つのフィールドが同時に一致する場合にのみログインを許可します。新しいユーザーを作成するとき、これら 3 つのフィールドの値も設定されます。ユーザーのパスワードを変更すると、実際にはユーザー テーブルの authentication_string フィールドの値が変更されます。したがって、これら 3 つのフィールドによって、ユーザーがログインできるかどうかが決まります。

権限列

権限列のフィールドはユーザーの権限を決定し、許可されるデータおよびデータベースに対する権限を説明するために使用されます。グローバルに運営しています。

権限は、高度な管理権限と通常の権限の 2 つのカテゴリに大別されます。

  • 高度な管理権限は、サービスを閉じる権限など、主にデータベースを管理します。スーパー権限と読み込みユーザーなど;

  • 通常の権限は、クエリ権限、変更権限など、主にデータベースを操作します。

ユーザー テーブルの権限列には、Select_priv、Insert_priv、および priv で終わるその他のフィールドが含まれます。これらのフィールド値のデータ型は ENUM です。使用可能な値は次のとおりです。 Y および N: Y はユーザーを表し、対応する権限が存在します。N は、ユーザーが対応する権限を持たないことを意味します。セキュリティ上の理由から、これらのフィールドのデフォルト値は N です。

テーブル 1: ユーザー テーブルのユーザー列
フィールド名 フィールド タイプ 空ですか デフォルト値 説明
ホスト char(60) NO なし
##Select_privenum('N','Y')NONSELECT コマンドを使用してデータをクエリできるかどうかInsert_privenum('N','Y')NONINSERT コマンドを通じてデータを挿入できるかどうかUpdate_privenum('N ','Y' )NONUPDATE コマンドを使用して既存のデータを変更できますか?Delete_privenum ('N','Y')NONDELETE コマンドを使用して既存のデータを削除できますか?## Create_privDrop_privReload_privShutdown_privProcess_privFile_priv Grant_privReferences_privIndex_privAlter_privShow_db_privSuper_privCreate_tmp_table_privLock_tables_privExecute_privRepl_slave_privRepl_client_priv Create_view_privShow_view_privCreate_routine_privAlter_routine_privCreate_user_priv Event_privTrigger_privCreate_tablespace_priv

権限を変更する場合は、GRANT ステートメントを使用してユーザーに一部の権限を付与するか、UPDATE ステートメントでユーザー テーブルを更新して権限を設定できます。

セキュリティ列

セキュリティ列は主に、ユーザーが正常にログインできるかどうかを判断するために使用されます。ユーザー テーブルのセキュリティ列は次のとおりです。表 3 に示されています:

表 2: ユーザー テーブルの権限列
フィールド名 フィールド タイプ 空かどうか デフォルト値 説明
enum('N','Y') NO N 新しいデータベースとテーブルを作成できます
enum('N','Y') NO N できますか既存のデータベースとテーブルを削除しますか?
enum('N','Y') NO N ログ、権限、ホスト、クエリ、テーブルなど、MySQL で使用されるさまざまな内部キャッシュを更新および再ロードする特定のコマンドを実行することは可能ですか
enum( 'N','Y') NO N MySQL サーバーをシャットダウンできるかどうか。この権限を root アカウント以外のユーザーに付与する場合は、細心の注意を払う必要があります。
enum('N','Y') NO N SHOW PROCESSLIST コマンドを使用して他のユーザーのプロセスを確認できますか?
enum (' N','Y') NO N SELECT INTO OUTFILE および LOAD DATA INFILE コマンドを実行できるかどうか
enum('N','Y') NO N 自分の権限を他のユーザーに付与できますかユーザー?
enum('N','Y') NO N 外部キー制約を作成できます
enum('N','Y') NO N インデックスの追加・削除チェックが可能かどうか
enum('N','Y') NO N テーブル構造の名前変更と変更は可能ですか
enum('N', 'Y') NO N ユーザーが十分なアクセス権を持っているデータベースを含む、サーバー上のすべてのデータベースの名前を表示することは可能ですか
enum('N','Y') NO N それがあるかどうかKILL コマンドによるユーザー プロセスの削除など、いくつかの強力な管理機能を実行することが可能です。SET GLOBAL コマンドは、グローバル MySQL 変数を変更し、レプリケーションとロギングに関するさまざまなコマンドを実行します。 (スーパー権限)
enum('N','Y') NO N 一時テーブルを作成することは可能ですか
enum('N','Y') NO N LOCK TABLES コマンドを使用してテーブルへのアクセス/変更を防ぐことは可能ですか
enum('N' ,'Y') NO N ストアド プロシージャを実行できますか?
enum('N',' Y') NO N レプリケートされたデータベース環境を維持するために使用されるバイナリ ログ ファイルを読み取ることはできますか?
enum('N','Y') NO N それは可能ですか?レプリケーション スレーブ サーバーとマスター サーバーの場所を決定します
enum('N','Y') NO #ビューを作成できますか?
enum('N','Y') NO N はい view を表示できます
enum('N','Y') NO N ストアド プロシージャと関数を変更または破棄できるかどうか
enum(' N','Y') NO N ストアド関数と関数を変更または削除できるかどうか
enum('N','Y') NO N 使用される CREATE USER コマンドを実行できるかどうか新しい MySQL アカウントを作成するには
enum('N','Y') NO N イベントを作成、変更、削除できるかどうか
enum('N','Y') NO N トリガーを作成および削除できるかどうか
enum('N','Y') NO N テーブルを作成できますか? space
表 3: ユーザー テーブルのセキュリティ列
フィールド名 フィールド タイプ 空ですか デフォルト値 説明
ssl_type enum('','ANY','X509', '指定') NO SSL 標準暗号化セキュリティ フィールドをサポート
ssl_cipher blob NO SSL 標準暗号化セキュリティ フィールドをサポート
x509_issuer blob NO x509 標準フィールドのサポート
x509_subject blob NO x509 標準フィールドのサポート
plugin char(64) NO mysql_native_password プラグインの導入ユーザーの接続時にパスワード検証を実行するために、プラグインは外部/プロキシ ユーザーを作成します
password_expired enum('N','Y') NO N パスワードの有効期限が切れているかどうか (N は期限切れではない、y は期限切れである)
password_last_changed timestamp YES パスワードが最後に変更された時刻を記録します
password_lifetime smallint(5) unsigned YES パスワードの有効期間を日数で設定します
account_locked enum('N','Y ') NO N ユーザーがロックされているかどうか (Y ロック、N ロック解除)

注:password_expired が「Y」の場合でも、ユーザーはそのパスワードを使用して MySQL にログインできますが、操作は許可されません。

通常、標準ディストリビューションは ssl をサポートしていません。読者は SHOW VARIABLES LIKE "have_openssl" ステートメントを使用して、ssl 機能があるかどうかを確認できます。 have_openssl の値が DISABLED の場合、SSL 暗号化機能はサポートされません。

リソース コントロール列

リソース コントロール列のフィールドは、ユーザーが使用するリソースを制限するために使用されます。 user テーブルは表 4 に示すとおりです。

#max_questions#max_updatesint(11) unsignedint(11) unsignedint(11) unsigned上記のフィールドのデフォルト値は 0 で、制限がないことを示します。ユーザーのクエリまたは接続の数が 1 時間以内にリソース制御制限を超えると、ユーザーはロックされ、次の 1 時間までここで対応する操作を実行できなくなります。これらのフィールドの値は、GRANT ステートメントを使用して更新できます。 [関連する推奨事項:
表 4: ユーザー テーブルのリソース制御列
フィールド名 フィールド タイプ 空ですか デフォルト値 説明
#int(11) unsigned NO 0 1 時間あたりに許可されるクエリ操作の数を指定します
##NO 0 1 時間あたりに許可される更新操作の数を指定します max_connections
NO 0 1 時間あたりに許可される接続操作の数を指定します max_user_connections
NO 0 同時に確立できる接続の数を指定します
mysql ビデオ チュートリアル

]

以上がmysqlにはユーザーテーブルがありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

MySQLの役割:Webアプリケーションのデータベース MySQLの役割:Webアプリケーションのデータベース Apr 17, 2025 am 12:23 AM

WebアプリケーションにおけるMySQLの主な役割は、データを保存および管理することです。 1.MYSQLは、ユーザー情報、製品カタログ、トランザクションレコード、その他のデータを効率的に処理します。 2。SQLクエリを介して、開発者はデータベースから情報を抽出して動的なコンテンツを生成できます。 3.MYSQLは、クライアントサーバーモデルに基づいて機能し、許容可能なクエリ速度を確保します。

Laravelは紹介例 Laravelは紹介例 Apr 18, 2025 pm 12:45 PM

Laravelは、Webアプリケーションを簡単に構築するためのPHPフレームワークです。次のような強力な機能を提供します。インストール:Laravel CLIを作曲家にグローバルにインストールし、プロジェクトディレクトリにアプリケーションを作成します。ルーティング:ルート/web.phpのURLとハンドラーの関係を定義します。ビュー:リソース/ビューでビューを作成して、アプリケーションのインターフェイスをレンダリングします。データベース統合:MySQLなどのデータベースとのすぐ外側の統合を提供し、移行を使用してテーブルを作成および変更します。モデルとコントローラー:モデルはデータベースエンティティを表し、コントローラーはHTTP要求を処理します。

DockerによるMySQLを開始する方法 DockerによるMySQLを開始する方法 Apr 15, 2025 pm 12:09 PM

DockerでMySQLを起動するプロセスは、次の手順で構成されています。MySQLイメージをプルしてコンテナを作成および起動し、ルートユーザーパスワードを設定し、ポート検証接続をマップしてデータベースを作成し、ユーザーはすべての権限をデータベースに付与します。

MySQLおよびPHPMYADMIN:コア機能と関数 MySQLおよびPHPMYADMIN:コア機能と関数 Apr 22, 2025 am 12:12 AM

MySQLとPHPMyAdminは、強力なデータベース管理ツールです。 1)MySQLは、データベースとテーブルを作成し、DMLおよびSQLクエリを実行するために使用されます。 2)PHPMyAdminは、データベース管理、テーブル構造管理、データ操作、ユーザー許可管理のための直感的なインターフェイスを提供します。

データベース接続の解決問題:Minii/DBライブラリを使用する実用的なケース データベース接続の解決問題:Minii/DBライブラリを使用する実用的なケース Apr 18, 2025 am 07:09 AM

小さなアプリケーションを開発する際には、軽量データベース操作ライブラリをすばやく統合する必要性という厄介な問題に遭遇しました。複数のライブラリを試した後、私はそれらがあまりにも多くの機能を持っているか、あまり互換性がないかのどちらかであることがわかりました。最終的に、私は問題を完全に解決したYii2に基づいた単純化されたバージョンであるMinii/DBを見つけました。

MySQL対その他のプログラミング言語:比較 MySQL対その他のプログラミング言語:比較 Apr 19, 2025 am 12:22 AM

他のプログラミング言語と比較して、MySQLは主にデータの保存と管理に使用されますが、Python、Java、Cなどの他の言語は論理処理とアプリケーション開発に使用されます。 MySQLは、データ管理のニーズに適した高性能、スケーラビリティ、およびクロスプラットフォームサポートで知られていますが、他の言語は、データ分析、エンタープライズアプリケーション、システムプログラミングなどのそれぞれの分野で利点があります。

Laravel Frameworkインストール方法 Laravel Frameworkインストール方法 Apr 18, 2025 pm 12:54 PM

記事の概要:この記事では、Laravelフレームワークを簡単にインストールする方法について読者をガイドするための詳細なステップバイステップの指示を提供します。 Laravelは、Webアプリケーションの開発プロセスを高速化する強力なPHPフレームワークです。このチュートリアルは、システム要件からデータベースの構成とルーティングの設定までのインストールプロセスをカバーしています。これらの手順に従うことにより、読者はLaravelプロジェクトのための強固な基盤を迅速かつ効率的に築くことができます。

初心者向けのMySQL:データベース管理を開始します 初心者向けのMySQL:データベース管理を開始します Apr 18, 2025 am 12:10 AM

MySQLの基本操作には、データベース、テーブルの作成、およびSQLを使用してデータのCRUD操作を実行することが含まれます。 1.データベースの作成:createdatabasemy_first_db; 2。テーブルの作成:createTableBooks(idintauto_incrementprimarykey、titlevarchary(100)notnull、authorvarchar(100)notnull、published_yearint); 3.データの挿入:InsertIntoBooks(タイトル、著者、公開_year)VA

See all articles