The key question, I think, is: What and why exactly you need to archive?
Usually you archive stuff that won't be written in it, only for reading (excepting by the admin/mods!). But I have done this already,creating one forum "Archives". I close the long topics (I have such - a few but very long) and move them there , and it's OK.
In the same time miniBB can maintain big databases (simple structure/much text), but it might be good to remove the archived material, just to make it lighter.
The archived topics is good to be accessible through the same board interface (as in read only forum, same kind of links). It's good, too, the VIEW of the archives to be the same as in the active part of the board - just as the topics/posts have been created/posted.
So, may be it can be done doubling the database tables and putting the archived stuff there. Then in the process of archiving the former links could be simply "reworked" - as when you move a message. You see, the same links simply to begin to point to tables 7-12 instead of 1-6.
Then the active board will continue to work only with tables 1-6, ignoring tables 7-12, and when you want to read archived stuff, it will switch to tables 7-12. Nobody can read and write in the same time, excepting if he starts another copy of the board :)
I dont know is it posiible to reach this with one database...
Or may be with two, reached with the same script...
However, Paul and Team could say better.