2012-06-08 18 views
0

我想創建一個表,其中的條目在Linux服務器上的PHP和MySQLi/MySQL中插入後24小時過期。 我正在將它用於我的程序,該程序會將數據上傳到服務器以便傳輸到另一臺計算機 - 但爲了節省存儲空間並減少服務器負載,我希望使數據在24小時後過期。 它的工作原理是這樣的:即將到期的MySQL條目

  1. 用戶告訴我的程序得到一個傳輸代碼。
  2. 我的程序將其數據上傳到服務器,服務器返回一個唯一ID - 我的程序將其顯示給用戶。
  3. 用戶使用我的程序在不同的計算機上鍵入它。
  4. 我的程序從服務器下載數據,然後從數據庫中刪除條目。
  5. 如果用戶在24小時內沒有輸入代碼,服務器會以某種方式刪除它。

我可以使用cron作業運行PHP文件每隔一小時,但可能會增加,特別是因爲我的服務器將被用於很多其他的東西,有可能是在庫MySQLi更好的方式服務器負載。

此外,我正在使用的編程語言不是能夠在客戶端執行此操作,而且SSL在我的服務器上不可用。

回答

2

使用每天運行一次的cron作業並刪除超過24小時的所有條目。

+0

是的,如果沒有其他解決方案,我會試試這個,因爲如果有一種方法可以讓MySQL做到這一點,它會更容易。 – comp500

+0

並感謝您的快速回復! – comp500

+0

每當用戶與服務器交互以獲取ID時,您也可以運行此「刪除過程」,刪除舊條目 - 不需要cron。由於這種情況比較頻繁,所以不應該有大量的數據要刪除,所以應該只需要幾毫秒。 – slash197