Assumption: live/production web application inhibits errors being proven to finish-customers.
Suppose your tech support really wants to see live data but with the eyes from the development-side from the application (maybe you need to see what errors are occurring, or need to see when you have an problem fixed utilizing an finish-user's data).
At this time we have got one database serving both dev and live boxes (not my idea - I understand it's gross).
Edit: Best/handy tools for applying your suggestion?
We replicate the information back to another database. Yes, there's a delay, however it keeps people hands from the production servers. This enables us to "hide" information that technical support (and folks for your matter) aren't designed to see.
Additionally to replicating data lower, on production, we have seen who's drenched in to the application, and when it's part of the organization, send these to the actual error page versus the happy kitten having fun with a ball of yarn apologizing.
Support and restore from live to dev regularly (once, two times each day). It does not have to be realtime (as you may be entering data in the dev side anyway, that could create problems).
For those who have PCI or HIPAA data, make certain you do not put that inside your dev atmosphere -- that may break laws and regulations.
I generally enjoy having a 3-tier system for web design:
More often than not tests are a precise copy from the live system, with the exception that errors are switched on, whenever a latest version is going to be moved live it's changed using the latest version BEFORE live is, to identify upgrade issues.
Development is totally outside of live, to permit major changes to such things as the database, or changes towards the production atmosphere.
I'd first of all make errors are generally e-mailed to a person with particulars of methods the consumer arrived or at least drenched so that you can watch the mistake log when you perform similar actions to ascertain if you receive exactly the same messages within the log.
Company, copying the database around the dev server/website is most likely your only option. You wouldn't want any changes produced by the expansion team to reside data and you will most likely also provide changes that will not use the development database sooner or later.
I would not recommend carrying out a nightly copy like a developer may be in the center of newer and more effective feature where they've added data after which it's removed that evening. It's my job to copy the development database(s) to dev every time a major version is launched. This enables me to complete speed testing with many different live data. On some systems I additionally change everyones password to some default in order to login easily every user.
In case your configuration permits it:
a. Give a logging function (if there is not one already) to create messages of great interest to some log file.
b. Run the unix command
tail -f < logfile.txt
that will stream the growing log file for your console.
For those who have Home windows, you could try this: