BackWPupがエラーになるから無理やりパッチをあてたゾ

screenshot-1WordPressのバックアップを取るのに便利なツールを探していて、BackWPup というプラグインを見つけた。さっそくインストールしてみたところ、評判通りなかなか良いのだが、肝心要なお仕事用のサーバでエラーが発生し、犬のおまわりさんみたいにわんわんわワンと泣くはめになった。

このサーバは、大阪の某レンタルサーバを使っている。2年ほど前に大チョンボをしてしまったアソコだ。だからよけいにバックアップをとりたい。

さて、調べてみると、MYSQL_SOCKET = /tmp/mysql.sock となっているのに、mysql.default_socket = /var/run/mysql/mysql.sock となっていて、これらが一致していないためにデータベースへ通信エラーとなっていることがわかった。

普通ならMySQLの定義ファイル my.cnf か、PHPの定義ファイル php.ini でこれらを一致させれば良いのだが、サーバ屋さんの運営方針でここらをいじらせてくれない。いけず。

ということでパッチを当てる

BackWPupはソースで提供されているので、中をごそごそと調べてみた。

inc/class-mysqldump.php の85行目付近

このように ini_get()mysql.default_socket の値を取り出し、強制的に dbsocket にセットしている。これで幸せになれた。

直前の部分を見ると、wp-config.php の DB_HOSTdbhost:port:socket の書式で与えてやれば良さそうだが、これではデータベース接続エラーになってしまい、うまく行かなかった。

投稿者:

azira

何でもやったけれど、みんな中途半端なプログラマくずれの一匹うさぎ。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>