Confluence 6 刪除垃圾內容
阿新 • • 發佈:2018-08-18
int 區間 desc username 添加 eclipse add 行操作 www.
屬性(profile)垃圾
屬性垃圾的定義為,一個垃圾用戶在 Confluence 創建了用戶,但是這個用戶在自己的屬性頁面中添加了垃圾 URL。
如果你有很多垃圾用戶在你的系統中創建了屬性,你可以使用下面的 SQL 很容易的一次性刪除。
如何刪除屬性中的垃圾:
- 停止 Confluence 實例然後備份好你的數據庫。
備註:這個步驟應該在你在數據庫運行下面的 SQL 之前進行操作。 - 找到最後的真實屬性:
SELECT
bodycontentid,body
FROM
bodycontent
WHERE
contentid
IN
(
SELECT
contentid
FROM
content
WHERE
contenttype=
‘USERINFO‘
)
ORDER
BY
bodycontentid
DESC
;
- 查看屬性頁面中的內容,直到你找到垃圾用戶的狀態。你可能需要要求一系列的區間。
- 找到需要刪除的集合:
CREATE
TEMP
TABLE
killset
AS
SELECT
bc.bodycontentid,c.contentid,c.username
FROM
bodycontent bc
JOIN
content c
ON
bc.contentid=c.contentid
WHERE
bodycontentid >= BOTTOM_OF_SPAM_RANGE
AND
bodycontentID <= TOP_OF_SPAM_RANGE
AND
c.contenttype=
‘USERINFO‘
;
DELETE
FROM
bodycontent
WHERE
bodycontentid
IN
(
SELECT
bodycontentid
FROM
killset);
DELETE
FROM
links
WHERE
contentid
IN
(
SELECT
contentid
FROM
killset);
DELETE
FROM
content
WHERE
prevver
IN
(
SELECT
contentid
FROM
killset);
DELETE
FROM
content
WHERE
pageid
IN
(
SELECT
contentid
FROM
killset);
DELETE
FROM
content
WHERE
contentid
IN
(
SELECT
contentid
FROM
killset);
DELETE
FROM
os_user_group
WHERE
user_id
IN
(
SELECT
id
FROM
killset k
JOIN
os_user o
ON
o.username=k.username);
DELETE
FROM
os_user
WHERE
username
IN
(
SELECT
username
FROM
killset);
如果你使用的是 Confluence 5.6 或者早期的版本,請使用下面的 SQL 命令:
- 一旦垃圾內容被刪除後,重啟 Confluence 然後重構內容索引。這操作將會從索引查找對話框中刪除任何相關的垃圾內容。
https://www.cwiki.us/display/CONF6ZH/Preventing+and+Cleaning+Up+Spam
Confluence 6 刪除垃圾內容