SE の雑記

SQL Server の情報をメインに Microsoft 製品の勉強内容を日々投稿

Archive for the ‘SQL Server’ Category

データ読み取りと CPU の利用について

leave a comment

最近のハードウェアはディスク性能が向上して、ディスク I/O がネックになることも少なくなってきたかと思います。
ディスクが高速になることで大量のデータを短時間で読み取れるようになりましたが、その分負荷が CPU に表れてくることになったかと。

簡単にではありますがこの辺のデータをとってみたいと思います。

Read the rest of this entry »

Written by Masayuki.Ozawa

6月 5th, 2014 at 8:41 am

Posted in SQL Server

Tagged with

SQL Server 2012 以降で実行プランから並列化されていない理由を確認

leave a comment

最近、実行プランを見ていて気づいたのですが、SQL Server 2012 以降では実行プランに [NonParallelPlanReason] という情報が増えていたようです。

詳細については、SQL Server 2012 Execution Plan’s NonParallelPlanReason が参考になります。

Read the rest of this entry »

Written by Masayuki.Ozawa

6月 4th, 2014 at 8:30 am

Posted in SQL Server

Tagged with

PowerShell から SQLCMD.exe で SQL を実行

leave a comment

PowerShell から SQL Server に SQL を実行する場合、データベース エンジン PowerShell を使用することがあるかと思います。

ほかにも System.Data.SqlClient を使用した方法 (Windows PowerShell: Windows PowerShell からデータベースにアクセスする) や、SQLSMO を使用した方法 (Using PowerShell with SQL Server Management Objects (SMO)) もあります。

今回は、データベースエンジン PowerShell の Invoke-Sqlcmd を sqlcmd.exe に置き換えた際のメモを。
以下の情報を参考にさせていただいています。

SQL2005のSQLCMDオプションについて質問
Passing varibles with special characters and or embedded spaces in powershell 2.0 with SQL Server
How to stop the “Changed database context to …” message

Read the rest of this entry »

Written by Masayuki.Ozawa

5月 27th, 2014 at 8:29 am

Posted in PowerShell,SQL Server

Tagged with ,

SQLCMD を使用して DB 単位の件数をテキストファイルに取得する

leave a comment

PowerShell や SQLSMO を使用したスクリプトを作成すればよいと思うのですが古い環境などでもどうさせる必要があったので、SQLCMD で実行する方法を。

とはいってもバッチ用実行用のコマンドラインを生成しているだけですが。

Read the rest of this entry »

Written by Masayuki.Ozawa

5月 14th, 2014 at 10:47 pm

Posted in SQL Server

Tagged with

SQL Server 2014 の BLOB ストレージへの配置を使用したデータベースのアタッチ

leave a comment

以前、SQL Server 2014 のデータベースのファイルを BLOB に配置する構成について という投稿をしました。
この投稿ではデータベースを作成するパターンで記載したのですが、BLOB ストレージへの配置はデータベースのデタッチ/アタッチ方式でも使用することができます。

今回の投稿ではこの方法をまとめてみたいと思います。

技術情報については レッスン 6: 内部設置型のソース コンピューターから Windows Azure のターゲット コンピューターにデータベースを移行する が参考になります。

Read the rest of this entry »

Written by Masayuki.Ozawa

5月 11th, 2014 at 10:18 pm

Posted in SQL Server

Tagged with ,

SQL Server 2014 の管理対象バックアップと SQL Server Agent

leave a comment

SQL Server 2014 では管理対象バックアップ (マネージバックアップ) という機能が追加されています。
SQL Server 2012 SP1 CU2 以降では、BLOB ストレージへバックアップを取得することが可能となりました。
SQL Server 2014 ではこの機能が強化され、GUI やメンテナンスプランから設定が可能となりましたが、それに加えて管理対象バックアップという機能が追加されました。
# 以前は Smart Admin Backup といわれていたような。

Windows Azure への SQL Server マネージ バックアップ

Read the rest of this entry »

Written by Masayuki.Ozawa

5月 8th, 2014 at 12:37 pm

Posted in SQL Server

Tagged with ,

待ち事象を時系列で解析するためのデータを取得する

leave a comment

SQL Server の待ち事象は sys.dm_os_wait_stats / sys.dm_os_latch_stats というような動的管理ビューを利用して確認することができます。

パフォーマンスモニターの SQL Server: Wait Statistics からも確認をすることができますが、こちらは一部の項目しか取得することができません。

一時テーブルや PowerShell 等を使用すれば定期的に DMV の情報を出力するということもできますが、環境に依存せずに SSMS だけで実行するための方法をまとめてみたいと思います。

Read the rest of this entry »

Written by Masayuki.Ozawa

4月 23rd, 2014 at 12:16 pm

Posted in SQL Server

Tagged with

SQL Server の状態を取得する際に取得しておきたいパフォーマンスモニター

leave a comment

案件として、SQL Server の診断を実施させていただくことがあるのですが、その際にはパフォーマンスモニターの情報を取得して解析することがあります。

詳細については DELL (もともとは Quest の資料) が公開している SQL Server Perfmon Counters Poster が参考になりますが、私が取得している情報をメモとして。

Read the rest of this entry »

Written by Masayuki.Ozawa

4月 22nd, 2014 at 5:27 pm

Posted in SQL Server

Tagged with

PowerShell で SQL Server がバックアップ/リストア中かを取得してみる

leave a comment

PowerShell で SQL Server がバックアップ/リストア中かを取得するサンプルです。
サービスやサーバーの停止をする際に処理が実行されているかを判断するのに使えるかなと思います。

Read the rest of this entry »

Written by Masayuki.Ozawa

4月 13th, 2014 at 1:24 pm

Posted in PowerShell,SQL Server

Tagged with ,

SQL Server 2014 のデータベースのファイルを BLOB に配置する構成について

one comment

SQL Server 2014 ではデータベースのファイルを Microsoft Azure の BLOB ストレージに配置することができるようになりました。

以前、[SQL Server 2014 CTP2]Azure 連携の強化 という投稿で少し触れたのですが、RTM 版でまとめてみたいと思います。

技術情報としては Windows Azure 内の SQL Server データ ファイル になるかと。

Read the rest of this entry »

Written by Masayuki.Ozawa

4月 8th, 2014 at 11:39 pm

Posted in SQL Server

Tagged with