In a MySQL system, how are developers and QAs given copies of the database for testing purposes?
-
Are slaves mocked up, then disconnected from the system and handed off to whoever needs it? How up-to-date are these database copies?
-
Answer:
Any backup of the database would be a copy usable for development or testing. You may have sensitive data in the live database, like credit card numbers or personal information. You should have a security policy about who gets access to such data, and you may want to blank out or overwrite certain fields with fictional values. You could also use a tool to generate completely fictional data of any size you want. For example, http://databene.org/databene-benerator can do this.
Bill Karwin at Quora Visit the source
Other answers
Let me give you a real-world example. We have three main instances (codebase, and databases) Live Dev Demo All three have different data on them, and logically separate codebases (though promotion from dev into demo and live is an ongoing task.) Most of our testing is done in Dev. However, there are some things where you really, really, need to test against live data. For this we have a tool that "creates an instance" (generally as a clone of one of the others). The tool has a bunch of options so we can, say, spin up a clone of the live ledger codebase, the dev customer-database codebase, but the live databases from each. (Our architecture is more complex than these two subsystems, but you get the point.) We used to do the clones on demand, but found it was taking about 90 minutes to do a full clone... ... so these days we also spin up a full clone of live automatically at 4am, every morning, and the first person who needs a test instance gets to "adopt" it rather than have to clone another. I've just had a look, and we have about 35 test instances at the moment - each has the name of an "owner" and a mandatory notes field about what it was set up to test. About once a quarter, someone (normally me) goes through and kills off the old ones... They run, by default, on the same hardware as the live service. The tool we use for this provisioning is on version 1.21, and dated the 2-Jul-2015, so from this, you can safely assume that it's evolved over time.
Mark Harrison
Related Q & A:
- How to do a MySQL recursive query?Best solution by Stack Overflow
- How to implement a voting system?Best solution by Stack Overflow
- How to create a build system in Sublime Text 3?Best solution by stackoverflow.com
- How to make a MySql query faster?Best solution by Stack Overflow
- How to install a GPS System in a car?Best solution by eHow old
Just Added Q & A:
- How many active mobile subscribers are there in China?Best solution by Quora
- How to find the right vacation?Best solution by bookit.com
- How To Make Your Own Primer?Best solution by thekrazycouponlady.com
- How do you get the domain & range?Best solution by ChaCha
- How do you open pop up blockers?Best solution by Yahoo! Answers
For every problem there is a solution! Proved by Solucija.
-
Got an issue and looking for advice?
-
Ask Solucija to search every corner of the Web for help.
-
Get workable solutions and helpful tips in a moment.
Just ask Solucija about an issue you face and immediately get a list of ready solutions, answers and tips from other Internet users. We always provide the most suitable and complete answer to your question at the top, along with a few good alternatives below.