なんでも屋のメモ

3月 29, 2008

サーバ引越し&wordpress2.0 to 2.1参考メモ

Filed under: wordpress — masa @ 8:47 am

メジャーアップの2.5が秒読み段階、
開発が止まっていたMEは閉鎖、となんだか慌しいです。
判っている人は http://wordpress.org/ 、
はじめから日本語が使いたい人は http://ja.wordpress.org/
で最新安定版を使えば良いのですが、本家2.0→2.1+サーバ移転で
少し面倒だった記憶があるのでメモを残しておきます。

サーバ引越しを伴うwordpress2.0 to 2.1参考メモ

必要環境
 2.1移行にはPHP 4.2以上、MySQL4.0以上が必要です。
 前のサーバはMySQL3系でダメでした。
 今は(チャレンジャーですが)PHPもMySQLも5.1系で動かしています。

私の場合
 旧サーバでSQLエクスポート
 新サーバでSQLインポート→2.1アップグレードが
 失敗したので
 旧サーバでデータ整形→SQLエクスポート
 新サーバで2.1新規インストール→SQLインポート、で成功しました。
 パーマリンクも問題ありません。

2.0系と2.1とのテーブルの違い
 ・wp_categoriesフィールド3つ追加、すべてNotNullで基本値0。
   link_count bigint(20)
   posts_private tinyint(1)
   links_private tinyint(1)
 
 ・wp_linkcategories→wp_link2catへ大幅変更。
 
 ・wp_postsフィールドタイプ追加
 post_status enum(’publish’,’draft’,’private’,’static’,’object’,’attachment’,’inherit’,’future’)
 
文字コード 
 wordpress/PHP/MySQLなど諸々の文字コード設定は
 UTF-8で統一。テキストエディタの保存はUTF-8N。
 データベースの文字コードがUTF-8なのはすごい気になりますが!
 
 MySQLの文字コード自動認識が悪さするので、
 wp-includes/wp-db.phpの66行目あたりに
 
 mysql_query(“SET NAMES utf8”, $this->dbh);
 
 を追記して文字コードを強制します。

修正
 そのままだとインポートした投稿が表示されないので、
 データベースで投稿のステータスを書き換えて、投稿を表示させる。
 
 リンク(ブログロール)のカテゴリが大幅に変更されているので、
 インポートはあきらめて管理画面で新たに割り当て。

サーバ変更にともなって変わったURLなどはSQLで書き換える。
 例

 update wp_postmeta set `meta_value` = replace(`meta_value`,’旧文字列’,’新文字列’)
 update wp_posts set `guid` = replace(`guid`,’旧文字列’,’新文字列’)
 update wp_posts set `post_content` = replace(`post_content`,’旧文字列’,’新文字列’)

PHP設定/.htaccess
 新サーバは初期設定が甘めだったので.htaccessで設定。

 php_flag register_globals Off
 php_flag display_errors Off
 php_flag log_errors On
 php_flag session.use_only_cookies On

広告

コメントする »

まだコメントはありません。

RSS feed for comments on this post. TrackBack URI

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中

WordPress.com Blog.

%d人のブロガーが「いいね」をつけました。