Намаляване на размера на базата данни
Искам вашия съвет за следното задача:
има база данни mysql, в която наскоро добавени записи (за последните 1-2 месеца) се използват главно за работа. След употреба данните по същество просто се намират в базата данни, като заемат място и забавят работата.
Но не можете да ги изтриете, защото понякога (рядко) трябва да правите отчети за дълго време, например за една година или повече.
Въпросът е как да се оптимизира всичко това?
Опция 1:
Създайте копие на базата данни, която ще служи като архив и веднъж седмично ще прехвърля данни от основната база данни на възраст над 2 месеца. Използвайте sql скрипт с изрази на формата:
Но как, в този случай, пишете заявки за дълго време?
Използвате сложни скриптове с UNION или събирате обща база от две части? И двете изглеждат не особено удобни ...
Вариант 2:
Отново създайте копие на базата данни, която ще служи като архив и ще конфигурира репликация за нея. И след това някак хитро изтрийте древните редове от основната база данни, но така че тези промени да не се възпроизвеждат. Възможно ли е това по принцип?
Може би има някои други опции?
Благодаря!
И какво ви пречи да правите агрегиране на статистически данни?