
私は小規模オフィスの IT インフラストラクチャ全体をオーバーホールしています。Dell T410 は Win2k8 ファイル共有としてのみ機能していたため、再構築のためにサーバーをダウンさせている間に、Vista を実行している未使用のデスクトップでその機能を再現できると考えました。
それはすべて結構なことですが、共有から Access データベースに同時にアクセスしていました。T410 ではゆっくりと動作していましたが、一時サーバーに移行した後は、一度に 1 人のユーザーしか使用できず、追加のユーザーがいると使用不能になります。クエリには 30 ~ 60 秒の一時停止があります。その他はすべて問題なく動作します。
これは私の前任者が対処しなければならなかったことであり、オフィスの女性たちは彼がやったと言っている何かサーバー上でクエリ時間を 5 ~ 10 秒に短縮します。シングル ユーザー モードでは瞬時に実行されますが、複数のユーザーに対してこの問題を軽減するために行ったことに関するドキュメントはありません。サーバーには RAMDISK、RAID セットアップなど、私が知る限り特別なものはありませんでした。
まず、ハード ドライブが遅いのではないかと思い、RAMDISK をセットアップして、その特定のファイルをそこにホストしています。シングル ユーザー アクセスは超高速になりましたが、マルチ ユーザー アクセスは依然として同じくらい遅いです。次に、ネットワーク カードがボトルネックになっているのではないかと考えましたが、リソース モニターを監視しても、上限に達するようなことはありませんでした。次に考えたのは、ハードウェア/Vista のせいにすることでしたが、これは Dell の何とか Core 2 Duo で、RAM は 3GB あり、予備のライセンスを持っている OS は Vista Business だけです。手元の作業には十分なはずです。
設計が不十分な Access データベースはマルチユーザー環境では使用できないという同様の苦情を何度も目にしてきました。それに続いて、データベースをフロントエンドとバックエンドに分割するという提案も受けましたが、サーバー再構築後の次のプロジェクトは SQL Server のバックエンド全体を再設計することなので、Access の調整に多くの時間を費やすつもりはありません。さらに、前の人は何もオーバーホールせずに問題を半分解決できました (これだけはわかっています)。しかし、その間、これは生産性を低下させています。
古いサーバーと新しいサーバーの間で何が変わったのでしょうか? クエリ時間を妥当な遅延に戻すために変更できる簡単な点はありますか?
答え1
fe、be への分割は複雑ではありません。次に、be からテーブルをリンクします。これらは、ms access の展開の基本です。msql ビルドに直面している場合は、データベースを分割するのは非常に簡単です。