MySQLの認可コマンド grant の使い方のまとめ

MySQLの認可コマンド grant の使い方のまとめ

MySQL 認証コマンド grant の使用方法:

この記事の例は MySQL 5.0 以降で実行されます。

ユーザー権限を付与するための MySQL コマンドの簡単な形式は、次のように要約できます。

ユーザーにデータベースオブジェクトに対する権限を付与する

1. 一般データ ユーザーに、データベース内のすべてのテーブルでデータを照会、挿入、更新、および削除する権限を付与します。

common_user@'%' に testdb.* の選択権限を与える
common_user@'%' に testdb.* への挿入を許可する
common_user@'%' に testdb.* の更新を許可します
common_user@'%' に testdb.* の削除権限を与える

または、代わりに MySQL コマンドを使用します。

common_user@'%' に testdb.* の SELECT、INSERT、UPDATE、DELETE 権限を付与します。

2. データベース開発者にテーブル、インデックス、ビュー、ストアド プロシージャ、および関数を作成する権限を付与します。 。 。その他の権限。

MySQL テーブル構造を作成、変更、削除する権限を付与します。

testdb.* に対する作成権限を developer@'192.168.0.%' に付与します。
testdb.* の変更権限を developer@'192.168.0.%' に付与します。
testdb.* に対する drop 権限を developer@'192.168.0.%' に付与します。

MySQL 外部キーを操作する権限を付与します。

testdb.* への参照を developer@'192.168.0.%' に許可します。

MySQL 一時テーブルを操作する権限を付与します。

testdb.* に一時テーブルを作成する権限を developer@'192.168.0.%' に付与します。

MySQL インデックスを操作する権限を付与します。

testdb.* のインデックスを developer@'192.168.0.%' に付与します。

MySQL ビューを操作し、ソース コードを表示する権限を付与します。

testdb.* に対するビューの作成権限を developer@'192.168.0.%' に付与します。
testdb.* の show view 権限を developer@'192.168.0.%' に付与します。

MySQL ストアド プロシージャと関数を操作する権限を付与します。

grant create routine on testdb.* to developer@'192.168.0.%'; -- これで、プロシージャのステータスを表示できます。
grant alter routing on testdb.* to developer@'192.168.0.%'; -- これで、プロシージャを削除できます
testdb.* の実行権限を developer@'192.168.0.%' に付与します。

3. 通常の DBA に MySQL データベースを管理する権限を付与します。

testdb のすべての権限を dba@'localhost' に付与します。

キーワード「privileges」は省略できます。

4. MySQL 内のすべてのデータベースを管理するための上級 DBA 権限を付与します。

*.* のすべての権限を dba@'localhost' に付与する

5. MySQL の許可権限は複数のレベルで適用できます。

1. 許可は MySQL サーバー全体に適用されます。

grant select on *.* to dba@localhost; -- dba は MySQL 内のすべてのデータベースのテーブルをクエリできます。
grant all on *.* to dba@localhost; -- dba は MySQL 内のすべてのデータベースを管理できます

2. 付与は単一のデータベースに適用されます。

grant select on testdb.* to dba@localhost; -- dba は testdb 内のテーブルをクエリできます。

3. Grant は単一のデータ テーブルに対して動作します。

testdb.orders に対する select、insert、update、delete 権限を dba@localhost に付与します。

ここで、ユーザーに対して複数のテーブルを承認する場合、上記のステートメントを複数回実行できます。例えば:

'123345' で識別される mo_user@'%' に smp.users に対する select(user_id,username) を許可します。
'123345' で識別される mo_user@'%' に smp.mo_sms の選択権限を付与します。

4. Grant はテーブル内の列に対して操作を実行します。

testdb.apache_log に対する select(id, se, rank) 権限を dba@localhost に付与します。

5. ストアド プロシージャと関数に対する権限付与:

プロシージャ testdb.pr_add の実行権限を 'dba'@'localhost' に付与します。
関数 testdb.fn_add の実行権限を 'dba'@'localhost' に付与します。

6. MySQLユーザー権限を確認する

現在のユーザー(自分自身)の権限を表示します。

助成金を表示する。

他の MySQL ユーザー権限を表示します。

dba@localhost の権限を表示します。

7. MySQL ユーザーに付与された権限を取り消します。

revoke の構文は grant と似ていますが、キーワード「to」が「from」に置き換えられています。

*.* のすべての権限を dba@localhost に付与します。
dba@localhost から *.* 上のすべての権限を取り消します。

8. MySQL でのユーザー権限の付与と取り消しに関する注意事項

1. ユーザー権限を付与または取り消した後、その権限はユーザーが MySQL データベースに再接続したときにのみ有効になります。

2. 承認されたユーザーが他のユーザーにこれらの権限を付与できるようにするには、「許可オプション」オプションが必要です。

dba@localhost に grant オプション付きで testdb.* の select 権限を付与します。

この機能は通常は使用されません。実際には、データベース権限は DBA によって集中管理するのが最適です。

これで、MySQL 認証コマンド grant の使い方に関する記事は終了です。MySQL 認証コマンド grant の詳細については、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • MySQLの認証コマンドgrantの使い方
  • メモを作成するためのMySQL権限管理付与コマンド
  • MySQL Grantコマンドの詳細な説明

<<:  モバイルデバイスにおける適応レイアウトの問題に関する簡単な説明 (レスポンシブ、rem/em、Js ダイナミクス)

>>:  CSS で要素を中央揃えにする N 通りの方法

推薦する

IDEA は MySQL への接続時にエラーを報告します。サーバーが無効なタイムゾーンを返します。タブに移動して serverTimezone プロパティを設定してください。

これからの道は常に困難で、棘だらけです。歯を食いしばって、乗り越えられると信じてください。さあ、さあ...

Dockerコンテナが起動直後に終了する問題を解決する

最近、Docker がコンテナの起動時に特定のプロセスを直接実行できるようにする方法を調べていたとこ...

nginx での listen ディレクティブの例の分析

プロットレビュー前回の記事では、ロケーション命令の解析プロセスを分析しました。この内容を簡単に確認し...

Nginx ベースの HTTPS ウェブサイトを設定する手順

目次序文:暗号化アルゴリズム: 1. HTTPS の概要2. NginxはHTTPSウェブサイト設定...

VUE+SpringBootはページング機能を実装します

この記事では主に、Vue + SpringBoot でページ分割されたリストデータを実装する方法を紹...

JS 矢印関数に適さないシナリオは何ですか?

目次概要オブジェクトにメソッドを定義するオブジェクトリテラルオブジェクトプロトタイプ動的コンテキスト...

Ubuntu 19にTheanoをインストールする際の問題を解決する

解決: pythearn2 パッケージをダウンロードしたディレクトリで、setup.py ファイルを...

Linuxオペレーティングシステムは、タスクマネージャーの視覚化機能を実装するためにPythonを使用しています。

1. Pythonのインストール1. フォルダーを作成します。 mkdir python フォルダ...

Dockerを使用して分散lnmpイメージを作成する

目次1. Docker分散lnmpイメージ生成1. Nginx、MySQL、PHPコンテナを実行する...

デザインのヒント: きっと気に入っていただけると思います

<br />このタイトルを見ると、見覚えがあるかもしれません。多くのウェブサイトが同様の...

Linux システムでのユーザー管理の概要

目次1. ユーザーとユーザーグループの重要性1) ユーザーの存在意義2) ユーザーグループの重要性2...

HTML検証 HTML検証

HTML 検証はHTML 検証を指します。これは、HTML ドキュメントを分析し、標準の HTML ...

行の高さと垂直方向の配置に関する包括的な理解

前の単語line-height、font-size、vertical-align は、インライン要素...

MySQL トランザクションと分離レベルの基本原理の簡単な分析

目次序文1. 取引の基本原則の簡単な分析原子性:持続性分離:一貫性: 2. 分離レベルの基本原理の分...

MySQLのSeconds_Behind_Masterの詳細な説明

目次マスターの後ろの秒数オリジナルの実装最終マスタータイムスタンプマスターとのクロック差他の実行時間...