私はかなり長い間この問題を理解しようと試みており、すべての通常の解決策を見てきました。sqliteデータベースで.backupを実行しようとしています。重要ではないと思いますが、この特定のデータベースはMembaseによって使用されており、Amazonクラウドでも実行されています。バックアップ先のフォルダーとデータベースの元のフォルダーの両方に777のアクセス許可があります(これがこのメッセージの通常の原因です)。バックアップコマンドをsudoすると、バックアップの途中で処理が停止し、CPU使用率を消費している間にプロセスがハングし、最終的にsqliteプロセスを強制終了します。データベースファイル自体をchmod777で調べました。
これが起こっていることです:
/opt/membase/bin/sqlite3 /mnt/data-store/default-data/default-0.mb '.backup /mnt/data-backup/mbfiles/test.mb'
Error: unable to open database file
フォルダをls-laすると、次のようになります。
drwxrwxrwx 2 membase membase 4096 Sep 10 15:41 .
drwxrwxrwx 4 membase root 4096 Aug 5 01:10 ..
-rw-r--r-- 1 membase membase 53248 Sep 10 15:41 default
-rwxrwxrwx 1 membase membase 849593344 Sep 10 15:41 default-0.mb
そしてバックアップフォルダ:
drwxrwxrwx 2 ec2-user ec2-user 4096 Sep 10 15:41 .
drwxrwxrwx 4 root root 4096 Sep 3 00:26 ..
また、重要だと聞いているので、/tmpの許可
drwxrwxrwt 3 root root 4096 Sep 10 03:32 .
私はこれを1週間以上修正しようとしていますが、新しいアイデアがあれば幸いです。これは実稼働環境であるため、再起動することはできません。
編集:チェックしたところ、大きなデータベースではなく、小さな「デフォルト」ファイルをバックアップできるため、フォルダーのアクセス許可に関するあらゆる種類の問題が除外されます。どんな助けでも大歓迎です。
ありがとう!