My organization is rewriting our database-driven website from scratch including a brand new database schema.
In the current setup both live and test websites use the exact same database.
We would like the next version to have a separate database for both live and test versions of the website.
Updating the live version of the database with new schema changes from test isn't a problem.
The problem is data on the live database is constantly being changed. For example, users uploading images, modifying meta data, creating new objects, etc.
What is the proper way of keeping the data on the test server in sync with user-entered data on the live server?