JIRA Cannot Create Issues when Using MySQL with Binary Logging
プラットフォームについて: Data Center - この記事は、Data Center プラットフォームのアトラシアン製品に適用されます。
このナレッジベース記事は製品の Data Center バージョン用に作成されています。Data Center 固有ではない機能の Data Center ナレッジベースは、製品のサーバー バージョンでも動作する可能性はありますが、テストは行われていません。サーバー*製品のサポートは 2024 年 2 月 15 日に終了しました。サーバー製品を利用している場合は、アトラシアンのサーバー製品のサポート終了のお知らせページにて移行オプションをご確認ください。
*Fisheye および Crucible は除く
症状
If you use JIRA with MySQL and attempt to create a JIRA issue or upgrade a plugin, JIRA may generate an error similar to the following:
Error creating issue: Could not create workflow instance: root cause: while inserting: [GenericEntity:OSWorkflowEntry][id,null][name,jira][state,0]
(SQL Exception while executing the following:INSERT INTO OS_WFENTRY (ID, NAME, INITIALIZED, STATE) VALUES (?, ?, ?, ?)
(Binary logging not possible. Message: Transaction level 'READ-COMMITTED' in InnoDB is not safe for binlog mode 'STATEMENT'))
または
Binary logging not possible. Message: Transaction level 'READ-COMMITTED' in InnoDB is not safe for binlog mode 'STATEMENT'
診断
You may encounter this problem if your JIRA MySQL database configuration:
- Makes use of the InnoDB database storage engine (which is recommended)
AND - Uses MySQL's default binary logging format
JIRA uses the 'READ-COMMITTED' transaction isolation level with MySQL, which currently only supports row-based binary logging. For more information about this, please refer to MySQL issue no. 40360.
ソリューション
To overcome this problem, you must configure MySQL's binary logging format to use 'row-based' binary logging
- Shutdown JIRA and your MySQL service if necessary.
Open the MySQL configuration file (
my.cnf
) in a text editor.On UNIX-based systems, this file may be located in the
/etc
directory.Locate the
binlog_format
property in this file in the[mysqld]
section and ensure that its value isrow
, such that you end up with:binlog_format=row
This is only needed (and valid) for MySQL versions 5.1.5 and later.
- Save your changes to this file and restart your MySQL service and JIRA.