タグ付けされた質問 「sql-server-2008」

SQL Server 2008(メジャービルドバージョン10.00.xxxx)。また、sql-serverでタグ付けしてください。

4
CXPACKET待機の処理-並列処理のコストしきい値の設定
Sharepointサイトのトラブルシューティングに関する以前の質問のフォローアップとして、CXPACKETの待機について何かできるかどうか疑問に思いました。 ひざまずく解決策は、MAXDOPを1に設定することですべての並列処理をオフにすることであることを知っています。これは悪い考えのように聞こえます。しかし、別のアイデアは、並列処理が開始される前にコストのしきい値を増やすことです。実行計画のコストのデフォルトの5はかなり低いです。 だから私は、実行計画コストが最も高いクエリを見つけるクエリがすでに書かれているのだろうかと思っていました(実行期間などが最も長いクエリを見つけることができることを知っていますが、実行プランのコストはどこかで取得可能です、また、そのようなクエリが並行して実行されたかどうかも教えてくれます。 誰かがそのようなスクリプトを手元に持っていますか、またはこれを見つけるために関連するDMV、DMFまたは他のシステムカタログビューの方向に私を向けることができますか?

3
ORDER BYが2つのテーブルをEXCEPTの前(遅い)にソートし、後(速い)にソートしないのはなぜですか?
SQL Server 2008 R2クエリオプティマイザーパズル 2つのテーブルがあり、どちらにも900万行が含まれています。70.000行は異なり、他は同じです。 これは高速、13秒です。 select * from bigtable1 except select * from similar_bigtable2 これにより出力がソートされ、13秒も高速になります。 select * into #q from bigtable1 except select * from similar_bigtable2 select * from #q order by sort_column これは非常に遅いですが、 ;with q as ( select * from bigtable1 except select * from similar_bigtable2 ) select …

4
Integration Servicesを使用せずにメンテナンスプランをエクスポートできますか?
SQL Serverインスタンスから簡単なメンテナンスプランをエクスポートしようとしています。 ソース管理へのエクスポートをチェックし、エクスポートされた保守計画を機能的に同一のインスタンスに適用します。 StackOverflowとSQL Server Newbieは、Integration Servicesを使用して保守計画をエクスポートすることをお勧めします。 エクスポートターゲットでIntegration Servicesに接続しようとすると、次のエラーが表示されます。 コンピューター「WEBSERVER」上のIntegration Servicesサービスへの接続が次のエラーで失敗しました:指定されたサービスはインストールされたサービスとして存在しません。 このボックスは、コンシューマアプリケーションにデータを提供するためだけに使用するため、WEBSERVERでIntegration Servicesを無効にすることにしました。WEBSERVER上のすべてのデータは、バックエンドインスタンスから複製されます。Integration Servicesは、バックエンドインスタンスでデータを処理するために頻繁に使用されます。 Integration Servicesを使用せずに保守計画をエクスポートする文書化された方法はありますか?マイクロソフトはサポートしていますか?

2
TinyIntのSQLサーバーストレージ
SQL Serverでは、tinyintが9Bの行に格納されているのはなぜですか。何らかの理由で、NULLビットマップマスクの最後に追加の1バイトがあるようです。 tempdbを使用します。 行く CREATE TABLE TBL ( i TINYINT NOT NULL ); 行く tblに挿入(i) 値(1); 行く DBCC IND( 'tempdb'、 'tbl'、-1); 行く DBCC TRACEON(3604); -ページダンプはコンソールに移動します 行く DBCC PAGE( 'tempdb'、1,168,3); 行く 結果(DBCC PAGEの最下位バイトが最初に表示されるため、バイトを反転しました): Record Size = 9B 10000500 01010000 00 TagA = 0x10 = 1B TagB = 0x00 = 1B Null …


2
ストアドプロシージャのパラメーターが多すぎますか?
SQL Server 2008でストアドプロシージャの記述を始めたばかりで、30以上のパラメーターがあります。10個以上のパラメーターを持つものを書いたことはありません。 コンテキストのために...この手順は、本質的になりますINSERT単一のテーブルに単一の行を。非常によく似たものもあります。やや小さいが; 同じテーブルでUPDATEを実行するバージョン。ほとんどの列は比較的小さく、intと文字列が混在しています(varchar(200))。 問題は何ですか。良いか悪いか; 多数のパラメーターを含む手順を作成すること、および他のパターンの検討を開始するしきい値はどれくらいですか?

4
SQL Serverエージェント経由でスケジュールされたジョブからバッチファイルを実行する方法
SQL Server 2008 R2でSQL Serverエージェントジョブ内から(Windows)バッチファイルを実行しようとしています。ジョブステップで、新しいステップを作成し、そのタイプを「オペレーティングシステム(CmdExec)」に設定しました。最初に、「コマンド」フィールドにバッチファイル名のみを入力しようとしました。ファイルが見つからないというエラーが発生します。 次に試しました:cmd.exe c:\ test.bat これは開始されますが、決して完了しません(実際に動作しているようには見えません)。 バッチファイル名を引用符で囲みました:cmd.exe "C:\ test.bat"ですが、それでも違いはありません。 これを機能させるための魔法の組み合わせは何ですか?


5
SQL Serverバックアップ-いくつかの質問
金曜日の午後9時に毎週のバックアップジョブを実行しますが、ディスクスペース(時々非常に低くなります)とパフォーマンスに関するいくつかの問題が発生しています。何が起こるかを合理化/最適化することを検討しており、コメントをお待ちしています。 具体的には: バックアッププロセスは、バックアップ中に統計を更新するのに約4時間かかります。このプロセスを安全に無効にして時間を節約できますか? ディスクスペースが非常に頻繁に不足しているため、プロセスを再調整する必要があるかと考えています。現在、バックアップを作成してから以前のバックアップを削除しますが、これがディスク容量を圧迫しています。最初に以前のものを安全に削除してからバックアップを実行できますか? その他のコメントや意見は大歓迎です編集:サーバー上のSQLファイルの合計サイズは約35GBです。1つのデータベースのサイズは約25GBで、他の6つの共有は他の10GB程度を占めています。

3
スナップショットレプリケーションの保持
SQL Server 2008運用サーバーでスナップショットレプリケーションを設定しましたが、スナップショットフォルダーに1年前にまで遡るスナップショットがあることに気付きました。これらのスナップショットの保持を変更するにはどうすればよいですか?具体的には、スナップショットを5日間保持したいと思います。 これが私が見ているフォルダのスクリーンショットです:


4
XMLデータ型を使用する場合
プロジェクトでデータベースを作成する責任があります。まれに値を持つフィールド(10,000レコードごとに1つ)があり、これをデータベースに格納する最適な方法を探しています。 私が見る限り、3つのオプションがあります: 余分な値ごとにテーブルに列を追加します 元のテーブルを参照し、値を保存する必要がある場所にのみレコードを持つリンクテーブルを追加します。 元のテーブルのXMLデータ型を使用し、すべての値をこれに保存します。 私が検討していない他のオプションはありますか? 私は各方法の長所と短所を解決しようとしています。私が知る限り、1が最も簡単で、2が最小のスペースで済みますが、3のリソースを見つけるのに苦労しています。

3
C#VS SSMSから同じリクエストを実行すると、異なる実行時間が与えられます
このようなリクエストがあります SELECT [EstimateId], [CreationUserId], [EstimateStatusValueId], [LanguageId], [LocationId], [EstimatorUserId], [FilterUnitSystemTypeId], [EstimateNumber], [RevisionNumber], [CreationDate], [ModificationDate], [ProjectDescription], [IsBsdq], [ClosingDate], [ClosingTime], [ClosingUpdatedOn], [DeadLineDate], [IsReceived], [Inclusion], [Exclusion], [Misc], [Note], [WorkDeadLines], [Comments], [Validity], [PlansLocation], [PlansReceivedFrom], [Price] FROM [Estimate].[Estimates] ORDER BY [ClosingDate] ASC, [ClosingTime] ASC SSMSでこのクエリを実行すると、953msの実行時間が得られますが、C#でLinqクエリからこのクエリを実行すると、1813msの実行時間が得られます。 Linqクエリは「.Net SqlClient Data Provider」を使用し、EntityFramework(EDMXファイル)に対して発行されます。これは問題になる可能性がありますか? 同じデータベースの異なるコンテキストから実行されるリクエストの実行時間に大きな違いがある理由を誰もが知っていますか? 両方の要求のすべての実行計画を検証し、それぞれのクエリを満たすために同じインデックスを使用します。 C#リクエストの実行計画を確認するには、SQLプロファイラーを使用してShow Plan XMLイベントをトラップし、それをSSMSの1つと比較します。両方とも同じです。


2
SQL Server 2008-同じ物理マシンとサーバーインスタンスでのクロスデータベースパフォーマンス
同じ物理マシン上の別のDBを介して選択を実行すると、パフォーマンスが低下しますか?したがって、同じSQL 2008インスタンス内で実行されている同じ物理マシン上に2つのデータベースがあります。 たとえば、SomStoreProc on_this_dbで、the_other_db.dbo.someTableからSELECT someFieldsを実行します。 これまでのところ、私がインターネットで読んだことから、ほとんどの人はNOを示しているようです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.