0

SQL Server CE を使用するように構成された Umbraco 4.7.2 を GoDaddy 4GH 共有ホスティング アカウントにインストールしました。当初、サイトは期待どおりに動作しました。ただし、後続/同時接続が許可されていないことにすぐに気付き、次のメッセージを受け取りました。

System.Data.SqlServerCe.SqlCeException: ファイル共有違反があります。別のプロセスがファイルを使用している可能性があります。[ ..\App_Data\Umbraco.sdf ]

私はいくつかの調査を行い、SQL Server CE が複数の接続を許可していないことを理解していますが、複数の訪問者が同じ場所をナビゲートできない場合、Umbraco がオプションとして SQL Server CE を提供するとは信じがたいと思います。サイト。

他のリソースごとに接続文字列を変更しようとしましたが、うまくいきません。これが私の現在の接続文字列です:

datalayer=SQLCE4Umbraco.SqlCEHelper,SQLCE4Umbraco;data source=|DataDirectory|\Umbraco.sdf;file mode=read write;persist security info=false;

Read Onlyやなどのさまざまなファイルモードを試しましたがShared Read、うまくいきませんでした。この問題をどのように克服しますか?これは何らかの形でホスティング環境の問題ですか、それとも接続文字列の問題ですか?

4

1 に答える 1

1

ホスティング環境が SQL CE データベースの使用をサポートしていないようです。

このページhttp://support.godaddy.com/help/article/4883/4gh-frequently-asked-questionsによると、サポートできません:

同時ファイルは、複数のセッションまたは同時スレッドで同じファイルに書き込みます。影響を受けるリソースの例: ファイルベースのデータベースとクロス セッション ログ ファイル (これらの問題は、ボリュームが増えるため、4GH 環境では誇張されます)。

実際には、複数のサーバー間でファイル システムを共有する分散環境のように見え、ロックの問題が発生します。

したがって、解決策は、サーバーが 1 つしかない従来のホスティング製品に移行することだと思います。

Umbraco は、SQL サーバー (非 CE) を使用する場合の分散環境での実行をサポートしていますが、キャッシュなどを更新するために他のインスタンスを呼び出す必要があるため、事前にすべてのサーバーを把握している必要があります。現在のホスティング製品でそれを実現できるとは思わないでください。

現在のセットアップでデータベースを完全な SQL サーバーにアップグレードすることもできますが、うまく機能するかどうかはわかりません。

于 2012-08-03T20:18:18.297 に答える