サーバ引越しの件

『more register movement 菅佐原英二のウェブログ(パート2)です。』
のサーバ引越しの件。
同じドメインを使うが、
  データベース名
  データベースホスト
  テーブル接頭語
が、どうしても違うということと、サイズが問題だった。

「WEBツール」「データベース」でデータベース作成。
簡単インストールでWordPress設置。
「WEBツール」「データベース」でデータベース「操作する」
「データベース」で「phpMyAdminを開く」
データベースへ保存していたsqlファイルをインポートするもデカすぎて拒否される。

以下、回避策の説明文とGoogle訳。

1.16 I cannot upload big dump files (memory, HTTP or timeout problems).

Starting with version 2.7.0, the import engine has been re–written and these problems should not occur. If possible, upgrade your phpMyAdmin to the latest version to take advantage of the new import features.

The first things to check (or ask your host provider to check) are the values of upload_max_filesize, memory_limit and post_max_size in the php.ini configuration file. All of these three settings limit the maximum size of data that can be submitted and handled by PHP. One user also said that post_max_size and memory_limit need to be larger than upload_max_filesize.

There exist several workarounds if your upload is too big or your hosting provider is unwilling to change the settings:

Look at the $cfg[‘UploadDir’] feature. This allows one to upload a file to the server via scp, ftp, or your favorite file transfer method. PhpMyAdmin is then able to import the files from the temporary directory. More information is available in the Configuration section of this document.
Using a utility (such as BigDump) to split the files before uploading. We cannot support this or any third party applications, but are aware of users having success with it.
If you have shell (command line) access, use MySQL to import the files directly. You can do this by issuing the “source” command from within MySQL: source filename.sql.

1.16私は大きなダンプファイル(メモリ、HTTPまたはタイムアウトの問題)をアップロードすることはできません。

バージョン2.7.0以降では、インポートエンジンが書き直されており、これらの問題は発生しないはずです。可能であれば、新しいインポート機能を利用するために最新バージョンにphpMyAdminをアップグレードします。

確認(または確認するためにあなたのホストプロバイダにお問い合わせください)​​最初に物事をupload_max_filesizeにmemory_limitの値であり、設定ファイルphp.iniでpost_max_sizeに。これらの3つの設定のすべてが提出され、PHPで扱うことができるデータの最大サイズを制限します。一人のユーザはまた、post_max_sizeにと、memory_limitはupload_max_filesizeより大きくする必要があると述べた。

あなたのアップロードが大きすぎるか、またはあなたのホスティングプロバイダが設定を変更したがっていない場合、いくつかの回避策が存在する:

$ CFG[‘UploadDir’]機能を見てみましょう。これは、1つはSCP、FTP、またはお好みのファイル転送方法を介してサーバーにファイルをアップロードすることができます。 phpMyAdminには、一時ディレクトリからファイルをインポートすることができます。詳細については、このドキュメントのConfigurationセクションで利用可能です。
アップロードする前にファイルを分割するためのユーティリティ(例えばBigDumpなど)を使用。我々は、このまたは任意のサードパーティ製のアプリケーションをサポートしていますが、それに成功を持っているユーザーを認識していることはできません。
あなたはシェル(コマンドライン)のアクセス権を持っている場合、ファイルを直接インポートするためにMySQLを使用しています。ソースfilename.sqlを:あなたはMySQL内から”source”コマンドを発行することによってこれを行うことができます。

ロリポのコンパネで変更できるupload_max_filesizeの値は20Mで、これが最大。

以下のphp.iniをwp-adminに置く方法

memory_limit = 34M
post_max_size = 33M
upload_max_filesize = 32M

以下の.htaccessをWordPressをインストールしたフォルダの直下に置く方法

php_value memory_limit 32M
php_value post_max_size 96M
php_value upload_max_filesize 32M

の2通りで順次 試したが、やはりサイズ超過でダメ。
しかし、zipで圧縮したものは、正常にインポートできた。

だが、肝心のWordPress側に反映されない。
wp-config.phpをダウンロードしみてみたが、
  データベース名
  データベースホスト
  ユーザー名
  パスワード
  テーブル接頭語
すべて合っている。ロリポの場合「MySQL のホスト名」は「localhost」ではなく「mysql000.xxx.lolipop.jp」のようにちゃんと指定しないといけない。

それでもダメで、WordPressのインポート機能もサイズ超過で使えない。
となると、分割するしかない。

WordPressのエクスポートしたxmlファイルのに囲まれた最小単位が一つ一つの投稿であるので、それを意識して、全体を半分に分けた。最初のの前の部分、最後ののあとの部分は分けたファイルに共通している。

これで前半のxmlファイルのインポートに成功した。記事はWordPressですべて認識されたが画像は全部エラーに。
インポート機能を使うときには画像は作業がすべて終わってからサーバへFTPでアップするのが鉄則で、そうしないと画像が重複扱いとなり(上書きはされない)、画像のファイル名が変わってしまうという苦い経験を以前したので、同じ過ちは犯さない(笑)

FTPで画像をUP。カテゴリーも最初反映されてなかったが、各カテゴリーの記事をどれかひとつ更新するとそのカテゴリーの記事全てが認識された。

けっきょくメディアライブラリーでは、新規にUPするものしか出ないが、特に支障はない。

残り(後半部分)はここではなく、もうひとつWordPressを設置して、そこに載せるつもりだ。
ディレクトリが違うのでリンク切れが発生することになるのだが、めんどうなので直さないことにした。

コメントを残す

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