序文:データベースのユーザー権限管理について理解されているかどうかわかりません。DBA にとって、ユーザー権限管理は避けられない仕事の一部です。特に本番データベースの場合、データベース ユーザーの権限は標準化された方法で管理する必要があります。この記事では、MySQL ユーザー権限管理の関連コンテンツを紹介します。 1. ユーザー権利の概要データベース ユーザーを作成した後、まだ操作を実行することはできません。ユーザーに適切なアクセス権限を割り当てる必要があります。 MySQL のユーザー権限を簡単に理解すると、データベースでは、ユーザーに権限の範囲内でのみ操作を許可し、境界を越えることはできないということです。たとえば、選択操作のみ実行できる場合、更新操作は実行できません。 MySQL に接続できるのは特定の IP からのみであり、その IP 以外のマシンからは MySQL に接続できません。 MySQL では、ユーザー権限もレベルに分かれています。付与できる権限は次のとおりです。
権限情報は、mysql システム ライブラリの user、db、tables_priv、columns_priv、および procs_priv システム テーブルに保存されます。
公式ドキュメントを参照してください。付与できる権限は次の表のとおりです。 付与できる権限は多岐にわたるように思えますが、実際にはデータ、構造、管理の 3 つのカテゴリに大別でき、大まかに分類すると次のようになります。 2. 実際の権限管理通常、データベース ユーザーに権限を付与するには grant ステートメントを使用します。まず create user ステートメントを使用してユーザーを作成し、その後権限を個別に付与することをお勧めします。例を通してこれを詳しく見てみましょう: # ユーザーの作成 create user 'test_user'@'%' identifier by 'xxxxxxxx'; # グローバル権限 GRANT super, select on *.* to 'test_user'@'%'; # データベース権限 `testdb`.* に対する select、insert、update、delete、create、alter、execute を 'test_user'@'%' に GRANT します。 # テーブル権限 GRANT select,insert on `testdb`.tb to 'test_user'@'%'; # 列の権限 GRANT select (col1), insert (col1, col2) ON `testdb`.mytbl to 'test_user'@'%'; # GRANT コマンドの説明: super,select は付与される特定の権限を示します。 ON は、権限が適用されるライブラリとテーブルを指定するために使用されます。 *.* では、先頭の * はデータベース名を指定するために使用され、末尾の * はテーブル名を指定するために使用されます。 TO はユーザーに権限を付与することを意味します。 'test_user'@'%' は test_user ユーザーを意味します。@ の後には制限されたホストが続きます。制限されるホストは IP、IP セグメント、ドメイン名、% のいずれかです。% は任意の場所を意味します。 #権限をフラッシュします。 # ユーザーの権限を表示します show grants for 'test_user'@'%'; # 権限を取り消す revoke delete on `testdb`.* from 'test_user'@'%'; 権限管理は無視できないものです。利便性のためだけにデータベース ユーザーに過剰な権限を与えることはできません。特に本番データベースの場合は、権限制御を行う必要があります。プログラム ユーザーには追加、削除、変更、クエリなどの基本的な権限のみを付与し、個々のユーザーにはクエリ権限のみを付与することをお勧めします。 安全上の理由から、次の経験則に従うことをお勧めします。
以上がMySQLユーザー権限管理の詳細な説明です。MySQLユーザー権限管理の詳細については、123WORDPRESS.COMの他の関連記事に注目してください。 以下もご興味があるかもしれません:
|
<<: 画像をラベルとして使用すると、IE では for 属性が機能しません。
この記事の例では、画像のドラッグアンドドロップ機能を実現するためのVueの具体的なコードを参考までに...
最近、業務上のボタンの増加により、ページレイアウトにボタンが多すぎて、ページが美しくなく、ユーザーエ...
MySQL 変数には、システム変数とシステム変数が含まれます。今回の学習課題はユーザー定義変数です。...
1. まず、移行サーバー上のデータ ファイルを見つけます。MySQL 5.7 とデフォルトのインスト...
目次序文【ログ取り消し】 【REDOログ】 【バイナリログ】要約する序文MySQL には、REDO ...
mysql 効率的なクエリMySQL は、左結合の速度を上げるために group by を犠牲にし...
目次1. オプションとは何ですか? 2. 含まれる属性3. エントリー属性エルデータ方法コンポーネン...
目次MySql8.0 トランザクション分離レベルエラーの表示質問コマンドは次のように変更されますMy...
Web サービスは、アプリケーション間の通信に関係しています。SOAP は、Web サービス間の X...
n 個のアイテムがあり、これらのアイテムをグリッド レイアウトの列に並べ替える必要があるとします。列...
HTML ページでは、div 内のコンテンツが制限を超えた後に自動的にスクロール バーを表示する必要...
目次導入子プロセスプロセスを非同期的に作成する同期作成プロセス導入Node.js のメイン イベント...
実装要件ElementUI を模倣したフォームは、インデックス コンポーネント、Form フォーム ...
DIV+css構造 CSSレイアウトを学んでいますか?まだ純粋な CSS レイアウトを完全に習得でき...
Linux でディレクトリを切り替えるとなると、誰もが間違いなくcdコマンドを思い浮かべるでしょう。...