人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

ローカルな環境で、Mediawikiをインストールし、
wikiデータベースをダウンロードして、
wikiと同じようにオフラインの環境で、
wikiを使いたいと思っています

http://d.hatena.ne.jp/dkfj/20070902/1188730207
のサイトを元に作業していました。

1.Wikipedia:データベースダウンロード
2.xml2sqlでmysqldump形式に変換
3.データのインポート

サイトの中程に、
$bunzip2 -c jawiki-latest-pages-meta-current.xml.bz2 | xml2sql
とのコマンドが書いてあります。

教えていただきたいのは、
まず、上記2の「2.xml2sqlでmysqldump形式に変換」
の部分です。
xml2sqlはインストールしないと使えないと思うのですが、
http://meta.wikimedia.org/wiki/Xml2sql
から、ダウンロードしてから、どうやって使えるのか、
(=インストールするのか)わかりません。

私の環境:Windows7,Mysql5.0 (Apache2.2,php5)
で、インストールの方法→使用方法
教えて頂けると、助かります。

なお、mediawikiのダウンロード、インストールはうまくいっています。
mediawikiインストール時に、
my_wikiというデータベースと49個のテーブルがインストールされています。

以上です。
よろしくお願いします。

●質問者: kohhi
●カテゴリ:インターネット ウェブ制作
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● じゅぴたー
●50ポイント

インストールは不要です。下記の手順で解凍し、実行するだけです。

  1. http://meta.wikimedia.org/wiki/Xml2sql#Download にある xml2sql-0.5-win32.zip をダウンロードしてください。
  2. 適当なディレクトリをつくり、ダウンロードしたxml2sql-0.5-win32.zipを解凍してください。
  3. そのディレクトリに jawiki-latest-pages-meta-current.xml.bz2 をコピーしてください。
  4. DOSコマンドプロンプトを起動し、先ほどのディレクトリに移動し、以下のようにコマンド入力してください。
$bunzip2 -c jawiki-latest-pages-meta-current.xml.bz2 | xml2sql

2 ● rouge_2008
●300ポイント ベストアンサー

Win環境でも無事にtext.txt、revision.txt、page.txtの生成が完了しましたので、その方法を回答いたします。

※なお、jawiki-latest-pages-articles.xml.bz2で試しましたが、失敗した原因は、ファイル分割に使用したソフトが原因でした。(ファイル分割時に一部欠落があった為、不完全なファイルになったようです。)



1.XMLファイルを分割します。

(検索・置換に使用するソフトの対応ファイルサイズが2GB未満の為です。)


(1)「coreutils-5.3.0-bin.zip」をダウンロードして任意の場所にします。

http://sourceforge.net/projects/gnuwin32/files/coreutils/5.3.0/


(2)先ほど解凍して出来たbinフォルダの中に、sedでも使用した以下のdllファイルをコピーし、sedやbzip2等と同じようにbinフォルダにパスを通しておきます。


・「libintl-0.14.4-bin.zip」(libintl3.dll)

http://sourceforge.net/projects/gnuwin32/files/libintl/0.14.4/


・「libiconv-1.9.2-1-bin.zip」(libiconv2.dll)

http://sourceforge.net/projects/gnuwin32/files/libiconv/1.9.2-1/

※同梱されている「libcharset1.dll」も一応コピーしておきます。


(3)コマンドプロンプトを起動して、「jawiki-20110921-pages-meta-current.xml.bz2」のあるフォルダに移動します。(※HDDの空き容量は最低限7GB16GB以上で、なるべく多い方がいいです。)


(4)次のコマンドを実行してしばらく待ちます。(※約10分程度でした。)


bunzip2 -c jawiki-20110921-pages-meta-current.xml.bz2 | split -l 2500000 - jawiki-20110921-pages-meta-current.xml_

※バイト単位で指定すると行の途中でも分割されます。そうすると、正常に置換処理が出来なくなる可能性があるので、行単位で指定します。

※メモリサイズに余裕があるようでしたら、もう少し大きくしても大丈夫だと思いますが、保存時には使用メモリがファイルサイズの約7倍になる事もありました。

※2500000行で1ファイル約150?180MB程度になります。(約1GB程度の空きメモリがありましたが、この設定でもメモリが原因のエラーで、検索・置換ソフトで置換できないファイルが2個発生したので、テキストエディタで個別に開いて置換ました。)



2.検索・置換ソフトで「<redirect />」を削除します。


(1)「Repl-Ace on .NET Ver.1.0.4」(repl_ace_20081119.zip)をダウンロードして適当な場所に解凍します。(※※ 要「Microsoft .NET Framework 2.0」および「Microsoft Visual C++ 2008 再頒布可能パッケージ (x86)」)

http://www.sirmiles.com/repl_ace/


(2)Repl_Ace.exeを起動して、それぞれ次のように設定します。


・Step 1

「検索する場所」で、先ほど分割保存したフォルダを選択します。

「検索ファイル名」に「jawiki*.xml_*」を入力します。

「Step 2」の右横にある「他の機能」をクリックして、「デフォルトの文字セット」に「Unicode(UTF-8)」を、「デフォルトの改行文字」に「LF(\n)」を選択します。

「検索」ボタンを押します。


・Step 2

「** 個のファイルが見つかりました。」と表示されて、一覧画面に対象ファイルがリスト表示されます。(※チェックはそのままにします。)


・Step 3

「検索文字列」に「<redirect />」を入力して「追加」ボタンを押します。

(※置換文字列」は空欄のままで、すべて未チェックのままにします。)


(3)左下の「設定」ボタンを押し、それぞれ次のように設定します。


・「バックアップ」タブで、「バックアップを作成」のチェックを外します。

※HDD容量に余裕があれば、チェックを入れておいてもいいです。


・「処理結果」タブで、「元のファイルを上書きする」にチェックを入れます。

※HDD容量に余裕があれば、「指定した場所に同名のファイルを作成する」にチェックを入れて、置換後のファイルを保存する場所を選択します。


・他のタブの設定はそのままにして、「OK」で設定画面を閉じます。


(4)「実行」ボタンを押し、確認メッセージが「OK」を押して、処理が完了するまで待ちます。(※約10分程度でした。)


(5)処理結果が表示されたら、「置換箇所」の項目が「0」で、コメントにエラーが表示されているファイルがないか確認してください。(※数個だけの場合は、テキストエディタで開いて置換するといいです。180MB程度でしたら、サクラエディタ(フリーソフト)でも可能です。)



3.「ファイル破断+」を使用して、ファイルを結合します。


(1)次のページでダウンロードしたファイルを適当な場所に解凍します。

http://www.vector.co.jp/soft/win95/util/se283383.html


(2)fcutplus.exeを起動して「設定」タブを表示し、「分割/結合に使用するメモリ」の箇所を適切に設定します。(※私は256MBに設定しましたが、空きメモリに余裕があるのでしたら512MB程度でもいいと思います。)


(3)「+結合」タブを表示したら、エクスプローラーで結合するファイルを複数選択して、ドラッグ&ドロップします。(※一番最初のファイル「?.xml_aa」をクリックした状態のまま、「+結合」タブの一覧画面内にドラッグ&ドロップすると、順番通りに綺麗に並びます。)


(4)ファイルの順番が正しい事を確認したら、「処理実行」ボタンを押し、保存先とファイル名を指定して処理が完了するのを待ちます。(約8分程度でした。)

※上の方が最初に結合されるファイルになります。

※処理が完了すると、実行中の画面が消えますので、ソフトを終了してください。



4.xml2sqlでファイルを生成します。


(1)「xml2sql-0.5-win32.zip」を解凍したフォルダをエクスプローラで開きます。


(2)「xml2sql-fe.exe」を起動して、「XML File」の欄で先ほど結合したXMLファイルを選択します。

※「Output Format」は「mysqimport」にチェックを入れたままにします。

※生成するファイルの出力先を指定したい場合は、「Output Directory」で指定します。(デフォルトでは、XMLファイルと同じ場所に生成されます。)


(3)「START!!」ボタンを押し、そのまま待ちます。(※約15分程度でした。)

次の画像のように進行状況が表示されるので、コマンドで実行するよりもおすすめです。


f:id:rouge_2008:20110927060814p:image



※参考までに、生成された各ファイルのサイズですが、text.txt - 約4.96GB、page.txt - 約127MB、revision.txt - 約155MBでした。


※ファイルの分割または検索・置換などに、別のソフトがある場合は、そちらを利用しても大丈夫です。(ソフトの性能により無理な場合は、ご紹介したソフトを使ってみてください。)

◎質問者からの返答

ありがというございました。

ここまでご丁寧に書いていただき、感激しております。

できました。

完全なマニュアルでした。

重ね重ね御礼申し上げます。

関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ