Sonarqube 如何清除声纳中的双剖面
最近,我两次从不同的sonar服务器恢复了我的质量档案,因为第一个似乎无法一次性工作,我认为第二个会覆盖第一个。但是,他们没有,我在声纳中留下了两个完全相同的剖面,具有相同的ID。我必须进入声纳数据库并手动删除它们,因为声纳不再启动。现在我只剩下3个不同的配置文件中的规则,其中2个不再存在。如何在不干扰仍然有效的配置文件的情况下清除这些参数?首先,您需要从已不存在的配置文件上链接的活动规则中删除参数:Sonarqube 如何清除声纳中的双剖面,sonarqube,Sonarqube,最近,我两次从不同的sonar服务器恢复了我的质量档案,因为第一个似乎无法一次性工作,我认为第二个会覆盖第一个。但是,他们没有,我在声纳中留下了两个完全相同的剖面,具有相同的ID。我必须进入声纳数据库并手动删除它们,因为声纳不再启动。现在我只剩下3个不同的配置文件中的规则,其中2个不再存在。如何在不干扰仍然有效的配置文件的情况下清除这些参数?首先,您需要从已不存在的配置文件上链接的活动规则中删除参数: DELETE FROM active_rule_parameters WHERE id IN
DELETE FROM active_rule_parameters
WHERE id IN (
SELECT active_rule_parameters.id
FROM active_rule_parameters
WHERE active_rule_id IN (
SELECT DISTINCT active_rules.id
FROM active_rules
WHERE NOT EXISTS(
SELECT *
FROM rules_profiles
WHERE active_rules.profile_id = rules_profiles.id
)));
然后,您需要删除已不存在的配置文件上链接的活动规则:
DELETE FROM active_rules
WHERE id IN (
SELECT DISTINCT active_rules.id
FROM active_rules
WHERE NOT EXISTS(
SELECT *
FROM rules_profiles
WHERE active_rules.profile_id = rules_profiles.id
));
我首先检查当我执行select*而不是delete时,结果是否会是什么,并且没有结果。所以没什么奇怪的,就像我以前试过的那样。下面是我使用过的用例:1->创建一个新的配置文件,2->激活一些规则,3->删除数据库中的配置文件。然后,执行这两个SQL查询已删除孤立的活动规则和活动规则参数。一个问题:您是执行了两个查询还是仅执行了第一个查询?我在select而不是delete上同时运行了这两个查询。更改您的用例,添加两个同名的概要文件,然后删除数据库中的1个概要文件,这两个概要文件都有相同的规则