Sql-server – Cannot remove Mirroring / nor restore or delete database:Error 3456 (SQL Server 2012)

mirroringsql-server-2012

I have a database that was a mirrored partner and went into suspended state. (Mirror Server was shut down).

I took the principal database out of mirroring using SSMS. But now I am unable to restore the mirror database so that I can set up the mirroring again.

When I run ALTER DATABASE X SET PARTNER OFF on the mirror, SQL Server logs

Error 3456 (Could not redo log record)

When I run RESTORE on this database from a backup – SQL Server tells me I cannot because the database is involved in mirroring.

Is there any other way to drop this database safely? I cannot take it offline and cannot delete it for the same reasons. It seems I cannot remove mirroring on the Mirror, for some reason. Thank you

Edit:

I should probably give more background. The situation came about because I shut down the OS before stopping SQL Server & SQL Agent services. (Assuming that the OS would trigger a safe shut down of these services, like others, not wise).

This probably caused some sort of corruption which makes the DB un-editable, even to remove it from mirroring. Aside from shutting down SQL Server and moving the .mdf / .ldf files then restarting it – are there other options? Can I actually try editing the .ldf file to remove the offending record, or something like that?

Best Answer

This is a known issue which Microsoft has resolved in Cumulative Update 6.