300 гб не очень маленькая, но и совсем не большая база. Вам нужно бы снять статистику по чтению/записи, посмотреть самые тяжелые запросы (такой функционал средствами mysql можно получить
habrahabr.ru/post/31072/).
Выяснить чего именно не хватает - проца, оперативки, диска на запись, диска на чтение?
От этого уже и танцевать. может просто парочку ssd в рейд и хватит?