2016-05-30 101 views
0

我正在使用mysql workbench來運行我的查詢來與mysql進行交互。我查看了「%AppData%\ MySQL \ Workbench \」文件夾並找到了一些有關mysql元數據信息的日誌文件。

我找不到包含用戶創建日誌的任何日誌文件。我找到了兩個與查詢日誌相關的文件。一個是在sql_history/date文件中。這包含與時間戳一起被觸發的查詢,但不包含用戶信息。第二個文件是log/sql_actions_unconnected.log。這也沒有用戶信息。mysql獲取元數據信息 - 用戶創建,用戶查詢,用戶組和數據庫大小

這裏是我的要求 -
1.什麼是用戶在上週加入,上個月,上季度
2.什麼是排名前10位用戶通過他們開火
3.什麼是#查詢由每組#users前3名的用戶羣體
4.什麼是數據庫 - 前3排名最高大小的最低階的GB

是否有其他辦法可以做到比其他依靠上述任務在日誌文件上?如果不是如何獲得基於日誌文件的上述信息。

回答

0
  1. 什麼是上週增加了用戶,上個月,上季度

這不是默認登錄,您需要創建自己的機制。最乾淨的方式將是一個審計插件。見https://dev.mysql.com/doc/refman/5.7/en/writing-audit-plugins.html

  • 什麼是排名前10位用戶通過他們開火
  • #查詢這可以從sys模式來查詢是這樣的:

    SELECT * FROM sys.user_summary ORDER BY statements DESC LIMIT 10; 
    

    MySQL可以使用sys模式。對於MySQL 5.6,可以在performance_schema之上手動安裝。 見https://dev.mysql.com/doc/refman/5.7/en/sys-schema.htmlhttps://github.com/mysql/mysql-sys

  • 通過什麼每組#users是前3的用戶羣體
  • 不知道你想要什麼

  • 什麼是數據庫 - 前3排名最高大小的最低階的GB
  • 這可以在中找到是這樣的:

    SELECT TABLE_SCHEMA, SUM(DATA_LENGTH) data FROM information_schema.tables GROUP BY TABLE_SCHEMA ORDER BY data DESC LIMIT 10; 
    

    但是介意:這個值部分是猜測。實際的磁盤使用情況可能會有所不同,例如,池中已刪除數據的碎片。 Google文檔https://dev.mysql.com/doc/refman/5.7/en/tables-table.html

    相關問題