I have a game - virtual soccer manager. It is browser based game. It is split into 'seasons' each of them takes around a half of a real year. The central game element is a soccer match, each team plays around 40-50 matches per season, there are roughly a thousand of teams.
Each match has a lot of match related data: game moments description, amount of experience earned by each team player during each match, etc...
Web site has around 200-600 users in different times and exists almost 8 years. For this time game get a ton of data. All data are saved in MySQL DB (5.1).
My problem is that tables size is growing constantly. It is not the problem on its own, but when I do some data maintenance (add new fields into existing tables, change field type, etc.) it takes a ton of time to execute those queries.
From one side, I don't really want to delete aged data (that is more than 5 years old) as potentially users could be interested in looking into them. from another side, 5 years old and older data are not really concerning and COULD be deleted.
Question: what is good practices for keeping/archiving data in general and for online games in particular?
P.S. Probably I should ask on another site?