メインコンテンツに移動
mattz.xii.jp

Main navigation

  • Home
  • YBR125メモ
User account menu
  • ログイン

パンくず

  1. ホーム

MySQLのDrupal 6からSQLiteのDrupal 7へ

By mattz , 2011/04/25

各nodeの移行をすべく色々試行錯誤した。ちなみに本文中の「{hogehoge}」ってやつはテーブル名を表していますが、そもそもこのエントリは基本自分用で、Drupalを全く知らない人は全く想定していません。

まず、Drupal 6のnodeの中身は、基本的に{node}と、{node_revisions}に保存されている。ので、その中身をSelectして、それっぽいテーブルにつっこめばいいだろう、と思ったのだが、Drupal 7には{node}はあっても、{node_revisions}はない。{node_revision}ってのはあったが、本文を保存するカラムがな い。

色々と探してみて、{field_data_body}のようだと思われたので、{node}、{node_revision}、{field_data_body}の各テーブルのそれぞれのカラムに、Drupal 6のDBからSelectした値を入れてみる。結果、nodeの中身は表示されない。

もうちょっと探してみたら、{field_revision_body}というテーブルも見つけたのでそこにもそれらしい値を入れてみたが表示されない。

ここまで来てやっとnodeモジュールのソースを見るという行為に着手。いやまぁ最初にやれって思わないわけではない。というのは置いといて、ソースをざっと見た限りでnode/addするときにupdateしたりinsertしたりするテーブルには他に{history}というのもあるらしいことが分かったので、そこにも値を入 れてみるが表示されない。

もう値が必須なテーブルはないと思うんだけどなぁ、と思いながら、外部からリンクされていて今でも時々アクセスのあるnode(エントリ)から優先して、手作業で中身を移す。

四百いくつかあるエントリの50くらいは手作業で移行しただろうか。そこでめんどくさくて飽きる。どうせめったに参照されることもないし、ほっといてもいんじゃね?という思いに作業を中断し3日ほど放置。

まぁ、ちょっとずつでもやるかなぁと思い直し作業を再開しようと思ったら、なぜか過去のnodeも全て表示できているっぽい。

???

もっとも、データ自体はちゃんとスクリプト書いて必要なテーブルに必要な値は入れたはずなので、元々表示されないほうが不思議だったのだが、何故何もしてないのに表示できるようになったのだろう。Drupalのキャッシュかなぁ?

タグ

  • 雑記
  • Drupal

最近のエントリー

  • バックミラーの防眩化
  • チェーン交換(その後)
  • チェーン交換(実施編)
  • チェーン交換(準備編)
  • ハイマウントストップランプ
  • メーターバイザーとフロントフェンダー
  • 一周年
  • 防寒装備紹介
  • 電動空気入れの買い替え
  • ヘッドライトバルブ交換

ランダム

  • 無理矢理RSS化pipes入門 (2009/09/17)
  • Operaの9.27→9.5での(俺にとっての)最大の変更点 (2008/06/06)
  • 最近の梅干 (2008/06/19)
  • イミガワカラナイーイ (2008/06/24)
  • Opera Blinkの拡張について (2013/11/18)

月別アーカイブ

  • 2月 2026 (2)
  • 1月 2026 (5)
  • 12月 2025 (6)
  • 11月 2025 (5)
  • 10月 2025 (6)
  • 9月 2025 (12)
  • 8月 2025 (4)
  • 7月 2025 (3)
  • 6月 2025 (54)
  • 12月 2024 (1)
  • 11月 2023 (3)
  • 10月 2023 (1)

ページ送り

  • 1
  • 次ページ
RSS feed