Sqlite環境で作成したバックアップファイルをMySQLでインポートするとエラーになる

【環境情報】
・baserCMSのバージョン:5.1
・レンタルサーバー名:さくらインターネット レンタルサーバースタンダードプラン
・使用テーマ:bc_sample
・PHPスキル(自己評価):E

Sqlite環境で使用しており、もしやMySQL環境の方が不具合少ないのかも?とおもったのでクラッシュを機にMySQLで動作させようと思ったのですが、バックアップファイルからの復旧時にデータベースの書き込みが出来ないというエラーで止まりました。
その後管理画面にログイン不可、パスワード復旧のメールも送られてこない状態となりました。
データベースを見てみると少なくとも一部のデータは書き込まれているようです。
Sqlite環境からの移行だから発生した物なのかどうかは不明ですし、結局Sqliteで運用することにしましたが、一応ご報告しておきます。
バックアップファイルを展開したフォルダサイズは328kb
MySQLのデータベースサイズは848kb
baser.dbのサイズは52198b
でした。

こんにちは!

Sqlite環境で作成されたバックアップファイルについてですが、

  1. バックアップファイル作成時のbaserCMSのバージョンも5.1でしょうか?
  2. バックアップファイルはbaserCMSの「データのバックアップ」機能を使用して作成し、復旧は「データの復元」機能を使用されたのでしょうか?

ご確認をお願いします。

ご返信有り難うございます。

1,バックアップファイルbaserCMSバージョンは5.1ですが、データベースバージョンは異なります。
2、はい。

1,に関しては別のスレッドで環境について
・baserCMSのバージョン:5.0.18(5.1.0をインストールしバックアップより復元しましたが、環境情報では左記の通り表示されます。)
と記載したところアドバイスがありましたが、上記スレッド記載の通りエラーが出てしまい、データベースバージョンの変更は出来ませんでした。

流れとしては
1、5.0系からバックアップファイルを作成(Sqlite)
2、5.1系にアップグレード失敗
3、5.1系をクリーンインストールし、1のデータベースから復旧(Sqlite)
4、3からバックアップファイルを作成後、プラグイン関連でCMSがクラッシュ。
5、クリーンインストール後、4のファイルから復旧失敗。(MySQL)
6,上記エラーでクリーンインストールし、復旧(Sqlite)
となります。

5.0.18のバックアップデータを5.0.18を団ロードしてインストールし直し、MySQL接続にて試しましたが以下のエラーが出てしまいました。(猶、コアのバージョンはなぜか5.0.20になっています。)
Sqliteではインストールできました。

データの復元に失敗しました。ログの確認を行なって下さい。SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry ‘2147483647’ for key ‘PRIMARY’

image

ユーティリティートップーツリー構造のチェック
でエラーが出たので
ツリー構造のリセット
を行いましたが、エラーがなくなりません。
エラーログを見たところ以下のエラーがあり、ツリー構造のリセットをしても改善されないようです。
データベースの重複みたいな物がありそうですが、MySQLへの復元でのエラーと関係ありますでしょうか?

2024-09-06 18:39:31 error: index, 18, duplicate
2024-09-06 18:39:31 error: index, 19, duplicate
2024-09-06 18:39:31 error: index, 20, duplicate
2024-09-06 18:39:31 error: index, 21, duplicate
2024-09-06 18:39:31 error: node, 4, has invalid left or right values
2024-09-06 18:39:31 error: node, 5, has invalid left or right values
2024-09-06 18:39:31 error: node, 6, has invalid left or right values
2024-09-06 18:39:31 error: node, 7, has invalid left or right values
2024-09-06 18:39:31 error: node, 11, has invalid left or right values
2024-09-06 18:39:31 error: node, 12, has invalid left or right values
2024-09-06 18:39:31 error: node, 13, has invalid left or right values
2024-09-06 18:39:31 error: node, 15, has invalid left or right values
2024-09-06 18:39:31 error: node, 19, has invalid left or right values
2024-09-06 18:39:31 error: node, 21, has invalid left or right values
2024-09-06 18:39:31 error: node, 23, has invalid left or right values
2024-09-06 18:39:31 error: node, 24, has invalid left or right values
2024-09-06 18:39:31 error: node, 25, has invalid left or right values
2024-09-06 18:39:31 error: node, 26, has invalid left or right values
2024-09-06 18:39:31 error: node, 29, has invalid left or right values
2024-09-06 18:39:31 error: node, 30, has invalid left or right values
2024-09-06 18:39:31 error: node, 31, The parent field is blank, but has a parent
2024-09-06 18:39:31 error: node, 32, The parent field is blank, but has a parent

@tky.yuuki こんにちは。表題の「Sqlite環境で作成したバックアップファイルをMySQLでインポートするとエラーになる」について、動作を確認しましたが、再現できませんでした。
ツリー構造も特に問題はありませんでした。

いくつかの報告を頂いてますが、スレッドが長くなってきていますので、現状、解決していないものを一度整理して頂いてもよろしいでしょうか?

【環境情報】
・baserCMSのバージョン:5.0.20(5.0.18をインストールしたがバージョンは左記)
・レンタルサーバー名:さくらインターネット レンタルサーバースタンダードプラン
・使用テーマ:bc_sample
・PHPスキル(自己評価):E

ご返信有り難うございます。

・Sqliteで作成したバックアップデータをMySQL環境で復元しようとすると

データの復元に失敗しました。ログの確認を行なって下さい。SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry ‘2147483647’ for key ‘PRIMARY’

とエラーが出る。

・Sqliteだと復旧できる。

・ツリー構造のチェックをして、エラーログを見るとこうなります。

@tky.yuuki 情報ありがとうございます。環境をあわせて再現性を確認しました。

【条件】

  • baserCMSのバージョン:5.0.20
  • レンタルサーバー名:さくらインターネット レンタルサーバースタンダードプラン
  • PHP:8.1.29
  • 使用テーマ:bc_sample
  • Sqliteの環境でバックアップを作成、MySQLで再インストール後、バックアップを復元

報告頂いたエラーは発生せず、ツリー構造のチェックを行ったところ問題ありませんでした。

これ以上の調査は難しく、解決を急ぐ場合は、baserCMSの制作パートナーにご連絡頂いた方がよいかと思います。力になれず申し訳ないです。

返信遅くなりました。
おそらくどこかの段階でDBが壊れたのだと思います。
有り難うございました。