有时候,我们采用备份还原的方式移动数据库从一个服务器到另一个服务器,系统管理员能看到其中的数据,但原先定义的数据库用户,却可能无法继续在新服务器上使用。这就是所谓的孤立用户。(《Microsoft SQL Server 企业级平台管理实践》P58)
原因:SQL server的用户安全管理分为两层,整个服务器一层,每个数据库一层。一个用户,在每层上都有帐号,每个层面上都会分配不同的权限。
服务器层----登录帐号;
数据库层----数据库用户:数据库MAPING等。
都对应一个SID。两者一致,可认为是同一用户。
解决办法(网上很多)很简单: sq_change_users_login.