コンテンツメニュー

XoopsCubeLegacy を使いましょ~♪
    インストールしよう~♪
      ディストリビューション pack2011(XoopsX)
        ディストリビューションpack2011をインストールしよう!
        pack2011にアップグレードしよう!
        XCLのデザイン変更
        デザイナーの為のXOOPSマニュアル
          プロWEB制作者向けXOOPS基礎実習
          今日からあなたもテーマ職人
          basic5を3カラム対応に改造する
          ローカル環境
            WARP
            テーマ
              Colors2x
              Colors3x

              pack2011にアップグレードしよう!

              2-3 バックアップしたSQLデータをUTF-8に変換

               バックアップしたSQLデータは、当然、エンコードがEUCとなっていますので、UTF-8に変換する必要があります。
               文字コード変換ツール「KanjiTranslator 1.6」 などを使うと簡単に変換できますよ。
               
               自分で確認して作業する場合は、EUCやUTF-8を取り扱うことができるエディターで行います。以下の記事を参考にしてください。なお、エクスポートしたファイルが圧縮されたものである場合は、当然ながら解凍してから編集することになります。

              2-3-1 SQLファイル全体のエンコードをUTF-8に変換し、別ファイルとして保存

               エディターでバックアップしたSQLデータを開きます。(ここでは、秀丸を使っています。)
              まず最初に、エンコードの種類を確認します。



              EUCのサイトからデータをエクスポートしたので、通常は、「日本語(EUC)」になっていると思いますが、場合によっては、「ラテン」など別の言語として扱われている場合もあるようです。

              いずれにしても、ここで先にファイル全体のエンコードを変換しておきます。
              秀丸ですと、メニューの「ファイル」「エンコードの種類」から「Unicode(UTF-8)」を選びます。



              エンコードの切り替えの確認がでますので「内容を維持したまま適用」をクリックします。(ここで「ファイルを読み込み直す」を選んでしまうと、ほぼ全ての文字が化けてしまうので注意してください。)

              変換できたら、「名前を付けて保存」。つまり、別ファイルとして保存してください。
              ここで、上書きしてしまうと本来の「バックアップ」がなくなってしまうので、別途xcl218_euc_to_utf8.sql などのように、分かりやすい名称で保存すると良いでしょう。(拡張子は、必ず sql ですので、お間違えなく)

              2-3-2 ファイル内の編集(文字コードに関する記述の変更)

               次にファイル内の編集です。先ほど保存したxcl218_euc_to_utf8.sqlについて、文字コードに関係する部分をUTF-8に対応できるように変更しましょう。
              文字コードの変更
               ファイルを秀丸などのエディターで開くと、次のような記述から始まっていると思います。(利用しているバージョンによって、少しずつ違ったりするようですが・・・)
              # phpMyAdmin SQL Dump
              # version 2.5.6
              #
              # ホスト: localhost
              # サーバーのバージョン: 4.0.18
              # PHP バージョン: 4.3.4
              #
              # データベース: `xcl218`
              #

              このような記述がずらずらと続いている訳ですが・・・
              全部を目で見て確認するのは流石に面倒なので、ここはエディターの検索機能を使うのが良いでしょう。エディターの検索窓に「CHARSET」と入力して検索してみてください。



              該当する箇所があれば、検索にヒットすると思います。



              これまでEUCで運用されてきたのですから、CHARSET=ujis; とか CHARSET=EUC; 、CHARSET=latin1; 、場合によっては CHARSET=eucjpms; なんてのになっている場合があるかもしれません。
              もしかすると、CHARSETという言葉では全くヒットしない場合もあると思います。その場合は、直接、ujis とか EUC などで検索してみてくださいね。

              この部分が文字コード(エンコード)指定ですので、今度は、エディターの置換機能を使って、文字コードにあたる部分を utf8 に置き換えます。



              秀丸の場合、「全置換」ボタンを押すと一気に置き換わります。多分、他のエディターでも似たような機能があると思います。

              置換が終わったら、今度は、「utf8」で検索して、変なところが置き換わっていないかを確認してみましょう。念を入れて、「CHARSET」で検索して確認するのも良いでしょう。もちろん、ファイル内を上から下まで目で追って確認するのもOK(でもこれ、結構面倒ですけどね。)

              確認が終わったら、ファイルを保存しましょう。これで、SQLファイルは準備完了です。
              文字化けの場合
               ただし・・・Weblinksモジュールとかd3pipesモジュールのデータの場合、色々なところからデータを引用してデータベースに収納することから、文字コードが複雑な状態になっている場合があるようです。

              参考:Re: EUC-JP 運営のサイトが UTF-8 に移行する手間は?
              (weblinksは、SQLにダンプしても上手くいかないことがあるらしい。)
              http://www.xugj.org/modules/QandA/index.php?post_id=9754

              心当たりがある場合は、SQLファイル内で当該モジュールのデータ部分を見てみましょう。場合によっては、日本語の筈なのに変な文字に化けていることがあるかもしれません。



              その場合、その部分だけコピー、エディターで新規画面を開いて張り付け、エンコードの種類を例えば「日本語(Shift-jis)」などに変えて、今度は「ファイルを読み込み直す」を選んでみてください。



              こうすると、文字化けの文字がちゃんと読めるようになるかもしれません。



              もし、まだ文字化けしているようなら、別のエンコードで試してみるのも良いでしょう。
              それで、読める文字になったらその部分だけをコピーして、先ほどのSQLファイルに戻って、該当する部分と置き換えてください。

              正直言って、かなり地道で面倒な作業となりますが、ここで頑張っておくとあとあと楽になりますよ。


               参考 : 管理者の uname がマルチバイトになっている場合、データベースを修正した方が良いとのこと。
              http://www.xugj.org/modules/d3forum/index.php?topic_id=1187#post_id6651

               

              • 2-8 やっておくべき作業
                2-8 やっておくべき作業   ここからの作業は、できるだけ早めに行った方がサイト閉鎖の時間が短くて「吉」 ですね。   ローカル環境のときと同じように、サイトの状態を確認・動作検…続きを読む (2011-12-4)  
              • 2-9 もし、上手く行かなかったら・・・
                2-9 もし、上手く行かなかったら・・・  一度、サイトを真っ新の状態にして、ローカル環境に構築したサイトをそっくり実サーバにアップロードして、データベースも新規作成してローカル環…続きを読む (2011-12-4)  
              • 2-10 上手くアップグレードできたら、いざ公開!
                2-10 上手くアップグレードできたら、いざ公開!  うまくアップグレードが完了できましたか? 大丈夫でしたか?  では、これで全て完了です。  管理画面の「互…続きを読む (2011-12-4)  

              新しくコメントをつける

              題名
              ゲスト名
              投稿本文
              より詳細なコメント入力フォームへ