Potential for Data Loss: The steps detailed in the resolution of this article may result in a loss of critical data if not performed properly. Before beginning these steps, make sure all important data is backed up in the event of data loss. If you are unsure or unfamiliar with any complex steps detailed in this article, please contact Product Support Services for assistance.
When running the stored procedure sp_changedbowner to change the dbowner to "andover97", the following error message is received: "The proposed new database owner is already a user or aliased in the database".
- Microsoft SQL Server 2000
- Microsoft SQL Server 2005
- Microsoft SQL Server 2008
- (Keywords: drop user )
The Andover97 user already has access to the database through an existing alias or security account within the database.
This can occur when the DB is not restored properly to the SQL server. The database may have been detached and then attached again, which is not the preferred method of restoring a ContinuumDB.
Under the ContinuumDB there is a "security" and then "users" folder. Check to see if the Andover97 user is in this folder. Continuum does not put this user in this folder. If it is there, then it will need to be dropped from the database before trying to change the dbowner. Do the following:
- Do a complete full backup of your ContinuumDB.
- Run the following SQL script to drop the user from the ContinuumDB.
DROP USER [Andover97]
- Now you should be able to re-run the stored procedure to change the db owner below.
To minimize the chance of this occurring again, the correct procedure for moving or restoring a Continuum database is to do the following:
- Create a new ContinuumDB with Continuums Database Initialization. This creates the DB, SQL jobs, stored procedures, adds Andover97 as an admin and a lot of behind the scenes security settings.
- Restore a previous backup overtop of the ContinuumDB created in step 1.
- Change the db owner with the above query using the sp_changedbowner stored procedure.
- Re-initialize the Cyberstation into the Database using Continuums Database Initialization.