web-dev-qa-db-ja.com

SQLiteを使用してPDOから移行し、MySQLを使用して新規インストールをクリーンアップする

私はWordPressとSQLiteデータベースにPDOプラグインを使っています。期待どおりには動作しないのでMySQLデータベースを使用したいのですが、そのプラグインを信頼できなくなったため、Wordpress用のPDOがないため、2年以上更新されていません。

だから、これは私がやったことです:

  1. SQLiteデータベースをsqlファイルにエクスポートしました
  2. 構文に必要な変更を加えました http://www.maxkpage.com/blog/free-sqlite-to-mysql-converter-super-easy/
  3. 新しいMySQLデータベースと共に新しいWordpressをインストールしました
  4. 古いWp-contentフォルダをコピーして新しいものに置き換えた
  5. 最初に空にした "INSERT INTO ...."形式の古いすべてを新しいテーブルにコピーして古いデータをインポートしました。

さて、ここで問題が起こります。すべてうまくいきました、私はウェブサイトでポストを見ることができます、しかし、私がダッシュボードにログインするとき、私はwp_usersまたはwp_usermetaまたはwp_optionsに古いデータを入れると、「十分な権限がありません」というメッセージを出します。ユーザー名やパスワードは間違っていませんが、ログインするとそのメッセージが表示され、Webサイトは白空白になります。

問題はどこにあり、どうすれば解決できますか?

1
cikatomo

何が悪いのかを見つけました。このチュートリアルでは、二重引用符をすべて削除し、それらをスペースまたはバックティックで置き換えます。

INSERT INTO "wp_usermeta" VALUES(14,1,'wp_capabilities','a:1:{s:13:"administrator";s:1:"1";}');

そのためこれをバッククォートに置き換えると誤動作の原因になります。

テーブル名を "wp_usermeta" - > wp_usermetaの前後の二重引用符のみで置き換えます。

0
cikatomo