2011-11-26 74 views
1

我想爲我的網站執行優化,並且希望在同一數據庫上創建以前綴old_開頭的新表,以保存數千箇舊行(自2007年起),並且只保留從2011年開始的數據。所以PHP執行僅查詢從原始表格2011年開始的數據。未使用的mysql表會影響網站性能嗎?

保存舊數據的old_table是否會影響性能?

注意:old_table將被隔離(PHP將不再訪問此表)。

+0

真的很困惑這裏發生了什麼,甚至我的問題得到-1。真的很奇怪的人仍然存在:/ – Mbarry

回答

5

所有表都耗盡了數據庫的內部資源,並使中央數據庫功能變慢。

然而,通常情況下,這應該是不明顯的。

他們可能會用盡你的一些內存,他們當然會用盡存儲空間。只要你沒有任何問題,我個人不會在意。

+0

謝謝你的及時答覆,如果你在我的選擇;你會怎麼做?或者只是我問你想推薦什麼? – Mbarry

+0

如果你打算稍後使用它,我會把它留在數據庫中。如果過了一段時間你注意到你並不真的需要它們,我會在導出它們之後從數據庫中刪除它們。如果你的數據庫很小,你不必擔心它。 –

0

它們不會使你的db變慢,很可能它甚至不需要「歸檔」舊數據。如果您正確使用表中的索引,那麼數據庫的全部目的就是能夠高效地搜索數千,數百萬甚至數十億行,而不會降級太多。我會把他們留在原地。如果表格已正確編制索引,則將數據移動到其他表格可能不會提高性能。

[R

1

是的,它會損害性能,尤其是 - 正如上面的帖子提到的 - 如果你是低的RAM,因爲這將意味着更多的正在使用的RAM,如果你是低的RAM這可能會導致各種的性能下降。

例如,假設您有website_new和未使用website_old數據庫。如果你有innodb_buffer_pool_size設置爲3GB,那麼如果website_old留在那裏,則需要增加該值。或者你會注意到,InnoDB緩衝池免費將被耗盡,因爲無論使用MySQL MySQL都緩衝。

即使有很多內存,保留舊的數據庫通常會強制您增加很多my.cnf配置設置以保持性能。

希望這會有幫助

相關問題