システムログから古いデータにアクセスする

システムログから古いデータにアクセスする

私は最近、WindowsからLinuxサーバーに移行したさまざまなMySQLデータベースを管理することを担当しています。彼らはよく戻り、すべてが大丈夫です。ところで、今朝はエラーログを確認する必要がありましたが、今は記録されています/var/log/syslog

私のシステム管理者は今日仕事をしていましたが、生涯にわたってこのデータを読み取る方法がわかりません。

以下を使用して最新のデータを取得できます。

tail -f /var/log/syslog

しかし、今朝1時以降はどのようにデータにアクセスできますか?それとも昨日から。

私は試した:

grep mysqld /var/log/syslog | less

ところで、これは午前6時以降のデータを示しています。

それから試しました。

grep '^Nov  4 01' /var/log/syslog | less

しかし、これは私に長いリストだけを示しています^

ベストアンサー1

システムログの取得回転定期的にやってください。結果は次のとおりです。

$ ls /var/log/syslog*
/var/log/syslog  /var/log/syslog.1  ...  /var/log/syslog.7.gz

一般および循環システムログファイルから "mysqld"パターンをgrepするには、圧縮されていないファイルと圧縮されたファイルをgrepできるzgrepを使用します。

$ zgrep mysqld /var/log/syslog* | less

"mysql"と特定の日付を含む行を見つけるには、拡張を有効にする-Eスイッチを使用します。一般的な表現:

$ zgrep -E 'Nov  4 01.+mysqld' /var/log/syslog* | less

おすすめ記事