Backup users and permissions before database restore

  • Hi,

    We are refreshing our test environment daily from our production backup. But the users are loosing their permissions in dev environment. Can anyone suggest me how to automate the process of user and their permission backup and execute the permission script post -refresh ?

    I have a query that takes the user, role permissions for a particular database, i need to automate this process. Please post your suggestions.

    thanks in advance

  • Do you use a scheduled job to refresh the test database? If so, then add a step to run your script. If you don't use a scheduled job how do you automate the process of the restore?



    Microsoft Certified Master - SQL Server 2008
    Follow me on twitter: @keith_tate

    Forum Etiquette: How to post data/code on a forum to get the best help[/url]

  • Keith Tate (10/7/2013)


    Do you use a scheduled job to refresh the test database? If so, then add a step to run your script. If you don't use a scheduled job how do you automate the process of the restore?

    Thanks Keith for the response. Yes, we use a scheduled job to refresh and yes we can add a step but this script just outputs the users,permissions which we again need to execute after the refresh is complete.

    Script output ( example for one user ) :

    IF NOT EXISTS (SELECT name FROM sys.database_principals WHERE name = 'Test') CREATE USER [Test] FOR LOGIN [Test] WITH DEFAULT_SCHEMA =dbo;

    EXEC sp_AddRoleMember @rolename = 'fairparamwriter', @membername = 'Test';

    EXEC sp_AddRoleMember @rolename = 'fairparamwriter', @membername = 'Test';

    GRANT EXECUTE TO [Test];

    GRANT SELECT ON [dbo].[dbatesttable] TO [Test];

  • The way I solved this is once the db is refreshed, add back what you need manually like via the GUI and script out the commands... then simply put those commands into a step after the restore.

  • Check for stored procedure to fix orphaned users or fix user login which may help. Or create a script of commands which manually you are executing on server to fix users and execute by creating additional step after restore.

    ---------------------------------------------------
    "Thare are only 10 types of people in the world:
    Those who understand binary, and those who don't."

Viewing 5 posts - 1 through 4 (of 4 total)

You must be logged in to reply to this topic. Login to reply