1

いくつかのテーブルを持つMySQLデータベースで構成される「システムA」があるとしましょう。しばらくして、未使用のテーブルや列を削除してシステムAを最適化したい場合、システムAは非常に大きく、見落とすのが困難です。システムをしばらく実行してから、テーブルや列などの一般的な使用法を出力する分析を実行できるツールまたはメソッドはありますか?これにより、未使用のテーブルや列を見つけることができます。

システムに接続して、サーバーに送信されるすべてのSQLコマンドをログに記録することを考えていますが、その場合は、アプリケーション側ではなくデータベース側で実行します。

4

2 に答える 2

3

一般的なクエリログは、おそらくあなたが探しているものです。

MySQLによると、一般クエリログオンで:

サーバーは、クライアントが接続または切断したときにこのログに情報を書き込み、クライアントから受信した各SQLステートメントをログに記録します。

--log[=file_name]MySQLを使用するには、または-l [file_name]オプションを指定してMySQLを起動する必要があります。

于 2009-09-08T02:54:42.107 に答える
0

すでにデータベースをある種のアプリケーションにリンクしていると仮定すると、使用されていない列よりも使用されている列を見つけるのは難しいことではありません。

さらに、プロファイラー(MySQLの同等性については不明)などのプログラムを使用して、すべてのSQL呼び出しを表示できます。これにより、使用されているすべての列がわかります。

于 2009-09-08T02:44:09.017 に答える