【问题标题】:Save log on database vs save logo on a local file [closed]将日志保存在数据库上与将徽标保存在本地文件上[关闭]
【发布时间】:2015-04-15 07:38:46
【问题描述】:

大家好 我有一个关于保存一些日志的问题。我认为通常使用两种方法:将每个日志保存在数据库表中或将日志保存在本地文件中。 我的问题是:哪个资源消耗更少,速度更快?

谢谢!

【问题讨论】:

  • 感谢 caramba 提供链接
  • 我看到一个项目存在严重的应用程序错误。它未能记录错误,因为记录机制遇到了它试图记录的 same 数据库错误。甚至花了好几天才知道有错误。我们信任日志,但它什么也没说。

标签: php mysql performance database-performance


【解决方案1】:

这取决于你想从日志中得到什么 如果你在 Linux 上工作。所以登录到文件比什么都好。

如果您打算管理日志以找出错误或其他任何东西,那么数据库是不错的选择。

请记住,使用数据库记录日志有一些优点和缺点,并且所有这些都不足以达到此目的,确切地说是 RDBMS 数据库。我建议您考虑使用 NoSQL 数据库,例如 redis、mongodb 和 ...

另外,在开始将日志保存到数据库之前,您应该知道输出类型和多长时间,您想将日志保存到数据库

【讨论】:

  • 感谢 irmorteza 分享这些重要信息。
【解决方案2】:

这两种方式现在都在应用程序中使用。
但在数据库中保存日志比在磁盘上保存为文件更安全。 如果你想记录你的代码错误,那么你也需要记录文件。因为有时您想将日志保存在数据库中,而数据库有问题(我的意思是错误,例如连接太多和...)

另外,文件的读写速度比数据库慢。

因此,将日志保存在数据库中比将日志保存在文件中要好,但是您可以将数据库错误的日志作为文件。

希望对你有帮助。

【讨论】:

  • 嘿真的很好。我在应用程序中的原因是这些表很大,因此数据库真的很大(当然是及时的)。文件包我相信你可以检查文件的大小,如果它太大,然后创建一个新文件。
  • 您可以将记录保存在数据库中,有时可以添加触发器或cron作业以删除一些记录。这意味着您可以将时间戳字段添加到日志表中。这样可以保存您的最新记录。
猜你喜欢
  • 1970-01-01
  • 2011-02-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-06-19
  • 2019-04-04
相关资源
最近更新 更多