1

PHP 開発者として、Web ホスティング パネルでデータベース ユーザーごとに権限を設定する必要があります。Stackoverflow.comのmysqlでWebサイトデータベースユーザー/クライアントにどの権限を設定する必要があるかなどの記事を読み ましたが、見落とされているものがあると思います。

これは、Web ホスティング パネルで設定する必要があるものです。

ここに画像の説明を入力

について知っていSELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTER,GRANT,CREATE TMP TABLESます。しかし、の特権を設定または設定解除する必要があるかどうかを知る必要がありINDEX,REFERENCE, and LOCK TABLESます。

これら 3 つの最後の特権は何のためのものですか?

4

1 に答える 1

1

すべての権限に関する情報は、1 つの長い MySQL ドキュメント ページに記載されています。質問したのは以下の3つです。

6.2.2 MySQL が提供する権限

索引

インデックスを作成または削除 (削除) するステートメントを使用できるようにします。INDEX は既存のテーブルに適用されます。テーブルに対するCREATE権限がある場合は、 CREATE TABLEステートメントにインデックス定義を含めることができます。


参考文献

外部キー制約の作成には、親テーブルに対する REFERENCES 権限が必要です。


ロックテーブル

明示的なLOCK TABLESステートメントを使用して、 SELECT権限を持つテーブルをロックできるようにします。これには、他のセッションがロックされたテーブルを読み取れないようにする書き込みロックの使用が含まれます。

TLDR:

  • INDEX既存のテーブルにインデックスを追加/削除できます。
  • REFERENCESテーブルに外部キー制約を作成できます。
  • LOCK TABLESテーブルのロックを取得して、他のセッションが読み取りや書き込みなどの特定の方法でテーブルにアクセスするのを防ぐことができます。
于 2019-12-05T10:15:06.443 に答える