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

SQL Server 2012(メジャービルドバージョン11.00.xxxx)。sql-serverにもタグを付けてください。


1
全文索引とスカラーインデックスの組み合わせ
たとえば、全文を使用して検索できる必要のある1200万人の名前と住所のデータベースがあるが、各行には整数値も含まれているとしCOMPANYIDます。テーブルには、1,200万行を超える約250の個別のCOMPANYIDが含まれています。 フルテキストインデックスを定義するときCOMPANYに、ツリーにそれぞれ独自の「ブランチ」を与えることは可能ですか?

3
AlwaysOn可用性グループlog_send_rate
仮想マシンでWindows 2012およびSQL Server 2012を実行しているすべてのAlwaysOnセットアップとベアメタルで、log_send_rate sys.dm_hadr_database_replica_statesが一貫して誤った値を返していることがわかりました 。 例(同期モードの場合) sys.dm_hadr_database_replica_states.log_send_rate(ave = 36,571(kb / sはbolで表示)) Perfmon-SQLServer:可用性レプリカ-レプリカに送信されたバイト数/秒(最大= 486,000.000、平均= 259,000.000) Perfmon-SQLServer:Databases-ログフラッシュされたバイト数/秒(最大= 653,044.000、平均= 341,000.000) これに関する投稿を見たことがありませんが、正しく機能していないようです。正しいlog_send_rate値は、AlwaysOnの監視に役立ちます。 他の誰かがこれを経験しましたか?

2
シンプルリカバリモードを設定し、ユーザーが作成したすべてのデータベースのログファイルを圧縮する
正しい方向に向けていただければ幸いです。私はT-SQLを頻繁に使用するわけではありませんが、グーグル操作をして、以下のスクリプトを見つけました。スクリプトを少し修正しました。 スクリプトで次のことを行います。 システムDBを除くすべてのデータベースを選択します。 リカバリをシンプルに設定します。 システムデータベースを除くすべてのdb(.ldf)のログファイルを圧縮するには スクリプト: USE MASTER declare @isql varchar(2000), @dbname varchar(64) declare c1 cursor for select name from master..sysdatabases where name not in ('master','model','msdb','tempdb','ReportServer','ReportServerTempDB') open c1 fetch next from c1 into @dbname While @@fetch_status <> -1 begin select @isql = 'ALTER DATABASE @dbname SET RECOVERY SIMPLE' select @isql …

2
計算フィールドにインデックスを作成する:文字列またはバイナリデータは切り捨てられます
Foo次のフィールドを持つテーブルがあります。 ID bigint not null identity(1,1), SerializedValue nvarchar(max), LongValue as TRY_CAST(SerializedValue as bigint) 次に、LongValueにインデックスを作成して、数値を表すシリアル化された値を簡単に検索できるようにします。 create nonclustered index IX_Foo on Foo(LongValue); 私に次のエラーを吐き出します: 文字列型やバイナリは省略されます。 はい、SerializedValueに既存のデータがあります。しかし、計算されたフィールドにインデックスを作成することで、何が切り捨てられるのでしょうか。

5
SQL Server 2012常時バックアップ、フルvsコピーのみ
コピーのみのバックアップと完全バックアップは、トランザクションログの番号付けと必要に応じて復元するため、迅速な説明が必要です。 SQL Server 2012のセットアップで、複数のデータベースに対して常にオンになっています。可用性グループは、レプリカの優先バックアップでセットアップされます。 レプリカでは、コピーのみとトランザクションログのバックアップのみが可能です。これは、トランザクションログの復元が必要な場合、プライマリで完全バックアップを実行する必要があることを意味しますか? ありがとうございました

2
SQL Serverのパフォーマンス:PREEMPTIVE_OS_DELETESECURITYCONTEXT主要な待機タイプ
昨日、SQL ServerのCPU使用率が高いことについて不満を言っていた顧客から電話がありました。SQL Server 2012 64ビットSEを使用しています。サーバーはWindows Server 2008 R2 Standard、2.20 GHz Intel Xeon(4コア)、16 GB RAMを実行しています。 犯人が実際にSQL Serverであることを確認した後、ここで DMVクエリを使用してインスタンスの上位の待機を調べました。上位2つの待機は(1)PREEMPTIVE_OS_DELETESECURITYCONTEXTと(2)SOS_SCHEDULER_YIELDでした。 編集:「トップ待機クエリ」の結果を次に示します(誰かが私の希望に反して今朝サーバーを再起動しましたが)。 私たちは多くの激しい計算/変換を行うので、私は理解できますSOS_SCHEDULER_YIELD。しかし、私はPREEMPTIVE_OS_DELETESECURITYCONTEXT待機タイプとそれが最も高い理由について非常に興味があります。 この待機タイプについて私が見つけることができる最良の説明/ディスカッションは、ここにあります。それは言及しています: PREEMPTIVE_OS_待機タイプは、データベースエンジン(通常はWin32 API)を離れ、さまざまなタスクのためにSQL Serverの外部でコードを実行する呼び出しです。この場合、以前にリモートリソースアクセスに使用されていたセキュリティコンテキストが削除されています。関連するAPIは、実際にはDeleteSecurityContext()という名前です 私の知る限り、リンクサーバーやファイルテーブルなどの外部リソースはありません。また、なりすましなどは一切行いません。バックアップが原因でスパイクが発生したり、ドメインコントローラに障害が発生したりする可能性はありますか? これが主な待機タイプになる原因は何ですか?この待機タイプをさらに追跡するにはどうすればよいですか? 編集2: Windowsセキュリティログの内容を確認しました。興味のあるエントリがいくつかありますが、これらが正常かどうかはわかりません。 Special privileges assigned to new logon. Subject: Security ID: NT SERVICE\MSSQLServerOLAPService Account Name: MSSQLServerOLAPService Account Domain: NT Service Logon ID: 0x3143c Privileges: SeImpersonatePrivilege …

1
UserDB選択の特定のTempDB挿入により、SOS_SCHEDULER_YIELDからENCRYPTION_SCANが返されます。
実稼働システムの1つで、ユーザーデータベースから一時テーブルへの1つの挿入ステートメントに問題が発生しています。挿入/選択をコメントアウトすると、問題のストアドプロシージャがタイムリーに実行されるため、問題の切り分けに自信があります。 問題の挿入/選択のコメントを解除すると、呼び出された一連のストアドプロシージャが基本的に停止して停止します。tempdbやユーザーデータベースで、年齢別の上位トランザクションに何も表示されません。データベースが「静止」しているときに、アクティビティモニターの情報から逸脱するアクティビティモニターに何も表示されません。ただし、CPUは約20%で平坦化されます。 動作は次のとおりです。再生ケースをセットアップして実行すると、問題の挿入/選択に到達すると、SOS_SCHEDULER_YIELDが表示され、ENCRYPTION_SCANが表示されます。約5時間後、ストアドプロシージャの処理が再開され、アクティビティが完了します(すべての個別の操作の周りに、迅速でダーティなログステートメントを配置します)。 また、挿入の選択部分の変数を実行時の値に置き換え、選択クエリ自体を実行したところ、5秒で戻りました。 問題のユーザーデータベースは、tempdbと同様に、暗号化が有効な値としてFALSEを持っています。問題の操作は約6万5千行のデータで発生し、1千行のみで試したところ、動作は持続しましたが、所要時間ははるかに短かったです。 シングルユーザーデータベースは、この動作の唯一のインスタンスです。そのユーザーデータベースのバックアップを介してローカルで再現しました。この問題を示さないソフトウェアのユーザーが約70人います。 上記の情報を踏まえて、私の質問は、ストアドプロシージャの処理が停止するのはなぜですか?正確な答えを期待することはおそらく楽観的であるため、これをデバッグするための正しい手順は何ですか?おそらく、dm_tran_locks、dm_exec_requests、dm_tran_database_transactions、dm_os_schedulers、dm_exec_sessionsなどのDMVの1つに何かがあり、それらは私にいくつかの情報を提供しましたが、解決策を指すような方法で出力を解釈または理解していません。 以下は問題の挿入/選択です: INSERT INTO #TS_EVENT_DATA ( EVENT_FK, EVENT_TYPE_CR_FK, EVENT_ENTITY_CLASS_CR_FK, userDatabase_ID, DATA_NAME_FK, IMPORT_JOB_FK, PRODUCT_STRUCTURE_FK, ORG_ENTITY_STRUCTURE_FK, ENTITY_CLASS_CR_FK, ENTITY_DATA_NAME_FK, ENTITY_STRUCTURE_FK, DATA_SET_FK, DATA_TYPE_CR_FK, ORG_IND, TABLE_NAME, NET_VALUE1_NEW, NET_VALUE2_NEW, NET_VALUE3_NEW, NET_VALUE4_NEW, NET_VALUE5_NEW, NET_VALUE6_NEW, NET_VALUE1_CUR, NET_VALUE2_CUR, NET_VALUE3_CUR, NET_VALUE4_CUR, NET_VALUE5_CUR, NET_VALUE6_CUR, PERCENT_CHANGE1, PERCENT_CHANGE2, PERCENT_CHANGE3, PERCENT_CHANGE4, PERCENT_CHANGE5, PERCENT_CHANGE6, VALUE_UOM_CODE_FK, ASSOC_UOM_CODE_FK, VALUES_SHEET_NAME, UOM_CONVERSION_FACTOR, END_DATE_CUR, …

1
SSIS組織
私はSSMSに精通していますが、.net、c#、またはビジュアルスタジオ(アセンブラー、c、unix、vi、oracleなど)を使用したことがありません。 私は基本的な2012 SSIS ETL(BIまたはデータウェアハウスではない)を理解しようとしていますが、これらすべてがどのように組み合わされるかを説明するものは何も見つかりません。 カタログ ソリューション プロジェクト パッケージは他にありますか? SSISを使用して単純なテストを作成し、ファイルをテーブルにインポートする必要があるとしましょう。上記のどれが必要で、どのような順序で作成しますか? また、基本的なSSIS 2012 ETLの概要や記事への方法への良いリンクはありますか。

1
SQL Server 7データベースをSQL Server 2012に移動するにはどうすればよいですか?
SQL Server 7.0からSQL Server 2012にデータベースを移動したいのですが、バックアップと復元には互換性がありません。SQL Server 7.0からエクスポートして2012にインポートする方法はありますか?テーブルだけが必要です-ビューやストアドプロシージャは必要ありません。

2
SSIS 2012では、「エントリポイント」パッケージとしてパッケージにフラグを立てる目的は何ですか
Visual Studioデザイナーでは、SSISパッケージを右クリックして、「エントリーポイント」パッケージとして指定できます。 検索を実行すると、MSDNでこのページが見つかりました。 値1は、パッケージが直接開始されることを意味します。値0は、パッケージがパッケージ実行タスクで別のパッケージによって開始されることを意味します。デフォルト値は1です。 このフラグを有効または無効にすると、パッケージを直接実行できました。 このフラグを有効または無効にする目的は何ですか?自分のSSISパッケージの意図を文書化するだけなのか、それともSQL Server / SSISが有効または無効になったときの動作が異なるのか?

1
認識されないシステムプロセス飽和CPU
プライマリサイトの帯域幅がなくなったため、本日、バックアップDCに切り替えました。 最も強力なDBサーバーで問題が発生しています。サーバー上のいくつかのデータベースについて、次のプロセスを生成しています。1つのデータベースは、メンテナンスツールに使用される小さなスクラッチデータベースであり、複製またはミラーリングされません。 誰かが次のコードを知っているか、認識していますか? () select table_id, item_guid, oplsn_fseqno, oplsn_bOffset, oplsn_slotid from [<dbname>].[sys].[filetable_updates_2105058535] with (readpast) order by table_id

3
SQL Server Management Studio Expressをスタンドアロンでインストールできますか?
リモートデータベースに接続するために、SQL Server Management Studio Express(主にMicrosoft SQL Server用)がスタンドアロンマシン(SQLサービスやその他のものなし)にインストールされているかどうか疑問に思っていましたか? SQL Server 2012を実行しています。特定のユーザーがクエリを実行したり、データベースを更新したりするためのWeb UIを作成することを望んでいると、マネージャーの1人から言われました。これは私のPHPの能力の範囲内です。しかし、私は簡単にするために考えていました。サーバー管理者には多くの時間を要しますが、データベースに接続/管理するためにSMSEをネットワークマシンにインストールするので、Web UIの必要性をなくすことができますか? これは可能ですか?または、スキーマやテーブルなどを表示するWebUIを作成するという面倒なタスクを実行する必要があります。

1
データベースコピーウィザードの使用中にタイムアウトでエラーが発生しました
マイクロソフトは、SQL Server 2012データベースコピーウィザードがSQL Server 2000データベースをSQL Server 2012にコピーする最も最適な方法であると私に信じさせました。数時間苦労した後、いくつかの問題を乗り越えることができ、中規模のSQL Server 2000データベースからSQL Server 2012へ。 ただし、30GBデータベースの場合、ウィザードは次のエラーで常に失敗します。 メッセージ:データの転送中にエラーが発生しました。詳細については、内部の例外を参照してください。 StackTrace:Microsoft.SqlServer.Management.Smo.Transfer.TransferData() at Microsoft.SqlServer.Dts.Tasks.TransferObjectsTask.TransferObjectsTask.TransferDatabasesUsingSMOTransfer() InnerException->タイムアウト。操作が完了する前にタイムアウト期間が経過したか、サーバーが応答していません。 CREATE DATABASEが失敗しました。リストされている一部のファイル名を作成できませんでした。関連するエラーを確認してください。 StackTrace: System.Data.SqlClient.SqlConnection.OnError(SqlException exception、Boolean breakConnection) at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning() System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior、SqlCommand cmdHandler、SqlDataReader dataStream、BulkCopySimpleResultSet bulkCopyHandler、TdsParserStateObject stateObj)で 私は再確認しましたが、ファイルパス、権限、またはディスク容量の問題ではありません。このCREATE DATABASEステップには2分ほどかかると思います。ウィザードは操作がタイムアウトしたと想定します。SQLを使用して同じファイルパスとファイルサイズで空のデータベースを手動で作成しましたが、うまくいきました。興味深いことに、1GBのデータベースコピーは同じエラーで失敗し、2回目の試行で成功しました。 助けてください。

2
可用性グループは、スケジュールされたジョブとSSISパッケージでどのように機能しますか?
AlwaysOn可用性グループのデータベースを使用して2つのSQL Serverをセットアップしています。 また、データベースに対して実行するジョブを設定しています。フェイルオーバー中に、セカンダリサーバーでジョブが引き続き実行されるようにするにはどうすればよいですか?ジョブとSSISパッケージを両方のマシンにインストールし、セカンダリマシンで手動で無効にする必要がありますか?フェイルオーバーの場合は手動で有効にしますか?またはこれを処理するための組み込み機能はありますか?

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