You might be asking why on earth would you want to get a database into an undesirable state, more specifically into a Recovery Pending state. Well, in my case, I had a client database that had entered into this state due to a failure of storage. Thankfully, this database was not being used for production, so I had some time to determine the best way to fix the issue.
A phrase that was often used during my time in the fire service, was “Try Before You Pry”. Does the front door of the house need to be kicked in? It may be unlocked and by trying before prying (with my boot) I can prevent damage to the door. In these types of scenarios, this philosophy holds true. Try things out on non-critical databases will help prevent any further damage.
In this instance, I want to try it before forcing something that might be damaging. This meant I had to get a test database into a recovering state. Once it is in the state I need, then I can attempt different methods to recover the database properly. Once a successful solution is determined, I can then confidently pry against the damaged database in production knowing that I am using a validated solution.
Read on to learn one way to put a database into recovery pending state, but definitely pay attention to the disclaimer. And its twin.