zoukankan      html  css  js  c++  java
  • 关于sql孤立用户

     

    登录名与用户名

    登录名   sql server服务器中的一个实体。使用登录名登录sql。登录名的定义存放在master数据库中syslogins表中。在服务器中的“安全性”中的“登录名”中可看到所有登录账户。

    用户名   一个或者多个对象在某个特定数据库中的映射。用户的定义存放在没个数据库中的sysusers表中。

    sql server将登录名与用户名的关系称为映射。在访问某个数据库时,sql server 会查询在该数据库中是否与当前的登录名相关联的用户名。若存在,就使用此用户的权限访问数据库。若不存在,则使用gust用户访问此数据库。

    一个登录名可以被授权访问多个数据库,但一个登录名在每个数据库中只能映射一次。即一个登录可对应多个用户,一个用户也可以被多个登录使用。好比SQLSERVER就象一栋大楼,里面的每个房间都是一个数据库.登录名只是进入大楼的钥匙,而用户名则是进入房间的钥匙.一个登录名可以有多个房间的钥匙,但一个登录名在一个房间只能拥有此房间的一把钥匙。

    孤立用户

    若在ep数据库中存在用户“epuser”,但在登录名中无登录账户与之对应。那“epuser”将无法连接到sql server服务,“epuser”就成为孤立用户。

    解决方法

    1.添加一个与该数据库中用户名相同的登录账户。

    EXEC sp_change_users_login 'Auto_Fix', '用户名'

    2.新增登录账户,将该账户映射到孤立用户。

    EXEC sp_change_users_login 'Update_One', '用户名', '登录名'

    附:exec sp_change_users_login 'REPORT'(列出当前数据库中的孤立用户)

    参考:http://www.cnblogs.com/13590/archive/2007/09/28/909643.html

            http://wenku.baidu.com/link?url=t4ISK06hKZqhApCRFv7MUZE_wv90BZ9ul7AFQQKnCWl-staDz-xSME5UWsBBYYLp3p0_MeaPAqAKUqE5jLXqoijogFE3COr0VCsUU1IH0rq

            http://www.cnblogs.com/rainman/p/3509842.html#m1

  • 相关阅读:
    第三次冲刺
    第二次冲刺
    第一次冲刺
    团队学习
    git and github
    还不够格的程序员
    CF1602F. Difficult Mountain
    线性基
    欧拉回路学习笔记
    莫比乌斯反演-学习笔记
  • 原文地址:https://www.cnblogs.com/peaceOfMind/p/3613970.html
Copyright © 2011-2022 走看看