小编Ama*_*mam的帖子

用户登录失败错误:18456,严重性:14,状态:11

我有一个 AD 组XYZ,我已将其添加到具有data_reader权限的SQL Server 安全性中。

XYZ组中有大约 10 名能够成功访问 SQL Server 数据库的用户。我最近向该组添加了一个新用户(在 AD 级别),但此人无法访问 SQL Server(通过 Mgmt Studio)并且他收到以下错误

用户登录失败。原因:基于令牌的服务器访问验证因基础结构错误而失败。检查以前的错误。

错误:18456,严重性:14,状态:11。

我已经验证 AD 权限设置正确,用户已重新启动他的机器,他不属于任何具有DENY访问权限的组,并且 SQL ServerXYZ组已被删除并读取到 Mgmt Studio 中的 SQL Server 实例,并且服务器已重新启动。

关于如何进一步进行的任何想法?

谢谢!

sql-server sql-server-2008-r2 active-directory

7
推荐指数
1
解决办法
5万
查看次数

在 10 亿条记录表上重新创建索引

我有一个包含超过 10 亿条记录的表,它有 6 个索引(包括聚集索引 (ID))。我需要在带有日期列的新聚集索引上对该表进行分区。我在 ldf 文件中有足够的空间 (150gb) 在索引重建的情况下增长(tempdb 关闭)。

请帮助我以一种有效的方式在新的分区功能/方案上重建索引。这两种方法中的哪一种是一种高效且资源消耗较少的方式(或推荐任何其他方法)?

1.

  • 删除现有 CIX 并删除所有 N-CIX
  • 在 PScheme 上创建 CIX
  • 在 PScheme 上创建对齐/非对齐索引

2.

  • 仅删除 CIX
  • 在 PScheme 上创建 CIX
  • 创建对齐/非对齐索引(使用 DROP_EXISTING)ON

谢谢

index sql-server-2008-r2 partitioning

6
推荐指数
1
解决办法
2065
查看次数

一个文件组,多个数据文件,如何获取每个文件中的表列表

在我的一个生产数据库中,我有一个包含 3 个数据文件的文件组,这些文件位于 3 个不同的磁盘上。此文件组上有 50 多个表。

如何确定 3 个数据文件之间 50 个表中每一个的位置?我需要知道每个表的聚集索引驻留在哪个数据文件上。

例子 :

Table A : Datafile 1 : FG1
Table B : Datafile 2 : FG1
Table C : Datafile 1 : FG1
Table D : Datafile 3 : FG1
Run Code Online (Sandbox Code Playgroud)

sql-server-2008 sql-server filegroups

5
推荐指数
2
解决办法
4314
查看次数

SQLServer 行级安全性 - 从数据库内实施

在单个 SQL Server 2016 数据库上运行多租户应用程序。我有一个 RLS(行级安全性)谓词customer_id(每个租户唯一)并且该列存在于所有表中。

CREATE FUNCTION dbo.[RLSPredicate] (@CustomerId bigint)
RETURNS TABLE
WITH SCHEMABINDING
AS
RETURN SELECT 1 AS RLSPredicateResult WHERE (@CustomerId = 
CAST(SESSION_CONTEXT(N'customer_id') AS bigint))

GO

 -- two table example
 CREATE SECURITY POLICY [dbo].[RLSPolicy] 
 ADD FILTER PREDICATE [dbo].[RLSPredicate] ([customer_id]) ON [dbo].[user],  
 ADD FILTER PREDICATE [dbo].[RLSPredicate] ([customer_id]) ON [dbo]. 
  [user_email]
  WITH (STATE = ON, SCHEMABINDING = ON)
  GO

  -- Sample Query 
  EXEC sp_set_session_context @key=N'customer_id', @value='1231312'
  select top 1000 * from [user] where customer_id = 1231312
Run Code Online (Sandbox Code Playgroud)

使用上面的设计,EXEC …

sql-server row-level-security sql-server-2016

3
推荐指数
1
解决办法
381
查看次数