More from: データベース

データベースの更新

このブログはwordpressで作成している。
先日、そのwordpressが更新を促してきた。
新バージョンは6.5で早速更新しようとしたところ、データベース(DB)のバージョンが古いので更新できないとしてエラーとなった。
DBはMySQLを使用しているが、しばらく放置だったのでバージョンは古いままだった。
ホスティング先で更新しようとしたが、DBをそのままバージョンアップは出来ない。
そこで新たに新バージョンのMySQLでDBを構築し、wordpressが接続するDBを切り替える形で対処した。

先ずはホスティング先のユーザーページからDBの設定画面に入り、現状のデータとテーブル構成のバックアップを取り、その後に新バージョンのMySQLでDBを作成しバックアップからレストアしてDBを複製。
次にwordpressの設定ファイルである”wp-config.php”を別ディレクトリ(もしくはローカルのHDD)にバックアップ。
その後にそのファイルに書いてあるDBサーバー名とDB名、接続するためのアカウント名とパスワードを新DBのものに書き換えて終了。
さらに当初の目的であるwordpressのバージョンアップも無事に完了した。

こう書くと簡単に見えるけど、実際にはバックアップしたDBの内容をレストアする際にエラーでレストアできなかったり、wp-config.phpを新しく書き換えたファイルで上書きしようとしても更新され無かったりで結構悩んでしまった(汗)。
DBのレストアが出来なかったのはレストア時にDBの指定を忘れていたためで、指定したら問題無くレストアできた。
wp-config.phpの更新はFTPツールでは上書き出来なかったので、直接サーバー上で書き換えた。
そうしたらwordpressがDBに接続できなくなってしまって焦ったが、修正時にサーバー名のTLDも変更されているのを見落としていて、そこを修正したら無事に接続できるようになりブログが復活した。
いやぁ、久々にDBやwordpressの設定をしたなぁ(汗)。

←クリックしてくれると嬉しいです。

Picasaのデータベースの移動

ユーザーの中にはGoogleが提供している画像管理ソフトPicasaを利用している人も多い。
このソフトは一見便利だけど、画像ファイルが多くなるとPCが不調になるトラブルを誘発してくれる厄介者。
インストールは簡単に出来るけど、画像ファイルの保存フォルダとデータベースの保存フォルダをデフォルトのままにするのはお勧めできない。
画像ファイルの保存フォルダはデスクトップに、データベースの保存フォルダはアプリケーションデータの下に作られる。
どちらもユーザー固有のフォルダの下なんだけど、複数のユーザーでファイルを共有する場合は不便になるし、アクティブディレクトリ傘下のPCで移動プロファイルを利用してユーザーデータをサーバーに置いてあったりすると、そのユーザーが他のPCでサインインするとユーザーデータのダウンロードに長い時間がかかったりすることもある。
またどちらもOSの入っているCドライブに作られるので知らず知らずのうちにディスク容量を圧迫してしまいOSの動作に問題が出ることもある。
500GB以上のHDDやSSDを使っているならまだしも、256GBとかさらに少ない128GB程度のSSDを使っていると深刻な問題になりかねない。
画像データそのものは他のドライブに移したり不要になったファイルを削除するのは簡単だけど、データベースは基本的に大きくなっていく一方なのでこちらの方を他のドライブに移したくなる。
このデータベースファイルの保存場所の変更方法はそれほど難しくないがちょっと判り難い。
方法は、「ツール」→「試験運用」→「データベースの場所を選択」で変更し、Picasaを再起動すれば変更される。
そもそも「試験運用」ってなんだよ、って思って実際に試してみたら本当に試験的に実装された機能らしい(汗)。

また、Picasaは加工前の画像ファイルを律義に保存してくれているが、これもユーザーには意識しずらく、中にはユーザーが知らないままで不要なファイルを合計で数十ギガバイトも抱えているPCもあった。
この辺も仕様を変えるなりして不要ファイルを残さないようにして貰えないかなぁ、、、

←クリックしてくれると嬉しいです。

サーバーの調子がおかしい?

最近このブログを設置しているサーバーの調子がおかしい。
記事の投稿時にやたら応答に時間がかかったり、ひどい時はブログの表示にも時間がかかったりする。
一番困ったのはブログのデータのバックアップがとれなくなったこと。
このブログはWordPressを利用していてDBはMySQLを使っている。
DBのバックアップはプラグイン(WP-DBManager)を使っているんだけど、少し以前から「MYSQLのダンプパス」と「MYSQLのパス」が存在しないというエラーが出てバックアップ不能になってしまった。
いろいろ調べてみて「DBオプション」の項にあるパスの設定を見直したが一向に解決できない。
妻のブログでは正常にバックアップできるとのことなので参考にさせてもらおうとしたが、別の会社のサーバーなので参考に出来なかった。
同じサーバー会社のサーバーで試して貰ったらプラグインは問題無く動作した(あれぇ?俺だけ駄目なの?)
悩んでいるところで妻が調べてくれたところ、「php.ini」の設定ではないかとのこと。
具体的には「php.ini」内の「safe_mode」を「off」にしてみたら?ということだったので「php.ini」を見てみると「safe_mode」が「on」になっていたので、それを「off」に変更したらWP-DBManagerがエラーを出さなくなり、DBのバックアップも取ることができた。
「safe_mode」が「on」になっていると、phpの一部関数が制限を受けるのでmySQL関連のファイルパスを取り込むことが出来なくなっていたのかも(unixでいうwhichコマンドが使えない?ファイルの存在確認がとれない?「if -f /usr/bin/mysql」のようなことが出来ない?)。
なぜ「safe_mode」が「on」になっていたかは判らないけど、とりあえずこの件は解決した。

サーバーの応答が遅いのは相変わらずだし、FTPS接続でも応答が返ってこなくてタイムアウトになるのもまだ解決していない・・・・・・

←クリックしてくれると嬉しいです。