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

Microsoft SQL Serverのすべてのバージョン(MySQL以外)。sql-server-2016のようなバージョン固有のタグも追加してください。これは、質問に関連することが多いためです。

3
SSMSを取得して、実行プランペインに実際のクエリコストを表示できますか?
SQL Serverのマルチステートメントストアドプロシージャのパフォーマンスの問題を修正しています。時間をかけるべき部分を知りたい。 クエリコストの読み取り方法から理解しましたが、それは常にパーセントですか?SSMSに実際の実行計画を含めるように指示された場合でも、「クエリコスト(バッチに対する)」の数値はコスト見積もりに基づいており、実際とはかけ離れている場合があります。 クエリパフォーマンスの測定:「実行プランのクエリコスト」と「実行時間」から、ストアドプロシージャの呼び出しをSET STATISTICS TIMEステートメントで囲むことができることがわかり、Messagesペインに次のようなリストが表示されます。 SQL Server parse and compile time: CPU time = 0 ms, elapsed time = 1 ms. SQL Server Execution Times: CPU time = 0 ms, elapsed time = 0 ms. [etc] SQL Server Execution Times: CPU time = 187 ms, elapsed time = 206 …

3
where句の列の順序はインデックスの順序と同じにする必要がありますか?
私はこのuse-the-index-luke.comを読んでいて、インデックスのしくみを詳しく説明しています。インデックスの順序は非常に重要であり、クエリを高速化するにはwhere句の列がインデックス内の列と同じであることを、この担当者が繰り返し述べていることの1つ。今日、私はこの理論を裏付けるだけで、SQL Server 2008にテーブル(id int、name nvarchar(100))を作成しました。そこに5000行を挿入し、インデックスを作成しました create index abc on test (name, id ) そしてクエリを発射しました select ID, name from test where ID = 10 and name = '10' 全テーブルスキャンの後にクエリプランの選択が続くことを期待していましたが、驚いたことに、プランの出力は選択に続くインデックススキャンでした。 それで、私の質問は、Where句の列の順序が重要ですか、それともSQL Serverがインデックスの定義に従って列を再配置するのですか? ありがとう!!

2
mysqlと同様のコマンドラインからSQL Serverデータベースをバックアップ/復元する方法
古いサーバーからの一部のデータベースの移行を自動化する必要があります。たとえば、C#を使用するツールのスクリプトが可能性があることは知っていますが、ジョブを実行するバッチファイルを作成するには、シンプルで高速かつ効果的なソリューションが必要です。

2
dm_exec_query_statsの「読み取り」と「書き込み」の単位
MSDNは、dm_exec_query_statsのさまざまな論理/物理読み取りおよび書き込み列を次のように説明しています。 プランが最後に実行されたときに実行された物理読み取りの数。 これらの列はすべて64ビット整数(bigint)であるため、数値が大きいほど読み取り/書き込みが多いことは明らかです。 しかし、この列の単位は何ですか?データベースページ?キロバイト?ちょうど任意の数ですか? 例:私のデータベースでかなり高額なクエリの場合dm_exec_query_stats.total_logical_reads = 40412。 何の40412?
8 sql-server  dmv 

2
SQL Server 2008:ログインは信頼されていないドメインからであり、Windows認証では使用できません
ここの質問は1と2とは異なります ネットワーク内の別のシステムにあるSQL Serverデータベースに接続しようとすると、両方がワークグループにあり、SQL Server Management StudioとWindows認証を使用してSQL Server 2008インスタンスに接続しようとすると、接続されます。 しかし、アプリケーションから接続しようとすると、次のエラーが発生します (ログインに失敗しました。ログインは信頼されていないドメインからのものであり、Windows認証では使用できません。)Native = 18452)。 SQL Server Management Studioが接続できる場合、アプリケーションを接続するには何が必要ですか?

2
SQL Server:トランザクションレプリケーション計算列
私はトランザクションレプリケーションサブスクリプションのサブスクライバーです。私は出版社を管理できません。 パブリケーションデータベースのスキーマ変更に関する次の記事を読みました。 パブリケーションデータベースでスキーマを変更する ただし、サブスクリプション側のスキーマを変更しようとしています(可能な場合)。トランザクションレプリケーションが、サブスクライバーテーブルへの永続的な計算列の追加をサポートするかどうか疑問に思っています。 計算された値を必要とするすべてのテーブルに新しいビューを追加するよりも、このソリューションの方がはるかに好きです。

2
非クラスター化インデックス-キーと非キー
私はこれらの概念を正しく理解していることを確認したいだけなので、フィードバックがあれば大歓迎です。 これは、試行錯誤のプロセスとMSDNドキュメントを読んで、最適化したばかりのクエリからの私の理論です。 クエリ DECLARE @pic_id int SET pic_id = 1 SELECT ROW_NUMBER() OVER (ORDER BY pic_date desc) AS row_num, * FROM tbl_pics WHERE deleted = 0 AND map_id = 1 AND (hidden = 0 OR pic_id = @pic_id) インデックス CREATE NONCLUSTERED INDEX [IX_tbl_pics] ON [dbo].[tbl_pics] ( [map_id] ASC, [deleted] ASC, …



1
SQL Serverの継続時間測定は実際に何を測定しますか?
プロファイラートレースを実行するとき、クエリ期間は正確に何を測定しますか? データアクセス(SELECT)を実行するストアドプロシージャがあり、アプリケーションに結果を返すまでに平均で約30秒かかります。しかし、トレースを実行すると、平均所要時間は約8秒、最大所要時間は12秒、平均CPUは5.5秒です。 結果セットを返すのに、これほど長い時間がかかる原因は何ですか?大量のNETWORKIO待機を蓄積していません。結果セットは単純なテキストデータの約270行、合計約50列です。

2
見積もりと実際の実行計画の違い
SQL Serverを初めて使用するので、最初のクエリを調整したいと思います。 SQL Server 20xxで、「推定実行プランの表示」と「実際の実行プランを含める」の違いは何ですか?

2
SQL Server 2008ファイルストリームの最大行数
私たちは、使用しているファイルストリームにおける10.0.4000.0(X64)およびWindows Server 2008 - Microsoft SQL Serverの2008(SP2)を数百万のファイルを格納します。数百万のファイルがあるため、それらすべてが100個のファイルグループにグループ化され、次々とファイルグループに挿入されます。現在、各ファイルグループには約15Kのファイルがあり、間もなく20Kに増えると予想されています。したがって、ファイルグループが最適なパフォーマンスを実現するために必要な行の最大制限はありますか?または、単一のフォルダーに約20K未満のファイルを格納または格納するときに、最適なパフォーマンスを得るためにオペレーティングシステム側に最大値がありますか? 適切なリソースへの提案も非常に役立ちます。 私はそれを述べるmsdnブログへのリンクを持っています 4.特に8.3ファイル名の生成が有効になっている場合、NTFSパフォーマンスの低下が問題になる可能性があるため、FILESTREAMディレクトリコンテナーに個別に300,000を超えるファイルがないかどうかを確認します。 MSDNブログリンク ありがとう。

3
行バージョンで並べ替えられたデータのフィルタリング
次の構造のSQLデータテーブルがあります。 CREATE TABLE Data( Id uniqueidentifier NOT NULL, Date datetime NOT NULL, Value decimal(20, 10) NULL, RV timestamp NOT NULL, CONSTRAINT PK_Data PRIMARY KEY CLUSTERED (Id, Date) ) 個別のIDの数は3000から50000の範囲です 。テーブルのサイズは10 億行を超えます。 1つのIDで、テーブルの5%までの数行をカバーできます。 このテーブルで最も実行されるクエリは次のとおりです。 SELECT Id, Date, Value, RV FROM Data WHERE Id = @Id AND Date Between @StartDate AND @StopDate …

2
SQL Server 2008(またはR2)でWindows認証ログインを無効にできますか?
Windowsログインまたは混合モードを実行できますが、内部ログインのみを使用してすべてのWindowsログインをブロックするようにSQL Serverを構成できますか? 可能性のあるすべてのWindowsログインを追加し、それらを予防的(または対処的)手順として制限付き特権に設定する唯一のソリューションはありますか?


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