アイディアボード

Just another WordPress site

WebMatrix で ExpressWeb サーバーに接続できない問題を解決

   

MYSQL
だいぶ前にトラブルが発生した時、解決方法を残し忘れて、最近また同じ事でブログを壊しかけたので、改めて記録。

リモートデータベースをダウンロード出来ません WebMatrix でWordPress のデータベースを同期出来なくなった

問題はローカル環境のMySQLの設定だったので、まずドットインストールでお勉強した後、困ったときのグーグル先生にお尋ねしました。
この時は藁にもすがる思いでした。。。

MySQLを理解する

WordPressからデータベースに直接アクセスする | webOpixel

ちょっとバージョンが古いけど、何が存在しているのかは一応把握出来ました。
でも今回のトラブルにはあんまり役立たない。

wp_posts テーブルが悪いなら修復してみる

WordPressのDBのwp_postsがクラッシュした時の修復方法 | コリス

phpMyAdmin から wp_posts テーブルを修復してみるも効果なし。
まぁサーバー側は問題なくブログを表示してるし、問題はローカル側なのでそんなに期待はしてなかった。
藁にもすがる思いなんです(白目

WebMatrixで同じ『max_allowed_packet』のエラーになった記事を発見

Packets larger than max_allowed_packet are not allowed - だるろぐ

これは期待大。
Azure → ローカル
に WordPress をダウンロードする時にエラーが出た様です。ウチは
ExpressWeb → ローカル
でのエラーなのでほぼ同じ。

なにやら MySQL の設定が悪いらしく、『 max_allowed_packet 』なる値を変えれば良い、と。
データベースが大きくなって、初期設定で決められてた容量をオーバーしたからいけなかったという事・・・かな?
初期設定では1MBだとか。

そして解決法

WordPressユーザ必携!マイクロソフトの「WebMatrix 2」ならWPのテスト環境をPCに簡単に構築して運用も|アマモ場

おお、解説が細かくて助かります!
記事後半の『既存のブログの同期』にて MySQL をイジってます。
さっきの記事と同じく、『 max_allowed_packet 』の値を変更することで、データベースをローカル環境にダウンロード出来るようにしてます。
探し求めていたのはコレだ!!!

ただ、ココでもやや罠があって、『 max_allowed_packet 』の値を変更するのは
[mysqld]のセクションであって、[mysql]のセクションではないです。変えるべきはdのある方。
↑の記事ではごっちゃになってるので混乱しましたが、無事、なんとか解決しました。
にしてもコレ、初期設定で変えてくれたら良いのに。もしくは WebMatrix でコントロール出来るようにするとか。
ややこしかった…

photo credit: yanec via photopin cc

 - 解説記事 , ,