• お役立ち

MySQLでupdateできるのにinsert出来ない?

  • このエントリーをはてなブックマークに追加
  • LINEで送る

Webのシステムを構築する際、通常はサーバ選定から任されたりして、条件にあわせて、メジャーなレンタルサーバーを利用します。

しかし、システム部があったり、システムだけアウトソーシングしていたりするお客様ですと、専用サーバがあって、その一部を利用するというような案件もあったりします。

そのような場合、セキュリティ面での強化であったり、つぎはぎ構成で設定がぐちゃぐちゃになっていたりで、通常のサーバーと違う設定がされていたりすることが多々あります。

今回はWordpressのプラグイン「Adminer」を利用して開発サーバーに構築済みWordpressを、お客様のサーバーに移行しようとしているときに問題が発生しました。

※Adminerは、ほぼphpMyAdminの機能がプラグインで実現できるものです。
※セキュリティのため、移行が終わったら本番サーバのプラグインは削除しましょう。

Adminerからデータをupdateできるのに、インポート(insert)しようとすると出来ない。(エラー表示は出ないが、データが挿入されない)

プラグインが悪いのかと思い、phpMyAdminをインストールしてインポートしようとするも、やっぱり出来ない。

最終手段、SSHターミナルからmysqlのインポートコマンドを使ってインポートを試みたところ、「ソケットが見つかりません」というエラーが出ました。

一般的なソケットとパスが違ったようです。

そこで、インポートコマンドにソケット指定を追加してインポートをしたら成功しました。

ソケット指定が違うと実行できる命令と実行できない命令があることがわかりました。

というか、
ソケットが違ってもupdateコマンドは成功してしまうというところに驚きました!

星虹思械BRICOLEUR

関連コンテンツ