ベース URL を手動で変更する方法

問題

サーバーのベース URL を UI で構成するときに、UI に次のエラーが表示される。

" Your session has expired. You may need to re-submit the form or reload the page."

  ソリューション

データベースの手動変更は危険な場合があります。これらの変更を試行する前にデータベースのバックアップを取得するようにしてください。

bandana テーブルからベース URL を取得します。

select BANDANAVALUE
from BANDANA
where BANDANACONTEXT = '_GLOBAL'
and BANDANAKEY = 'atlassian.confluence.settings';
これにより、bandanavalue フィールドの大規模な文字列の出力を得られます。値全体をコピーして baseUrl を更新し、値全体を挿入して戻します。このレコードの値は <settings></settings> タグで囲まれています。これらのタグを含む全体をテキスト エディタにコピーして変更を行います。

Postgres のクエリ

update BANDANA 
set BANDANAVALUE = "<string_from_above_step>"  
where BANDANACONTEXT = '_GLOBAL'
and BANDANAKEY = 'atlassian.confluence.settings';


SQL Server のクエリ

update BANDANA 
set BANDANAVALUE = '<string_from_above_step>'
where BANDANACONTEXT = '_GLOBAL'
and BANDANAKEY = 'atlassian.confluence.settings';

Notice the use of single quotes, instead of double quotes when modifying the BANDANAVALUE. If you use double quotes and the QUOTED_IDENTIFIER parameter is set to ON in your MS SQL Server database, you may hit the following error message:

SQL Error [103] [S0004]: The identifier that starts with '<settings> <doNotSave>false</doNotSave> <allowCamelCase>false</allowCamelCase> <allowTrackbacks>false</allowTrackbacks>..... ' is too long. Maximum length is 128.

あるいは、baseUrl の値が出力のほかの場所に確実に存在しない場合は、置換昨日を利用して作業を迅速に行えます。

Postgres のクエリ

update BANDANA 
set BANDANAVALUE = replace(BANDANAVALUE, '<old baseUrl>', '<new baseUrl>') 
where BANDANACONTEXT = '_GLOBAL' 
and BANDANAKEY = 'atlassian.confluence.settings';

SQL Server のクエリ

UPDATE BANDANA
SET BANDANAVALUE = CAST(REPLACE(CAST(BANDANAVALUE as nvarchar(max)),'<oldURL>','<newURL>') as ntext)
WHERE BANDANACONTEXT = '_GLOBAL'
AND BANDANAKEY = 'atlassian.confluence.settings';


Last modified on Mar 7, 2025

この内容はお役に立ちましたか?

はい
いいえ
この記事についてのフィードバックを送信する
Powered by Confluence and Scroll Viewport.