簡體   English   中英

擁有數百萬個表的數據庫

[英]Database with millions of tables

我經常閱讀MySQL數據庫,當數據庫中存在特定的表時,這些數據庫是不可靠的。 我的問題是我的系統的所有用戶都能夠創建一個練習,並且每個練習都存儲為一個額外的表。 從理論上講,5年后有可能存在超過100,000或甚至2,000,000個表。 這是MySQL系統的問題嗎?有什么更好的方法來處理這個問題?

MySQL本身對數據庫或表的數量沒有內置限制 但是,每個數據庫都將打開一個新目錄,每個表最多可能導致該目錄中有三個文件。 如果您的系統無法有效處理,您可能會在一段時間后遇到問題。

我建議您在用戶創建表時記錄帶有時間戳的表。 然后你可以在它們過時后安全地放下它們。

您可以在每個表使用時trigger 創建一個active_tables表,並在每次創建新表時使用日期和時間創建一個條目。 並且還為select, update, delete OR schema modificationany DML操作創建trigger並在active_table更新表修改時間,然后每天運行CRON作業以刪除所有舊表並且在過去6個月內未使用的表。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM