スポンサーリンク

プラグインUpdraftPlusでバックアップしたデータベースのバックアップファイルを解凍してみたらwp_optionsテーブルの復元処理しか含まれていなかった件

2023年3月17日

 こんにちは、その日暮らしです。

 今日は、プラグインUpdraftPlusでバックアップしたデータベースのバックアップファイルを解凍してみたらwp_optionsテーブルの復元処理しか含まれていなかった件について書いてみたいと思います。

 結果としては、wp_options以外のテーブルの復元処理も含まれていました。ただ、アーカイバによっては正しく解凍できない場合があるようだということがわかりました。

 需要があるかどうかわかりませんが、今回の体験談を記事にしてシェアしておきたいと思います。


事の発端

 私はプラグインUpdraftPlusを使ってWordPressの本番環境をバックアップしています。操作が簡単だし無料版でもクラウドストレージへバックアップできたりとスグレモノのバックアップツールです。

 事の発端は、UpdraftPlusってデータベースのバックアップをどうやってやってるんだろうなと思ったことです。

 というのも、私は前職でパッケージソフトのデータベースを担当していてWordPressのデータベースにちょっと興味があったのです。

バックアップファイルのダウンロードと解凍

 まず、バックアップ先のGoogleドライブをWebブラウザで開きデータベースのバックアップファイルをダウンロードしました。

 ダウンロードしたファイルを私がいつも使っているアーカイバLhaplusで解凍します。するとファイルが1つ解凍されるのでテキストエディタで開きます。

バックアップファイルの中身

 ファイルの中身は普通にテキストファイルになっていて復元処理を行うSQLステートメントが並んでいます。
SQLステートメントは、テーブルを削除(DROP TABLE)して再作成(CREATE TABLE)し、データを挿入(INSERT INTO)するようになってます。

 へー、mySQLのバックアップってそうなってるんだ。てっきり固有フォーマットのバイナリファイルだと思っていました。まあ、この方が可搬性あっていいのかもとも思います。

Lhaplusで解凍するとファイルが1つ解凍されるのでテキストエディタで開く。ファイルの中身はSQLステートメントで書かれた復元処理。

wp_optionsテーブル以外の復元処理はどこ?

 で、エディタを下の方にスクロールしていくとwp_optionsという名前のテーブルの復元処理だけでファイルが終わっていました。

 あと17個のテーブルの復元処理はどこいったんだ? 投稿ページや固定ページとかもデータベースに格納されているはずなのに・・・。

 バックアップ元のテーブルは、phpMyAdminを使って18個あることを確認済みです。

解凍したファイルにはwp_optionsテーブルの復元処理だけ。残り17個のテーブルの復元処理が存在しない。

 UpdraftPlusの動作ログを見てもテーブル18個分の処理が記録されています。

0011.807 (0) backup_2021-08-09-1702_wwwsonohigurashiblog_1cf134e05401-db-table-wp_options.table.tmpr45231.gz (1/18/fopen): adding to final database dump
0011.812 (0) backup_2021-08-09-1702_wwwsonohigurashiblog_1cf134e05401-db-table-wp_options.table.gz (2/18/fopen): adding to final database dump
0011.813 (0) backup_2021-08-09-1702_wwwsonohigurashiblog_1cf134e05401-db-table-wp_users.table.tmpr2.gz (3/18/fopen): adding to final database dump
0011.814 (0) backup_2021-08-09-1702_wwwsonohigurashiblog_1cf134e05401-db-table-wp_users.table.gz (4/18/fopen): adding to final database dump
0011.814 (0) backup_2021-08-09-1702_wwwsonohigurashiblog_1cf134e05401-db-table-wp_usermeta.table.tmpr76.gz (5/18/fopen): adding to final database dump
0011.815 (0) backup_2021-08-09-1702_wwwsonohigurashiblog_1cf134e05401-db-table-wp_usermeta.table.gz (6/18/fopen): adding to final database dump
0011.816 (0) backup_2021-08-09-1702_wwwsonohigurashiblog_1cf134e05401-db-table-wp_commentmeta.table.tmpr0.gz (7/18/fopen): adding to final database dump
0011.816 (0) backup_2021-08-09-1702_wwwsonohigurashiblog_1cf134e05401-db-table-wp_commentmeta.table.gz (8/18/fopen): adding to final database dump
0011.817 (0) backup_2021-08-09-1702_wwwsonohigurashiblog_1cf134e05401-db-table-wp_comments.table.tmpr11.gz (9/18/fopen): adding to final database dump
0011.817 (0) backup_2021-08-09-1702_wwwsonohigurashiblog_1cf134e05401-db-table-wp_comments.table.gz (10/18/fopen): adding to final database dump
0011.818 (0) backup_2021-08-09-1702_wwwsonohigurashiblog_1cf134e05401-db-table-wp_links.table.tmpr0.gz (11/18/fopen): adding to final database dump
0011.819 (0) backup_2021-08-09-1702_wwwsonohigurashiblog_1cf134e05401-db-table-wp_links.table.gz (12/18/fopen): adding to final database dump
0011.819 (0) backup_2021-08-09-1702_wwwsonohigurashiblog_1cf134e05401-db-table-wp_postmeta.table.tmpr3818.gz (13/18/fopen): adding to final database dump
0011.820 (0) backup_2021-08-09-1702_wwwsonohigurashiblog_1cf134e05401-db-table-wp_postmeta.table.gz (14/18/fopen): adding to final database dump
0011.821 (0) backup_2021-08-09-1702_wwwsonohigurashiblog_1cf134e05401-db-table-wp_posts.table.tmpr941.gz (15/18/fopen): adding to final database dump
0011.823 (0) backup_2021-08-09-1702_wwwsonohigurashiblog_1cf134e05401-db-table-wp_posts.table.gz (16/18/fopen): adding to final database dump
0011.824 (0) backup_2021-08-09-1702_wwwsonohigurashiblog_1cf134e05401-db-table-wp_term_relationships.table.tmpr100001.gz (17/18/fopen): adding to final database dump
0011.824 (0) backup_2021-08-09-1702_wwwsonohigurashiblog_1cf134e05401-db-table-wp_term_relationships.table.gz (18/18/fopen): adding to final database dump
0011.825 (0) backup_2021-08-09-1702_wwwsonohigurashiblog_1cf134e05401-db-table-wp_term_taxonomy.table.tmpr52.gz (19/18/fopen): adding to final database dump
0011.826 (0) backup_2021-08-09-1702_wwwsonohigurashiblog_1cf134e05401-db-table-wp_term_taxonomy.table.gz (20/18/fopen): adding to final database dump
0011.826 (0) backup_2021-08-09-1702_wwwsonohigurashiblog_1cf134e05401-db-table-wp_termmeta.table.tmpr0.gz (21/18/fopen): adding to final database dump
0011.827 (0) backup_2021-08-09-1702_wwwsonohigurashiblog_1cf134e05401-db-table-wp_termmeta.table.gz (22/18/fopen): adding to final database dump
0011.828 (0) backup_2021-08-09-1702_wwwsonohigurashiblog_1cf134e05401-db-table-wp_terms.table.tmpr52.gz (23/18/fopen): adding to final database dump
0011.828 (0) backup_2021-08-09-1702_wwwsonohigurashiblog_1cf134e05401-db-table-wp_terms.table.gz (24/18/fopen): adding to final database dump
0011.829 (0) backup_2021-08-09-1702_wwwsonohigurashiblog_1cf134e05401-db-table-wp_ewwwio_images.table.tmpr2463.gz (25/18/fopen): adding to final database dump
0011.831 (0) backup_2021-08-09-1702_wwwsonohigurashiblog_1cf134e05401-db-table-wp_ewwwio_images.table.gz (26/18/fopen): adding to final database dump
0011.832 (0) backup_2021-08-09-1702_wwwsonohigurashiblog_1cf134e05401-db-table-wp_ewwwio_queue.table.tmpr0.gz (27/18/fopen): adding to final database dump
0011.832 (0) backup_2021-08-09-1702_wwwsonohigurashiblog_1cf134e05401-db-table-wp_ewwwio_queue.table.gz (28/18/fopen): adding to final database dump
0011.833 (0) backup_2021-08-09-1702_wwwsonohigurashiblog_1cf134e05401-db-table-wp_siteguard_history.table.tmpr66.gz (29/18/fopen): adding to final database dump
0011.833 (0) backup_2021-08-09-1702_wwwsonohigurashiblog_1cf134e05401-db-table-wp_siteguard_history.table.gz (30/18/fopen): adding to final database dump
0011.834 (0) backup_2021-08-09-1702_wwwsonohigurashiblog_1cf134e05401-db-table-wp_siteguard_login.table.tmpr1001.gz (31/18/fopen): adding to final database dump
0011.835 (0) backup_2021-08-09-1702_wwwsonohigurashiblog_1cf134e05401-db-table-wp_siteguard_login.table.gz (32/18/fopen): adding to final database dump
0011.836 (0) backup_2021-08-09-1702_wwwsonohigurashiblog_1cf134e05401-db-table-wp_tm_taskmeta.table.tmpr0.gz (33/18/fopen): adding to final database dump
0011.836 (0) backup_2021-08-09-1702_wwwsonohigurashiblog_1cf134e05401-db-table-wp_tm_taskmeta.table.gz (34/18/fopen): adding to final database dump
0011.837 (0) backup_2021-08-09-1702_wwwsonohigurashiblog_1cf134e05401-db-table-wp_tm_tasks.table.tmpr0.gz (35/18/fopen): adding to final database dump
0011.837 (0) backup_2021-08-09-1702_wwwsonohigurashiblog_1cf134e05401-db-table-wp_tm_tasks.table.gz (36/18/fopen): adding to final database dump

 いろいろとググってみましたが私と同じ症状の人は見つかりません。完全におま環ですね。

解凍後のファイルがやけに小さい

 おま環かーと思っていろいろと考えていたところ、圧縮ファイルのサイズに比べて解凍後のファイルがやけに小さいことに気づきました。圧縮ファイルが246KByteなのに対して解凍後のファイルは691KByteです。

圧縮ファイルのサイズに比べて解凍後のファイルのサイズがやけに小さい。

 普通テキストファイルなら圧縮ファイルの5倍以上のサイズに解凍されてもいいはずです。

他のアーカイバを試す

 もしかしてLhaplusが誤動作してるのかも。そう思い別のアーカイバ7-Zipをダウンロードしインストールして解凍してみます。

 ビンゴでした。

 7-Zipで解凍するとちゃんと18個分のテーブルの復元処理が解凍後のファイルに記述されていました。ベテランソフトウエア技術者の勘というやつですかね。

7-Zipで解凍すると18個分のテーブルの復元処理が解凍後のファイルに記述されていることを確認できる。

 UpdraftPlusとLhaplusどちらのバグかはわかりませんが、こんなこともあるんだねという紹介でした。


以上、「プラグインUpdraftPlusでバックアップしたデータベースのバックアップファイルを解凍してみたらwp_optionsテーブルの復元処理しか含まれていなかった件」でした。


この記事を書いた人

プロフィール

 その日暮らし

 こんにちは、その日暮らしです/地方国立大理系院卒→大手大企業就職→ソフト開発二十年超→メンタル壊して退職→ちょっと回復→資格取得頑張る(簿記3級と応用情報は合格でデスペはギブアップ)→コロナ禍で再就職無理→離婚orz→実家へ出戻ってこどおじ化(笑)→WordPressの勉強のためブログに挑戦/そんな訳でブログは始めたばかりですが日々いろんなことを試して得た知識を投稿していこうと思ってます/以上