2019/08/18 08:21 JST

Geeklog Japan Forums

Geeklog2.1.3から2.2.1にアップグレードすると静的ページのデータが消える

ページナビゲーション


状態: オフライン

Ivy

Site Admin
Admin
登録日: 01/01/04
投稿数: 5924
場所:Tokyo
では、通常のアップグレードについて。

> その際、もともとのDBのデータがあると、
>「(再起動する前に古いテーブルを削除してください)」と言われます。

バックアップファイルを選択 で、「現在のデータベースのデータを使用する」
を選択すれば良いです。もし、これを、アップロードするなどを選べば、
現在のデータベースがあればうまくいきませんから、先に消して下さい、と誘導されてしまいます。

慎重にアップグレードするなら「現在のデータベースのデータを使用する」でお願いします。


状態: オフライン

Ivy

Site Admin
Admin
登録日: 01/01/04
投稿数: 5924
場所:Tokyo
静的ページのアップグレードがどうしてもできない場合は、
つまり、アップグレードしたらすっかり静的ページのデータがなぜか消えてしまった、というようなケース。
この症状ははじめて聞きますので、なぜそうなったのか、もしよろしければサイトを確認させていただきたいので
お問い合わせフォームでサイトの情報を教えていただければと思いますが、
ともかく、まったく静的ページのデータが消えた状況から復旧することはできます。

0.あらかじめ、旧サイトのDBのgl_staticpagesのみを エクスポート。
   モードは、「詳細」 「データのみ」 「both of the above」
    Example: INSERT INTO tbl_name (col_A,col_B,col_C) VALUES (1,2,3), (4,5,6), (7,8,9) 
1.プラグイン管理画面で静的ページをアンインストール(中途半端に静的ページが残っていると問題なので先にアンインストール)
2.静的ページをインストール
3.0.の旧サイトのSQLをphpMyAdminでインポート
4.gl_topic_assignmentsに静的ページ分を追加
以下のようなSQLを静的ページのidに対応して作成してインポートします。
PHP Formatted Code
INSERT INTO `gl_topic_assignments` (`tid`, `type`, `id`, `inherit`, `tdefault`) VALUES
('all', 'staticpages', '_header_navigation_en', 0, 0),
('all', 'staticpages', '_footer_contents_en', 0, 0),
('all', 'staticpages', '_topics_ja', 0, 0),
('homeonly', 'staticpages', '_top', 0, 0);
 


4.がちょっと面倒ですが、CALCを活用して作ってみてください。

phpMyAdminは、Open Document Spread Sheet のモードで書き出して、CALCで編集すると便利です。

状態: オフライン

kuro

Forum User
Active Member
登録日: 03/10/10
投稿数: 391
Ivyさん、いつもありがとうございます。

いろいろと考えてくださり、ありがとうございます。
まずは、、、
「現在のデータベースのデータを使用する」

で、アップグレードにトライしてみます。


状態: オフライン

kuro

Forum User
Active Member
登録日: 03/10/10
投稿数: 391
いつもお世話になります。

Ivyさん、ありがとうございました。
結局は、「現在のデータベースのデータを使用する」による「移行」では、
上手くいきませんでした。

後に教えてくださいました、
「静的ページのアップグレードがどうしてもできない場合」
による対応によって、静的ページをアップグレードした上で、
データベースのデータも削除されずできましたが、

Geeklog1.7から2.1にアップグレードした時のように、
静的ページのデータは残ってても、表示はできない状態でして、
静的ページを1ページずつ保存し直さないといけないみたいです。
これはやっぱり仕方ないのでしょうか?

状態: オフライン

Ivy

Site Admin
Admin
登録日: 01/01/04
投稿数: 5924
場所:Tokyo
4.gl_topic_assignmentsに静的ページ分を追加

この作業もしていただいているでしょうか。
ひとつひとつ保存すると、都度gl_topic_assignmentsにも登録されるので表示されるようになります。

状態: オフライン

kuro

Forum User
Active Member
登録日: 03/10/10
投稿数: 391
Ivyさん、ありがとうございます。

4.なんですが、
CALCを活用して、というのが良くわからなかったので、

phpMyAdminにて、
以下のSQL文を実行しました。
PHP Formatted Code

INSERT INTO `gl_topic_assignments` (`tid`, `type`, `id`, `inherit`, `tdefault`) VALUES
('all', 'staticpages', '_header_navigation_en', 0, 0),
('all', 'staticpages', '_footer_contents_en', 0, 0),
('all', 'staticpages', '_topics_ja', 0, 0),
('homeonly', 'staticpages', '_top', 0, 0);
 

状態: オフライン

Ivy

Site Admin
Admin
登録日: 01/01/04
投稿数: 5924
場所:Tokyo
はい、それで良いです。 静的ページが大量にある場合には、CALCを利用して、ODC形式のままインポートする方法があります。 CALCのインポートの場合は、あらかじめデータを空にしてからインポートです。

状態: オフライン

kuro

Forum User
Active Member
登録日: 03/10/10
投稿数: 391
ありがとうございます。

静的ページが大量にある場合には、CALCを利用して、ODC形式のままインポートする方法があります。
CALCのインポートの場合は、あらかじめデータを空にしてからインポートです。


静的ページが400ページ程度あるので、
一つ一つ保存しなおすのはちょっと面倒なので、
CALCで試してみたいですが、
CALCってエクセルでもいいんですよね?
どの項目をどうすればいいのでしょうか?

状態: オフライン

Ivy

Site Admin
Admin
登録日: 01/01/04
投稿数: 5924
場所:Tokyo
CALCというのは、Libre のCALCです。CALCは、ODC形式です。
Libreは、オープンソースで、EXCELより、慣れるととても使いやすく、
わたしはEXCELよりCALCばかり使っています。
UTF8のCSVもそのまま開けますし、EXCEL形式にも書き出せますよ。
その際タイトルを書きだすモードにしてください。

phpMyAdminで、ODC形式で書き出して、LibreのCALCで開いて、CALCの形式のまま、
データを空にしたうえで読み込みます。


状態: オフライン

Ivy

Site Admin
Admin
登録日: 01/01/04
投稿数: 5924
場所:Tokyo
静的ページは、アップグレードで失敗しても、プラグインをアンインストールして、新規インストールしたうえで、
DBを新テーブルにインポートすることでかならず復活します。

旧DBから、静的ページの「データ」だけを、
「すべての INSERT 文にカラム名を含める 」
のモードで書き出します。

これを、新規インストールのDBにインポートすれば復活します。

あとは、gl_topicassignment へのインポートですが、
旧DBから、ODC形式でgl_topicassignmentとgl_staticpageをエクスポートして、CALCで開いて編集します。

gl_topicassignmentに、静的ページのデータを追加したうえで、新DBにインポートすればOKです。


ページナビゲーション

時刻はすべて JST , 現在の時刻は 08:21 AM

  • 通常
  • 注目トピック
  • ロック済
  • 新着
  • 注目トピック 新着
  • ロック済トピック 新着
  •  ゲストユーザの投稿を見る
  •  ゲストユーザ投稿可能
  •  一部のHTMLを許可
  •  バッドワードをチェック