Recommended
PPTX
Sql server のバックアップとリストアの基礎
PPTX
PPTX
ここからはじめる SQL Server の状態取得
PDF
Sql server エンジニアに知ってもらいたい!! sql server チューニングアプローチ
PDF
SQL Server運用実践 - 3年間80台の運用経験から20の教訓
PDF
待ち事象から考える、Sql server の改善ポイント
PDF
PPTX
Sql server これだけはやっておこう 最終版
PDF
PDF
単なるキャッシュじゃないよ!?infinispanの紹介
PDF
A24 SQL Server におけるパフォーマンスチューニング手法 - 注目すべきポイントを簡単に by 多田典史
PDF
SQL Server パフォーマンス問題対処 Deep Dive
PDF
PDF
[DI12] あらゆるデータをビジネスに活用! Azure Data Lake を中心としたビックデータ処理基盤のアーキテクチャと実装
PDF
Sql server 2016 always on 可用性グループ new features
PDF
Always on 可用性グループ 構築時のポイント
PDF
[D11] SQL Server エンジニアに知ってもらいたい!! SQL Server チューニングアプローチ by masayuki ozawa
PPTX
PDF
C34 Always On 可用性グループ 構築時のポイント by 小澤真之
PDF
PostgreSQLレプリケーション10周年!徹底紹介!(PostgreSQL Conference Japan 2019講演資料)
PPTX
大量のデータ処理や分析に使えるOSS Apache Spark入門(Open Source Conference 2021 Online/Kyoto 発表資料)
PDF
PDF
PDF
Azure Backup と Azure Site Recovery
PDF
PDF
PDF
PDF
[B31,32]SQL Server Internal と パフォーマンスチューニング by Yukio Kumazawa
PDF
Sql server 2012 の新機能を使ってみよう。db 管理者向け機能の紹介
PDF
More Related Content
PPTX
Sql server のバックアップとリストアの基礎
PPTX
PPTX
ここからはじめる SQL Server の状態取得
PDF
Sql server エンジニアに知ってもらいたい!! sql server チューニングアプローチ
PDF
SQL Server運用実践 - 3年間80台の運用経験から20の教訓
PDF
待ち事象から考える、Sql server の改善ポイント
PDF
PPTX
Sql server これだけはやっておこう 最終版
What's hot
PDF
PDF
単なるキャッシュじゃないよ!?infinispanの紹介
PDF
A24 SQL Server におけるパフォーマンスチューニング手法 - 注目すべきポイントを簡単に by 多田典史
PDF
SQL Server パフォーマンス問題対処 Deep Dive
PDF
PDF
[DI12] あらゆるデータをビジネスに活用! Azure Data Lake を中心としたビックデータ処理基盤のアーキテクチャと実装
PDF
Sql server 2016 always on 可用性グループ new features
PDF
Always on 可用性グループ 構築時のポイント
PDF
[D11] SQL Server エンジニアに知ってもらいたい!! SQL Server チューニングアプローチ by masayuki ozawa
PPTX
PDF
C34 Always On 可用性グループ 構築時のポイント by 小澤真之
PDF
PostgreSQLレプリケーション10周年!徹底紹介!(PostgreSQL Conference Japan 2019講演資料)
PPTX
大量のデータ処理や分析に使えるOSS Apache Spark入門(Open Source Conference 2021 Online/Kyoto 発表資料)
PDF
PDF
PDF
Azure Backup と Azure Site Recovery
PDF
PDF
PDF
PDF
[B31,32]SQL Server Internal と パフォーマンスチューニング by Yukio Kumazawa
Viewers also liked
PDF
Sql server 2012 の新機能を使ってみよう。db 管理者向け機能の紹介
PDF
PDF
SQL Server 現状診断サービス ご紹介資料
PDF
SQL Server 簡易診断サービス ご紹介資料
PPTX
PPTX
Sql server 2016 ctp 3.0 新機能
PDF
A25 sql server data page structure deep dive
PDF
[db tech showcase Sapporo 2015] A26:SQL Server Data Page Structure Deep Dive ...
PPTX
PPTX
PDF
Global Knowledge Training Courses & Promotion 2015-Sep
PPT
Trabalhando com o Moodle e a Comunidade
KEY
FRT Vol. 5 クラウド時代の企業アプリケーションとマーケティング
PDF
STelligence Savvius Thai Datasheet
Similar to Sql server 構築 運用 tips
PDF
[C14] ソーシャル ゲーム基盤を支える SQL Server by Takashi Inaba
PDF
C11,12 SQL Server 2012 Performance Tuning by Yukio Kumazawa
PDF
SQL Beginners Day #1 - SQL Server および Azure SQL のインストールと管理
PDF
Share pointを支えるsql server2014最新情報 tokyo_公開用
PDF
PDF
Sql serverインデックスの断片化と再構築の必要性について
PPTX
オンプレでもクラウドでも データベースサーバの運用
PPT
SQL Azure Management and Security
PDF
COD2012 T2/T3 : 実機で試す SQL Server の現状取得 ハンズオンマニュアル
PDF
C25 SQL Server 2012 概要と Microsoft の Self-Service BI by Tsuyosi Kitagawa
PDF
C12 AlwaysOn 可用性グループとデータベースミラーリングのIO特製の比較 by 多田典史
PPTX
DXの加速化に力を与えるSQL Serverのモダナイズのオプションを一挙にご紹介
PDF
S08 Microsoft Azure SQL Server の活用 (IaaS 環境における設定や運用)
PDF
オンプレのDbaがazureのデータベースを使ってみた
PDF
PPTX
開発者の方向けの Sql server(db) t sql 振り返り
PDF
[db tech showcase Tokyo 2017] D21: ついに Red Hat Enterprise Linuxで SQL Serverが使...
PDF
Sql server data store data access internals
PDF
Sql database 基本構成と直近で追加されていた機能の紹介
PDF
C13 SQL Server2012知られざるTips集 by 平山理
More from Masayuki Ozawa
PDF
db tech showcase 2019 SQL Database Hyperscale 徹底分析 - 最新アーキテクチャの特徴を理解する
PDF
db tech showcase 2019 SQL Server 2019 最新情報 - SQL Serverの進化をまとめてお届け!
PDF
Sql database managed instance overview and internals
PDF
Power apps formula cheat sheet
PDF
K8s install (single cluster)
PDF
de:code 2018 DA06 SQL Server 管理者におくる SQL Server on Linux Tips
PDF
PDF
PDF
Windows エンジニア向け sql server on linux のためのスキルアップデート
PDF
Dal001 sql server 2017 事始め ~ 進化を続ける sql server の最新情報を一挙紹介
PDF
Linux 対応だけじゃない!! sql server 2017 こんな機能が追加されています。
PDF
PDF
Data consistency 入門 data partitioning ガイダンス
PDF
Oracle と sql server 比べてみよう (sql server)
PDF
PDF
Sql serverデータアクセスの基本動作。荒ぶった方法で確認してみよう
Sql server 構築 運用 tips 1. 2. 自己紹介
System Center User Group Japan 12第 回勉強会2
フリーランスエンジニアとして SQL Server の案件を中心
に従事しています
案件等で協力できることがありましたらお声掛けいただけると幸いです
「SQL Server 現状診断」による SQL Server 稼働状況の報告書作成
SQL Server に関してのオンサイト / オフサイトでの技術支援
コミュニティやブログで SQL Server の情報を発信
コミュニティ活動
SQL Server : SQLTO (http://sqlto.net)
Azure : JAZUG (http://r.jazug.jp/)
ブログ : SE の雑記 (http://blog.engineer-memo.com)
Twitter : @Masayuki_Ozawa
2015/04/18
3. 4. SQL Server 構築 Tips
2015/04/18System Center User Group Japan 12第 回勉強会4
5. 使用する SQL Server の言語
2015/04/18System Center User Group Japan 12第 回勉強会5
インストールする SQL Server の言語
英語版はすべての言語でインストールが可能
それ以外の言語
ローカライズされた OS (例 : 日本語版)
MUI (例 : 日本語言語パック) をインストールした英語版 OS
SQL Server の言語の差による機能差は基本的にないが…
CU で追加された SSMS の機能が英語版でないと動作しないケースが
稀にある
例 : SQL Server 2014 CU5 の SQL Database v12 の GUI 対応
SQL Server のローカル言語版
https://msdn.microsoft.com/ja-jp/library/ee210665.aspx
6. インストールパラメーター
2015/04/18System Center User Group Japan 12第 回勉強会6
インストール時には構成ファイル (ConfigurationFile.ini)が内部で自動作成され
ている
C:¥Program Files¥Microsoft SQL Server¥120¥Setup Bootstrap¥Log
無応答セットアップ / 他の環境でどのようにインストールされたかを確認す
る場合に利用できる
7. インストール時に意識しておきたいポイント
2015/04/18System Center User Group Japan 12第 回勉強会7
.NET Framework 3.5
インターネット非接続環境では、OS インストールメディアを代替ソースパスに指定
インストールパス
インスタンス ルート ディレクトリ : SQL Server のバイナリをインストールするディレクトリ
バージョンによっては、ベアメタル回復用のバックアップで上記ディレクトリが含まれる
共有機能ディレクトリ : SSMS 等の共有機能のバイナリをインストールするディレクトリ
データ ルート ディレクトリ : システムデータベース / ERRORLOG / SQL Server Agent ログが出力される
インスタンス
既定のインスタンス (TCP:1433)
名前付きインスタンス (動的ポート)
SQL Server Browser サービスは動的ポートを解決するためのサービス (UDP:1434)
照合順序
製品のよっては特定の照合順序を使用する必要がある
日本語版 OS (システムロケール : 日本語) のデフォルトは Japanese_CI_AS
英語版 OS のデフォルトは SQL_Latin1_General_CP1_CI_AS
8. 照合順序
2015/04/18System Center User Group Japan 12第 回勉強会8
内容の照合 (文字列の比較 / ソート) や非 Unicode データの文字コードを指定する設定
照合順序が異なると列の評価 (結合等)でエラーとなるケースがある
サーバー (インスタンス) レベルの照合順序
インストール時にのみ設定可能
変更するためにはシステムデータベースの再構築が必要
システムデータベース (master/model/msdb/tempdb) の照合順序に利用される
サーバーの照合順序の設定または変更
https://technet.microsoft.com/ja-jp/library/ms179254(v=sql.120).aspx
データベースレベルの照合順序
ユーザーデータベース個別に設定が可能
SQL Server 2012 以降は包含データベースにより、一時オブジェクトを tempdb の照合順序ではなく
ユーザーデータベースの照合順序で利用可能
列レベルの照合順序
特定の列のみ大文字 / 小文字を区別するというような指定が可能
9. 照合順序の影響の解消
2015/04/18System Center User Group Japan 12第 回勉強会9
SQL Server 2012 以降では、包含データベースを利用することで、
インストール時の照合順序の影響を緩和
包含データベースの照合順序
https://msdn.microsoft.com/ja-jp/library/ff929080.aspx
アイテム 非包含データベース 包含データベース
ユーザー データ (既定値) DATABASE_DEFAULT DATABASE_DEFAULT
一時データ (既定値) TempDB の照合順序 DATABASE_DEFAULT
メタデータ DATABASE_DEFAULT / CATALOG_DEFAULT CATALOG_DEFAULT
一時的なメタデータ tempdb の照合順序 CATALOG_DEFAULT
変数 インスタンスの照合順序 CATALOG_DEFAULT
Goto ラベル インスタンスの照合順序 CATALOG_DEFAULT
カーソル名 インスタンスの照合順序 CATALOG_DEFAULT
10. 累積修正プログラム
2015/04/18System Center User Group Japan 12第 回勉強会10
2 か月単位で累積修正プログラム (Cumulative Update) が提供されている
構築時に、最新の CU を適用するかを検討する (4/16 時点の最新)
SQL Server 2014 SP1 ( Non SP の CU1 ~ CU5 の修正含む)
SQL Server 2014 CU6
SQL Server 2012 SP2 CU5
SQL Release Services Blog
http://blogs.msdn.com/b/sqlreleaseservices/
技術情報
SQL Server 2012
Non SP : KB2692828 / SP1 : KB2772858 / SP2 : 2983249
SQL Server 2014
Non SP / SP1 : KB2936603
英語版で確認しないと最新の修正プログラムが記載されていないことがあるので注意
11. ディスク構成
2015/04/18System Center User Group Japan 12第 回勉強会11
高負荷な SQL Server ではディスク構成も検討する
パターン 1
E ドライブ : システムデータベース + ユーザーデータベース (データファイル)
F ドライブ : ユーザーデータベース (ログファイル)
パターン 2
F ドライブ : システムデータベース
F ドライブ : ユーザーデータベース (データファイル)
G ドライブ : ユーザーデータベース (ログファイル)
パターン 3
E ドライブ : システムデータベース
F ドライブ : tempdb
G ドライブ : ユーザーデータベース (データファイル)
H ドライブ : ユーザーデータベース (ログファイル)
12. ディスク性能の考慮の例
2015/04/18System Center User Group Japan 12第 回勉強会12
SQL Database を例とした性能の考慮
1 セッションで、連続した 10,000 件の単純 INSERT
この時のトランザクションログの書き込み待ちの状態
DTU waiting_tasks_count wait_time_ms max_wait_time_ms signal_wait_time_ms 平均 処理時間
Basic 5 10,010 70,845 6,144 449 7.1 ミリ秒 1:13
S0 10 10,028 58,606 452 495 5.8 ミリ秒 1:03
S1 20 10,116 62,560 4,504 842 6.1 ミリ秒 1:03
S2 50 10,039 74,650 1,107 1838 7.4 ミリ秒 1:16
S3 100 10,010 65,998 1,513 414 6.6 ミリ秒 1:08
P1 100 47 146 268 4 - 0:18
P2 200 127 194 125 38 - 0:26
P3 1,000 31 98 8 2 - 0:22
13. ディスクの設定
2015/04/18System Center User Group Japan 12第 回勉強会13
アロケーション ユニット サイズの推奨は 64KB
fsutil fsinfo ntfsinfo <ドライブレター>
OLTP ではストライプサイズ 64KB / DWH 256KB を推奨
Azure Virtual Machines における SQL Server のパフォーマンスに関するベスト プラクティス
https://msdn.microsoft.com/ja-jp/library/azure/dn133149.aspx
14. SQL Server の設定
2015/04/18System Center User Group Japan 12第 回勉強会14
細かなパラメーターチューニングをしなくても、ある
程度動作する
そういう製品思想なので細かなパラメーター設定をしなく
てもある程度の性能で動作する
一般的に変更する設定
ローカル セキュリティー ポリシー (secpol.msc)
ユーザー権利の割り当て
SQL Server サーバー構成オプション
トレースフラグ
15. 16. サービスアカウントの変更
2015/04/18System Center User Group Japan 12第 回勉強会16
サービスアカウントは必ずSQL Server 構成マネージャーから変更
MMC のサービス (Services.msc) からは実施しない
SQL Server 構成マネージャーから変更しないと、サービスアカウント
に適切な権限が付与されず、サービスが正常に起動しない恐れがある
SQL Server のサービス開始アカウントの変更 (SQL Server 構成マネージャー)
https://msdn.microsoft.com/ja-jp/library/ms345578.aspx
SQL Server 2000 の SQL Enterprise Manager または SQL Server 2005 の SQL
Server 構成マネージャを使用せずに SQL Server または SQL Server エージェン
ト サービスのアカウントを変更する方法
https://support.microsoft.com/en-us/kb/283811/ja
17. サーバー名の変更
2015/04/18System Center User Group Japan 12第 回勉強会17
SQL Server では内部にサーバー名を保持しており、OS のサーバー名を
変更する場合は SQL Server としてもサーバー名を変更する必要がある
sp_dropserver <old_name>;
GO
sp_addserver <new_name>, local;
GO
SQL Server のスタンドアロン インスタンスをホストするコンピューターの名前変更
https://technet.microsoft.com/ja-jp/library/ms143799.aspx
18. SQL Server 運用 Tips
2015/04/18System Center User Group Japan 12第 回勉強会18
19. 20. 起動
2015/04/18System Center User Group Japan 12第 回勉強会20
正常に起動しない場合は、sqlservr.exe を最小構成オプション (-f) を使用
して起動できるかを確認
データベース エンジン サービスのスタートアップ オプション
https://msdn.microsoft.com/ja-jp/library/ms190737.aspx
SQL Server のインスタンス (sqlservr.exe) を起動する方法
https://technet.microsoft.com/ja-jp/library/ms180965.aspx
ERRORLOG を確認することで起動時のログを確認することができる
21. 22. バックアップ
2015/04/18System Center User Group Japan 12第 回勉強会22
復旧モデルに応じて適切なバックアップを設定する
完全と一括ログを使用する場合、定期的なログバックアップは必須
定期的なログバックアップを行わないとログファイルが肥大化する
初回の完全バックアップ以降にログが蓄積されていくので検証時は注意
本番環境での単純での運用は必ずしも悪いことではない
バックアップ取得時点に復元できればよいのであれば単純で運用可能
復旧モデル 完全バックアップ 差分バックアップ ログバックアップ
完全 ○ ○ ○
一括ログ ○ ○ ○
単純 ○ ○ -
23. 24. バックアップ間隔の例
2015/04/18System Center User Group Japan 12第 回勉強会24
パターン 1
完全バックアップ : 毎週 1 回
差分バックアップ : 完全バックアップを取得する曜日以外
ログバックアップ : 1 時間間隔
パターン 2
完全バックアップ : 毎日 1 回
ログバックアップ : 1 時間間隔
パターン 3
完全バックアップ : 毎日 1 回
パターン 3 は単純を使用している場合のみ適用可能
25. 臨時バックアップの取得
2015/04/18System Center User Group Japan 12第 回勉強会25
バックアップチェーンを崩さないようにバックアップを取得
COPY_ONLY バックアップ を使用することで、臨時バックアップを取得
コピーのみのバックアップ (SQL Server)
https://msdn.microsoft.com/ja-jp/library/ms191495.aspx
完全バックアップ
差分バックアップ
差分バックアップ
臨時バックアップ
26. バックアップ圧縮の利用
2015/04/18System Center User Group Japan 12第 回勉強会26
SQL Server 2008 R2 以降は Standard Edition でバックアップ圧縮を利用
することが可能
バックアップファイルのサイズ削減
バックアップ時間の削減
バックアップ中の CPU 使用率の上昇
デフォルトの設定では明示的に圧縮を指定する必要がある
27. データメンテナンス
2015/04/18System Center User Group Japan 12第 回勉強会27
インデックスの断片化解消
再構成 : REORGANIZE
オンラインで実施可能
既存のデータ領域を用いてデータを整列
再構築 : REBUILD
Enterprise Edition の場合はオンラインで実施可能
それ以外のエディションでは再構築中はオフラインとなる
新規のデータ領域に整列したデータを作成
Extent Scan Fragmentation の解消にもつながる
インデックスがどれくらいの期間で断片化するかを把握
例) 30 分で断片化するインデックスを 1 時間かけて解消する意味はあるか
28. データメンテナンス
2015/04/18System Center User Group Japan 12第 回勉強会28
統計情報
適切なクエリの実行プランを生成するためには、最新のデータを使用して十分
なデータのサンプリングでの、統計情報の作成が必要となる
インデックスの再構築 (REBUILD) 時には 100% のサンプリングで統計情報が作
成される
手動による統計情報の更新時には WITH FULLSCAN を使用しないと一定のサン
プリングによる統計情報の作成となるので注意
UPDATE STATISTICS <テーブル名>(<インデックス名>) WITH FULLSCAN
EXEC sp_updatestats
統計情報のサンプリングの確認
DBCC SHOW_STATISTICS ('<テーブル名>', '<インデックス名>')
29. 30. メモリ使用量についての考慮
2015/04/18System Center User Group Japan 12第 回勉強会30
よくある監視
メモリの使用量が 90% を超えたら、監視でアラートを投げる
その監視、データベースサーバーでも有益ですか??
Max Server Memory を設定して SQL Server のメモリ割り当ての上限を指定
サーバー メモリに関するサーバー構成オプション
https://msdn.microsoft.com/ja-jp/library/ms178067.aspx
データベースサーバーは可能な限りメモリにキャッシュする
これを考慮して、メモリ使用量の監視を行う
メモリ使用量が閾値を超えた→ さて、何をしましょう…。
31. ポート / サービス 監視
2015/04/18System Center User Group Japan 12第 回勉強会31
ポート監視
既定のインスタンス : TCP 1433
TCP 1434 (データベース管理者用の診断接続 :DAC)
名前付きインスタンス : 動的ポート (起動のたびにポートが変わる)
SQL Server Browser (UDP 1434) は名前付きインスタンスのポート番号を解決するためのサー
ビスであるため、既定のインスタンス / 名前付きインスタンスをポートを固定して、ポート
番号指定で接続する場合は起動していなくても影響はない
サービス監視
既定のインスタンス : MSSQLSERVER
名前付きインスタンス : MSSQL$<インスタンス名>
プロセスとしてはどちらも sqlservr.exe
可能であればサービスの正常起動の確認
例) SELECT 1 を定期的に実行
32. ERRORLOG
2015/04/18System Center User Group Japan 12第 回勉強会32
デフォルトでは 6 世代分作成される
SQL Server のサービスの起動時にローテーションされる
長期間起動しているサーバーでは ERRORLOG ファイルが肥大化する
世代数は最大で 99 まで変更可能
手動でローテーションすることが可能
sp_cycle_errorlog (Transact-SQL)
https://msdn.microsoft.com/ja-jp/library/ms182512.aspx
SQL Server のエラー ログの数を増やす方法
https://support.microsoft.com/en-us/kb/196909/ja
33. メンテナンスジョブのクリーンアップ
2015/04/18System Center User Group Japan 12第 回勉強会33
以下の情報のクリーンアップを検討する
バックアップ情報
SQL Server エージェントジョブ履歴
メンテナンスタスクのログファイル
メンテナンスプランの履歴 クリーンアップ タスク / メンテナンス クリーン
アップ タスクを有効に活用する
履歴 クリーンアップ タスク
バックアップおよび復元の履歴
SQL Server エージェント ジョブ履歴
メンテナンス プランの履歴
メンテナンス クリーンアップ タスク
バックアップファイル
メンテナンス プラン テキスト レポート
34. まとめ
2015/04/18System Center User Group Japan 12第 回勉強会34
構築
構築時にしか設定できない設定できない項目を把握
インスタンスレベルの照合順序
ディスクのアロケーションユニットサイズ
サービスの再起動を伴う設定かどうかを考慮
運用
復旧モデルに応じた適切なバックアップ
データメンテナンスの必要性
目的に適した監視が行える設定となっているか