【转载】SQL Server 2008 中新建用户登录并指定该用户的数据库

时间:2023-03-08 16:09:40

提要:我在 SQL Server 中新建用户登录时,出现了三种错误,错误代码分别是 18456、15128、4064

-----------------------------------
 正 文
-----------------------------------

一、实验环境

Windows 7
SQL Server 2008
数据库实例名为 TestDB,新建的用户名为 testUser

二、操作步骤

1、打开 SQL Server Management Studio,以 Windows身份认证方式登录
2、在对象资源管理器下,右键 Security ==> Logins ==> New Login

【转载】SQL Server 2008 中新建用户登录并指定该用户的数据库

3、打开 新建登录名 对话框后,常规 右侧输入相应的登录名、密码和默认数据

【转载】SQL Server 2008 中新建用户登录并指定该用户的数据库

用户映射选项卡下

【转载】SQL Server 2008 中新建用户登录并指定该用户的数据库

状态选项卡下

【转载】SQL Server 2008 中新建用户登录并指定该用户的数据库

输入完成后确认

4、对象资源管理器 下,右键 实例名称(不知道这么叫对不对),下图中蓝色背景的部分 ==> Properties

【转载】SQL Server 2008 中新建用户登录并指定该用户的数据库

在 安全性 选项卡下选择 混合验证模式 后确定

【转载】SQL Server 2008 中新建用户登录并指定该用户的数据库

5、重启 SQL Server 服务

【转载】SQL Server 2008 中新建用户登录并指定该用户的数据库

此时新建用户成功。

三、几点说明

1、如果在 步骤3 常规 选项卡中勾选了 强制实施密码策略,则会出现 15128 错误
    此时需要以 Windows身份认证方式 登录后 执行如下语句

  1. AlTER LOGIN testUser WITH PASSWORD = '新密码'

2、如果在 步骤3 用户映射 选项卡中没有将该用户映射到相应的数据库,则即使在 常规 选项卡中指定了 默认数据库,该用户也不能正常登陆了,此时报错 4064,我的理解是数据库用户列表中并没有该用户,所以用户登录时拒绝操作
3、如果在 步骤4 中没有指定 服务器身份验证 方式,则登录时会出现 18456 的错误

四、总结

1、此时的 testUser 用户所拥有的权限非常低,仅是 可以连接,权限配置在相应数据库的 属性 配置中

【转载】SQL Server 2008 中新建用户登录并指定该用户的数据库

2、整个配置过程可以理解为  新建用户 ==> 将用户添加到相应的数据库用户列表中  ==> 配置用户权限 ==> 更改 SQL Server 的身份验证方式