如何删除Google Cloud SQL中的所有general_log条目?

时间:2016-09-07 21:56:33

标签: mysql google-cloud-platform google-cloud-sql

我最近创建了一个Google Cloud SQL第二代实例。我最初打开了慢查询和常规日志。我从另一个区域的实例导出数据库并将它们导入到这个新实例,但新实例的大小几乎是旧实例的两倍,我相信这是由于导入过程中创建的日志,只是尝试获得一些条目似乎只是挂起。

我现在关闭了常规日志,但是如何清除它呢?我试过截断和删除,但都没有工作。

mysql> truncate mysql.general_log;
ERROR 1227 (42000): Access denied; you need (at least one of) the SUPER privilege(s) for this operation

mysql> delete from mysql.general_log;
ERROR 1556 (HY000): You can't use locks with log tables.

我已经为我的用户提供了所有权限,但与第一代Cloud SQL实例不同,我不能给SUPER(甚至root也没有)。

有关如何清除此事的任何建议吗?

1 个答案:

答案 0 :(得分:1)

https://cloud.google.com/sql/docs/admin-api/v1beta4/instances/truncateLog是截断常规日志的API。但是,Cloud SQL现在支持将常规查询日志流式传输到Cloud Logging;这是推荐的方法,而不是记录到表格。