初心者のFileMaker pro Q&A (旧掲示板)

みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。

1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)

You are not logged in.

Announcement

新しい掲示板は、こちら:https://fm-aid.com/forum/t/filemaker


#1 2019-10-02 16:46:40

Valon
Member

ファイルの修復・最適化について

いつもお世話になっております。

FileMaker 18 Windowsです。

使用中にいきなり 検索を実行中 クエリーを処理中となり
全台が止まってしまいます。

何分待っても上記は終わらないためFileMaker Serverにて
ユーザーの接続を解除し再起動すると高確率でファイルが破損します。
ここ1週間は毎日のように続いています。
修復をすれば使用できるようになります。
(修復 → 修復 → 最適化コピー → 修復 ・・・・)

修復をした際の無効なデータブロック・変更項目はいつも0となっています。
(インポート順が狂ったスクリプトが出たことはあります。)



1.
FileMaker Serverの再インストールで改善されることはあるのでしょうか。

2.
ファイル破損の場合、どのように再構築すればよいのでしょうか。
リレーションやスクリプトが多すぎて1から組むのは無理です。
コピペで新ファイルに移した場合、機能するのでしょうか。

よろしくお願いいたします。

Offline

#2 2019-10-02 17:54:15

Shin
Member

Re: ファイルの修復・最適化について

ファイルの損傷でしょう。

修復したファイルで運用してはいけません。この機能は、データを取り出すための修復を行うもので、データ以外の構造を修復するものではありません。ですから、これで運用することは絶対にしてはいけません。ファイルの損傷を大きくし、データを取り出すことが不可能になることもあります。

やるべき事は、正常に動いていた時期のバックアップを用意し、そのクローンをつくります。そこに、修復したファイルからエクスポートしたデータを読み込ませます。バックアップが無ければ、ゼロから作るしかありません。シリアル値などを設定し直す必要があるかもしれませんので、ご注意を。

うまくいけば、 migration tool が使えるかもしれません。
FileMaker Developer Subscription について
を参照ください。

Offline

#3 2019-10-02 18:21:18

Valon
Member

Re: ファイルの修復・最適化について

Shin様
ありがとうございます。

問題が検出されることなく、新しいデータベースが修復構築されました。新しいデータベースの使用は安全ですが、結果を注意深く監視し、データベースの最新のバックアップの確認を続ける必要があります。
とRecover.logには書いてますが、安全ではないということですよね。
現に最近調子悪いですし。



記憶にある初めての修復は多分1ヶ月以上前で(下手したらそれより前にも何回か。)
バックアップは1週間分しかないです。

何年もかけて作ったものなのでゼロからというのは中々厳しいですね。。。

migration tool について調べてみましたが、
構造やスクリプトのコピーができるというわけではなく、データの移行(インポート)に使う物なのでしょうか。

よろしくお願いいたします。

Last edited by Valon (2019-10-02 18:34:38)

Offline

#4 2019-10-02 19:12:36

Shin
Member

Re: ファイルの修復・最適化について

1ヶ月前の損傷でしょうから、1週間前のバックアップでは損傷ファイルでしょうね。作り直すしかありません。

migration tool は、開発用のツールで、開発環境でのファイルへ実運用のデータを移し込み、実運用ファイルを作り上げるツールですので、データのみです。(シリアル値なども同期できます)

構造やスクリプトを一括して取り出す方法は、コピペしかありません。リレーションは無理ですので、手作業になります。フィールド定義と平行して作業する必要があります。
データベースの定義で、テーブルのコピペはできます。計算フィールドは、リレーション絡みのものはコメントとしての計算式になっています。
レイアウトも、パートの定義を行った上で、コピペが可能です。(リレーション設定後がいいでしょう)

これを機会に、全体をリフレッシュされてはいかがでしょうか。

Offline

#5 2019-10-02 19:16:21

qb_dp
Member

Re: ファイルの修復・最適化について

高負荷になっている処理を見極め改修が必要なのではないかと思いまがどうでしょう。
対象レコードが多いときの「集計フールド」「ソート」、複雑な計算フィールドやリレーションなど...
例えば、私は、「集計フールド」は、対象レコード数が多ければ非表示にしたりしています。

あとは、索引を作り直すとか、最適化保存してみるとか。

カンタンな修正方法は、無いかと思います。

サーバー機自体の調子が悪いとか...

Offline

#6 2019-10-02 19:27:01

Valon
Member

Re: ファイルの修復・最適化について

Shin様
ありがとうございます。

いただきましたアドバイスを元に、作業していきます。
データが取り出せなくなる前にリフレッシュすべきですね。
年内ぐらいに完成できれば良いですが。。
ご丁寧にありがとうございました。



qb_dp様
ありがとうございます。

壊れた原因は処理の重さもあるかもしれませんが、私含むユーザーの度重なる強制終了のような気がしています。
フリーズしたら落として、ひどいときはサーバーの再起動をしてなどの乱暴な運用が今回の事態を招いたのかもしれません。

Offline

#7 2019-10-03 10:22:26

Shin
Member

Re: ファイルの修復・最適化について

バックアップの戦略も見直しましょう。
業務内容にも寄ると思いますが、私の社内サーバーでは、
1時間毎に、顧客基本情報、営業ファイルのバックアップをとり、2日後に上書き
毎日深夜に、全ファイルのバックアップ、30日後に上書き
1週間毎に、全ファイルをバックアップ、永久保存
1ヶ月毎に、クローンを保存、手動で削除
システム改修前、全ファイルをバックアップ、永久保存
システム改修後、クローン保存
毎時ファイル以外は、早朝に外部ストレージへもバックアップ
を行っています。全容量で2G程度ですので、1T,もあれば大きなストレージはいりませんよ。

Offline

#8 2019-10-03 10:30:33

Valon
Member

Re: ファイルの修復・最適化について

Shin様
ありがとうございます。

バックアップは1週間分を上書きでローカル&クラウドに保存しているだけでした。
永久保存やクローンの作成も組み込み、今後損傷した際はこれらと直ちに差し替えるようにします。

現在、作り直しを進めています。
表題から外れますが、少しお聞きしたいのですがよろしいでしょうか。

以下の順序で考えています。
問題ないでしょうか。それぞれを前後した方が楽というのがありましたら教えていただけますか。

1.
テーブル&フィールドのコピペ

2.
外部データソースの指定

3.
リレーション

4.
値一覧のコピペ

5.
レイアウトのコピペ

6.
スクリプトのコピペ

7.
フィールドとスクリプトのコメントアウトの箇所を消す。

8.
セキュリティの設定

9.
実運用ファイルからのデータインポート

10.
実運用ファイルと差し替えて完成

※随時バックアップ


よろしくお願いいたします。

Offline

#9 2019-10-03 10:41:15

Shin
Member

Re: ファイルの修復・最適化について

ファイルの構造によって、手順は変わると思います。
ファイル構造の損傷があれば、コピペを行うと新しいファイルに損傷を持ち込む可能性もありますので、できれば、クリップボードの内容を確認したり、フィールドの内容などを厳重に確認しながら行うことをオススメします。

Offline

#10 2019-10-03 10:45:36

Valon
Member

Re: ファイルの修復・最適化について

Shin様
ありがとうございます。

損傷の持ち込みだけは避けたいです。。。
損傷があった場合には何か判断できる材料があるのでしょうか。
例えば新しいファイルへコピペができないなど。

ファイルのテーブルを全部一括で選択しコピペしていますが、1回ペーストできないことがあり
選択数を減らすとできました。

クリップボードの内容は確認してみます。
よろしくお願いいたします。

Offline

#11 2019-10-03 10:51:33

Shin
Member

Re: ファイルの修復・最適化について

経験的には、ファイル構造やセキュリティーテーブルの損傷があった場合には、ファイルを開くことができない可能性が高く、ファイルが開く損傷は、データテーブルと、レイアウトに起こることが多いかと思います。
コピペする段階で、一旦xmlデータをクリップボードに作り、それをペースト時に解釈されていますので、損傷があればエラーになるのではないかと思います。そのxmlファイルで、異常を見つけたことはありますが、その機構について公表されていませんので、詳細は分かりません。

Last edited by Shin (2019-10-03 10:53:50)

Offline

#12 2019-10-03 12:10:19

Valon
Member

Re: ファイルの修復・最適化について

ファイルは修復後開けておりますので、データテーブルと、レイアウトをまずは疑ってみます。

損傷の持ち込みだけは避けたいので、異常を見つけた際は何がおかしかったか覚えていれば教えていただけますか。
(xmlがそもそもコピーできない。xmlの階層がおかしかった、不審な文字列等)

前述したコピーできなかった部分は、計算フィールドの計算式が11,000文字を超えていたためコピーができなかったようで、計算式を削除するとコピーできたため損傷ではないのかなと感じています。

またxmlデータの解析には、テキストエディタ系は使えなかったため https://splash.jp/store/cme/ こちらを使用してみました。
xml解析にあたり、どういった方法・ツールが良いか教えていただけますか。

質問ばかりで大変申し訳ございません。
よろしくお願いいたします。

Offline

#13 2019-10-03 14:20:19

qb_dp
Member

Re: ファイルの修復・最適化について

計算フィールドの計算式が11,000文字を超えていたためコピーができなかったようで、.....

コレは、高負荷がかかりそうなカンジですね。必要時にスクリプトで処理するように修正することをオススメします。
せっかく作り直しても高負荷な計算フィールドが多くあるならトラブルが解消しないと思われます。

Offline

#14 2019-10-03 14:30:43

Valon
Member

Re: ファイルの修復・最適化について

qb_dp様

見直すと昔に作った無駄なフィールドが多く存在します。
計算フィールドにしておく必要が無いものも多いです。

テキストフィールドにして、入力値の自動化→計算式にしておくだけでも大分マシでしょうか?
それともスクリプト化しないと大差ないでしょうか。

計算フィールドが便利なため多用しておりました。
見直していきたいと思います。

Offline

#15 2019-10-03 17:29:34

Shin
Member

Re: ファイルの修復・最適化について

クリップボードを編集するツールは、FileMaker レイアウト・スクリプト・フィールド等、コピーしたクリップボード内のXMLを編集するツール。 に一覧されています。フリーのものもあります。

損傷があったときは、文字化けがおきていましたので、ビット落ちなどがあったのかもしれません。

計算フィールドと計算式を設定したフィールドでは、負荷が大きく変わりますが、どの評価の時点でどのようなデータが必要かを考慮する必要があります。計算式(上書きを許可しない)を設定したフィールド、計算式(上書きを許可する)を設定したフィールド、結果を保存する計算フィールド、結果を保存しない計算フィールドで、挙動が異なります。

Offline

#16 2019-10-03 17:42:40

Valon
Member

Re: ファイルの修復・最適化について

Shin様

ご丁寧にありがとうございます。
いただきました情報を元に確認、再構成を行ってまいります。

気が遠くなりそうですが折れずに頑張ります。
また何かあったときはご相談させていただけますでしょうか。

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

Offline

Registered users online in this topic: 0, guests: 1
[Bot] ClaudeBot

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.005 seconds, 7 queries executed - Memory usage: 561.7 KiB (Peak: 582.6 KiB) ]