我希望我的一个db2用户能够对通过HADR复制到辅助数据库的主数据库发出查询。
在我的linux机器上的那个用户叫做EUSR。
现在作为用户db2inst1 (即具有管理权限的用户)登录,我调用以下命令
db2 "START HADR ON DATABASE MAMBO USER USR AS PRIMARY"
Enter current password for user:
当我给出正确的linux密码时,我得到了以下结果
SQL1092N "EUSR" does not have the authority to
perform the reques
我一直在使用SQL Server,并按如下方式查询数据:
SELECT
name as AGname,
replica_server_name,
CASE WHEN (primary_replica = replica_server_name) THEN 1
ELSE '0' END AS IsPrimaryServer
FROM master.sys.availability_groups Groups
INNER JOIN master.sys.availability_replicas Replicas ON Groups.group_id = Replicas.
我正在尝试使用to命令设置一个AlwaysOn AG,但是我的辅助服务器总是处于断开连接状态(当我故障转移时,我的旧主服务器就会断开连接)。这不是防火墙/网络问题,我可以通过TCP发送者/接收者将消息从SQL1发送到SQL2。
选项新可用性小组..。在SMSS中也会产生同样的问题。但是,当我创建一个带有新可用性组向导的AG时.效果很好。
这是我使用的This语句:
--on primary
CREATE AVAILABILITY GROUP [AG_SQL]
FOR
DATABASE SetupAG
REPLICA ON 'sql1'
WITH (ENDPOINT_U
我正在将一个测试从ReadyAPI转换成邮递员,并在这个场景中苦苦挣扎(而且我是一个非常新的,缺乏经验的)。有一个从json返回的多级数组(下面是示例片段)。ReadyAPI测试非常简单,因为它检查了特定值的存在。具体来说,检查XML是这样的:
<assertionOfType="JsonPath Existence Match", name="Check for existence of [ilm]"
我的问题是如何在邮递员中做到这一点。
样品json返回:
"t712714"" {
"ilm": {
通过使用此查询处理SQL:
SELECT ag.[name] as 'AG Name',
ag.Is_Distributed,
ar.replica_server_name as 'Replica Name'
FROM sys.availability_groups ag,
sys.availability_replicas ar
WHERE ag.group_id = ar.group_id;
我可以从SQL server中找到可见的可访问组(无论是分布式的还是非分布式的)。
如果它是AG成员,我可以看到实
我有一个查询来查找我的系统正在遭受的等待类型。
WITH [Waits] AS
(SELECT
[wait_type],
[wait_time_ms] / 1000.0 AS [WaitS],
([wait_time_ms] - [signal_wait_time_ms]) / 1000.0 AS [ResourceS],
[signal_wait_time_ms] / 1000.0 AS [SignalS],
[waiting_tasks_count] AS [WaitCount],
100
我的任务是监控SQL AlwaysON的性能。我已经编写了一个脚本,它将返回AlwaysON可用性组信息,如下所示:
;
WITH basicaginfo AS(
SELECT
ag.name AS AvailabilityGroupName,
cs.replica_server_name AS NodeName,
rs.role_desc,
rs.synchronization_health_desc,
DB_NAME(drs.database_id) AS DatabaseName
我试图找到需要运行的查询(或查询),以确定某个可用性组是否存在任何问题。我一直在使用:
SELECT @@SERVERNAME AS 'primary_replica', cs.database_name, rs.synchronization_health_desc
FROM sys.dm_hadr_database_replica_states rs
join sys.dm_hadr_database_replica_cluster_states cs on rs.replica_id =
cs.replica_id and rs.group_database_i
当试图确定特定集群上高可用性数据库的状态时,我会得到标题的错误消息。
Msg 512,16级,状态1,第1行
子查询返回的值超过一个。当子查询跟随=,!=,<,<=,>,>=或子查询用作表达式时,这是不允许的。
这是我代码的一部分。我需要能够利用这两个select语句的结果,如果两者都满足了,则分配@HadrRole。
IF ((SELECT ars.role
FROM sys.dm_hadr_availability_replica_states ars
INNER JOIN sys.databases dbs
ON ars.re
我用db2 10.5安装了两个相同的linux服务器。AUTO_BACKUP只在其中一个上工作。此外,尽管postfix on localhost正在运行,并且传递了一条带有sendmail的测试消息,但该服务器根本没有发出任何健康通知。
我希望在db2diag中看到的缺失消息:
Automatic job "Backup database online" has started on database STAGE_DB, alias STAGE_DB
我有:
HEALTH_MON, AUTO_MAINT, AUTO_DB_BACKUP都是ON
备份标准-如果大于1天,请执行
我刚刚将我的高可用性环境从SQL 2017升级到了2019版本15.0.4236.7,我在这两个服务器上都有相同的SQL代理作业,带有一个初始子句来确定作业是否应该运行(如果服务器是主服务器)。这在过去一直有效,但我遇到了一个错误。现在,如果辅助服务器调用存储过程,则辅助服务器上的同一作业将失败。如果作业对只读的表具有内联选择,则作业运行时不会出现任何问题,但是proc会抛出“目标数据库当前是.”的错误。这就像是在执行之前读取过程,而在调用行之前才读取行内选择。这里有一个简单的测试,它可以在2017年的辅助服务器上工作,但在2019年就不行了。不确定是bug还是功能。
SET TRAN