gpt4 book ai didi

mysql - 如何抑制DDL日志

转载 作者:行者123 更新时间:2023-11-29 14:29:03 25 4
gpt4 key购买 nike

可以这么说,我正在编写一个以“非标准”方式使用 MySQL 的应用程序。它严重依赖于动态创建/删除的表。

到目前为止,它运行正常。不过,这些规范并不让我高兴。每当我运行它们时,我都会收到大量 activerecord 的 ddl 日志消息。亲自看看:

SqlDailyEvents
-- create_table("11_daily_events_20120428")
-> 0.0032s
should create and drop a table
-- create_table("11_daily_events_20120428")
-> 0.0030s
should not create the same table twice
should not drop the same table twice

这是--format d。使用 --format p 看起来更糟!

如何关闭它?此日志似乎不受 ActiveRecord::Base.logger 影响(我尝试将其设置为 nil)。

最佳答案

(删除了使用操作 $stdout 的内核方法的代码)

毕竟是 ActiveRecord。似乎如果您以"new"方式定义迁移(使用 change 方法而不是 up/down 对),它不会向您发送垃圾邮件尽可能多。无论如何,它有一个类似的方法,但它操纵迁移的详细程度,而不是 $stdout

现在我的代码如下所示:

  def up
# built-in method. sets verbose flag to false
suppress_messages do
create_table table_name do |t|
t.column :username, :string
end
end
end

关于mysql - 如何抑制DDL日志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10359675/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com