小编Jus*_*ner的帖子

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

了解 SQL Server 主动/主动集群

我对 SQL Server 的主动/主动集群有一个模糊的理解。任何人都可以帮助确认我的理解是否正确?

据我了解,主动/主动集群使用两个或多个 Windows 服务器。假设我们有两台服务器 n1 和 n2。然后我们在这两台服务器上创建一个故障转移集群,并将 n1 和 n2 加入集群。然后我们在 n1 和 n2 上安装一个 SQL Server 实例 i1。之后,我们在 n1 和 n2 上安装另一个 SQL Server 实例 i2。然后我们可以在 n1 上启动 i1 并在 n2 上启动 i2 以创建一个主动/主动集群。稍后我们可以将 i1 从 n1 故障转移到 n2,并将 i2 从 n2 故障转移到 n1。

我的理解正确吗?我们是否需要在 n1 和 n2 上安装实例 i1 和 i2?安装配置好主动/主动集群后,每个节点上安装并运行了多少SQL Server服务?

sql-server clustering failover

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

“始终在故障转移群集实例上”和“SQL Server 故障转移群集”是一回事吗?

我正在阅读 SQL Server 的文档。在https://docs.microsoft.com/en-us/sql/sql-server/failover-clusters/windows/windows-server-failover-clustering-wsfc-with-sql-server 的这个页面上,它说:

Always On 可用性组和 Always On 故障转移群集实例都使用 WSFC 作为平台技术,将组件注册为 WSFC 群集资源。

我有点困惑。在以前版本的 SQL Server(如 SQL Server 2008)中,有一项称为SQL Server 故障转移群集的技术,它与Always On 故障转移群集实例相同吗?希望有人能澄清这一点。提前致谢。

sql-server clustering availability-groups hadr

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

在 SQL Server 中将堆更改为聚簇表时会发生什么?

据我了解,堆是一个无序的对象。当您插入一条记录时,SQL Server 使用 IAM 页获取属于该堆的页,并使用 PFS 页查找具有足够空间容纳该记录并插入其中的特定页。

当您在其上创建聚簇索引时,它就变成了一个聚簇表,而聚簇索引本身就变成了表。但是由于聚集索引和原始堆是两种不同的结构,SQL Server 是否会创建一个新结构(聚集索引)并将所有内容从帮助移动到新结构然后删除堆?

有很多东西可以在表上定义,比如触发器、约束、权限等。如果我的假设是真的,那意味着 SQL Server 也将所有这些东西移动到新结构中。我在文档中没有找到任何相关信息。我的理解正确吗?

sql-server clustered-index heap

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

“LGWR”是否严格以循环方式写入在线重做日志文件?

“LGWR”是否严格以循环方式写入在线重做日志文件?我从 Oracle 文档中看到了这句话。

如果归档被禁用(数据库处于 NOARCHIVELOG 模式),那么当最后一个重做日志文件已满时,LGWR 继续覆盖第一个可用的活动文件。

这是否意味着当 LGWR 写入某些重做日志文件时可以跳过它们?

谢谢。

oracle

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

Oracle 权限问题

请参阅以下声明。我的问题是,表 t1 是在用户表空间中创建的,因此它会占用一些空间。但是为什么它可以在我对用户表空间施加配额之前创建?

谢谢。

sys@ORCL>create user a identified by a account unlock;

User created.

sys@ORCL>create table a.t1(c int);

Table created.

sys@ORCL>select owner, table_name, tablespace_name from dba_tables where table_name = 'T1';

OWNER                  TABLE_NAME             TABLESPACE_NAME
------------------------------ ------------------------------ ------------------------------
A                  T1                 USERS

sys@ORCL>insert into a.t1 values(1);
insert into a.t1 values(1)
              *
ERROR at line 1:
ORA-01950: no privileges on tablespace 'USERS'


sys@ORCL>alter user a quota 10M on users;

User altered.

sys@ORCL>insert into a.t1 values(1);

1 row created.

sys@ORCL>commit;

Commit …
Run Code Online (Sandbox Code Playgroud)

oracle permissions

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

“线程”在“线程检查点”上下文中是什么意思?

以下摘录来自Oracle 概念。也许这是一个愚蠢的问题,但我真的需要你的帮助来理解它。

我的问题是:

  • 上下文线程检查点中的线程是什么意思?
  • 这是否意味着重做日志线程(属于特定实例的所有重做日志文件)?
  • 什么某个目标的手段?

谢谢大家!英语不是我的母语,我觉得完全理解这一点有点困难。

When Oracle Database Initiates Checkpoints 

The checkpoint process (CKPT) is responsible for writing checkpoints to the data file  
headers and control file. Checkpoints occur in a variety of situations. For example,  
Oracle Database uses the following types of checkpoints: 

?   Thread checkpoints 
    ^^^^^^
    The database writes to disk all buffers modified by redo in a specific thread before  
                                                             ^^^^^^^^^^^^^^^^^^^^
    a certain target. The set of …
Run Code Online (Sandbox Code Playgroud)

oracle checkpoint

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

安装SQL Server时如何指定系统数据库位置?

安装SQL Server的时候好像不能指定系统数据库的位置。我想知道这是否属实。看看我附上的图片。

谢谢!在此处输入图片说明

sql-server installation

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

当集合为空时如何理解“NULL NOT IN”?

这个问题中的 SQL 是针对 Oracle 的。但是您可以简单地删除FROM dual以使其在 SQL Server 上工作(它返回与 Oracle 相同的结果)。

我有以下 SQL:

SELECT 1
FROM dual
WHERE NULL IN (SELECT 1 FROM dual WHERE 1 = 0);

SELECT 1
FROM dual
WHERE NULL NOT IN (SELECT 1 FROM dual WHERE 1 = 0);
Run Code Online (Sandbox Code Playgroud)

它分别返回一个空集和 1。当我们用其他值代替 时NULL,我们得到了完全相同的结果。

SELECT 1
FROM dual
WHERE 33 IN (SELECT 1 FROM dual WHERE 1 = 0);

SELECT 1
FROM dual
WHERE 33 NOT IN (SELECT 1 FROM dual WHERE 1 …
Run Code Online (Sandbox Code Playgroud)

null oracle sql-server

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

了解和优化 SQL Server 中多个数据库的重复查询哈希

我正在使用托管数千个数据库的 SQL Server 实例。每个数据库对应不同的客户,但它们都共享相同的模式。

最近,我观察到许多查询具有相同的查询哈希。经过进一步调查,我发现虽然查询具有相同的文本,但它们是针对不同的数据库执行的。

据我了解,由于每个查询的上下文都是特定于数据库的,因此重复的查询哈希是可以预料的。不过,我很想知道我的理解是否正确。

此外,我有兴趣探索优化此设置的选项。具体来说,是否有一种方法可以整合不同数据库之间相同查询的执行计划,或者由于不同的数据库上下文而无法实现这一点?

任何有关此事的见解或建议将不胜感激。

预先感谢您的帮助!

sql-server execution-plan

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