Transfering data: Connect to the other database(s) via well-known gateways, e.g. with Oracle to Oracle with database links and transfer the data. You can make tables in other databases accessible via Views, that way you don't need to import data, but will always work on fresh data.
Growing data: More entropy with every semester - that is right. Why is "old" data useless? What DotLrn may need - addressed in this thread already - is an archiving function, but getting that right is highly non-trivial.