2017-12-01 5 views
1

データベース構成の正当性を検証しようとしています。だから私はMySQLサーバーに接続し、いくつかのクエリを実行しようとする設定で提供されたアカウント情報を使用します。問題は何の質問を発行すべきですか?可能な方法の1つは、information_schema.tablesからテーブル情報を取得して、簡単な削除/更新を行うことです。MySQLデータベースのアカウントの特権を自己確認する方法

delete from some_table where 1=0 limit 1; 

しかし、データベースにテーブルがまだない場合はどうなりますか?

これを通過する他の方法はありますか?データベース構成の正確性を検証する別の方法はありますか?

答えて

1

特権を確認しようとしている場合は、SHOW GRANTSを実行すると、GRANTステートメントの形式が表示されます。

0

特権情報は、mysqlデータベースの複数のテーブルに格納されています。たとえば、mysql.tables_privにはテーブルレベルの特権が含まれ、mysql.dbにはデータベースレベルの特権が含まれます。詳細は、MySQL Grants Tablesのドキュメントを参照してください。これらのテーブルを照会して、必要な権限が与えられていることを確認することができます。

+0

いいえ、できません。設定内のアカウントはアプリケーションごとに使用されているため、これらの権限テーブルにアクセスする権限は絶対に付与されていません。 –

+0

私はあなたがチェックを実行しているアカウントだけでなく、すべてのアカウントの設定をチェックしようとしていると思っていました。 – Barmar

関連する問題