特定のデータがいつ MySQL データベースに置かれたかに関する情報を取得する方法はありますか? 事後にそうすることが可能ですか?辺りを見渡しても何も見えない。クエリ キャッシュについて何かが見えますが、同じクエリを頻繁に使用している場合、それは主に効率上の理由のようです。
注: これは、過去 1 年間にデータベースに入力されたデータを取得するためのものです。
特定のデータがいつ MySQL データベースに置かれたかに関する情報を取得する方法はありますか? 事後にそうすることが可能ですか?辺りを見渡しても何も見えない。クエリ キャッシュについて何かが見えますが、同じクエリを頻繁に使用している場合、それは主に効率上の理由のようです。
注: これは、過去 1 年間にデータベースに入力されたデータを取得するためのものです。
タイムスタンプ列をデータに追加します。これはここで説明されています http://dev.mysql.com/doc/refman/5.0/en/timestamp-initialization.html
テーブルの事後更新時刻を確認することが可能です 。 information_schema テーブルで次のようなクエリを使用します。
SELECT UPDATE_TIME FROM
information_schema.tables WHERE
TABLE_SCHEMA = 'bigdata'
AND TABLE_NAME = 'hit_log';
データベース名は「bigdata」、テーブル名は「hit_log」
残念ながら、元の質問については、各列のdesc information_schema.columns
ようなデータ項目がないことがわかります。UPDATE_TIME
また、各挿入の更新時間はデータに記録されません。
ログを有効にできます: SET general_log=1; ログファイルを確認します。
mysql やその他のデータベースが、すべての挿入に対してそのような情報を暗黙的に提供するとは思いません。
あなたの懸念に対処するためcan add one more column of modified/insert date
に、データが挿入または変更されたときのエントリをマークします (を使用timestamp
)。