sql >> データベース >  >> RDS >> Database

一般的なデータベースサーバーの構築と展開の手順

    新しいSQLServerインスタンスの標準化されたビルドチェックリストを用意しておくと、SQL Serverをインストールし、更新して、適切に構成するときに、重要な手順や構成設定を忘れないようにすることができます。これは、SQLServerインスタンスから最高のパフォーマンスとスケーラビリティを確実に引き出すために非常に重要です。

    私のPluralsightコースであるSQLServer2012のインストールと構成では、このプロセスについてさらに詳しく説明します。一般的なフレームワークは次のとおりです。

    1. サーバーをラックに接続してケーブル接続する
      1. 各電源装置が異なる電源回路に接続されていることを確認してください
      2. 可能であれば、ネットワークケーブルが別のネットワークスイッチに接続されていることを確認してください
    2. SQLServerサービスおよびSQLServerエージェントサービス(およびSSIS、SSRS、SSASなどの使用する他のSQL Serverサービス)の通常のドメインアカウントを要求します。
      1. SQL Server 2012のインストール時に、これらのアカウントのユーザー名とパスワードを知っておく必要があります
      2. これらのアカウントで有効期限のないパスワードを使用するようにしてください
    3. サーバーのメインBIOS設定を確認します
      1. ハイパースレッディングとターボブーストを有効にする必要があります
      2. 電源管理はOS制御に設定する必要があります
      3. メモリテストを無効にする必要があります
    4. サーバーにWindowsServer2012 R2StandardEditionをインストールします
      1. 統合されたRAIDコントローラーを備えたRAID1で2つの内部ドライブを使用する
        1. 可能であれば、この目的でSSDを使用することを検討してください
        2. SSDを使用する場合、SSDを最適化する必要はありません
      2. 単一のパーティションを作成します。C:すべてのスペースを使用するドライブ
      3. C:ドライブを使用してWindowsページのファイルサイズを16GBに変更します
      4. Windowsの電源プランを「ハイパフォーマンス」に変更します
        1. サーバーでCPU-Zを実行して、プロセッサがフルスピードで実行されていることを確認します
      5. オプティカルドライブのドライブ文字をZに変更します:
    5. サーバー上のNETBIOS名をサーバーの目的の永続的な名前に変更します
    6. Windows Server2012R2から.NET3.51機能をインストールする
    7. サーバーにMicrosoftUpdateをインストールする
      1. これはWindowsUpdateのスーパーセットです
    8. すべてのMicrosoftおよびWindowsUpdateをサーバーにインストールします
      1. 必要な更新をすべて取得するには、数回のラウンドが必要になる場合があります
    9. C:ドライブを手動で最適化する
      1. デフォルトの週間スケジュールを使用して、C:ドライブの自動最適化を有効にします
      2. 新しいドライブをスケジュールに自動的に追加しないようにします
    10. 正しいDNSとデフォルトゲートウェイ情報を使用して静的IPアドレスを作成します
    11. サーバーを適切なWindowsドメインに参加させます
    12. サーバーでWindowsをアクティブ化する
    13. サーバーに最新バージョンのDellOMSAをインストールします
    14. 最新バージョンのDellServerUpdate Utility(SUU)をダウンロードする
      1. SUUの.isoをマウントし、SUUを実行します
      2. これにより、サーバーの最新のファームウェアとドライバーが確実に使用できるようになります
    15. Dell OMSAを使用して、LUN用のRAIDアレイを作成します
      1. 一度に1つのLUNを作成してから、論理ディスクマネージャに移動してドライブを作成/フォーマットします
        1. こうすることで、どれがどれであるかについて混乱することはありません
        2. アレイとLUNを以下に示す順序で作成します
      2. DellOMSAの一般的なPERC設定
        1. RAID10アレイにインテリジェントミラーリングを使用する
        2. 先読みキャッシュなし
        3. ライトバックキャッシュを有効にする
        4. キャッシュポリシーを有効にする必要があります
        5. 64Kアロケーションユニットを使用する
    16. Windowsの論理ディスクマネージャーを使用して論理ディスクを作成する
      1. OMSAでアレイを作成したら、ディスクマネージャーを開きます
      2. [ディスクの初期化]ダイアログが表示されます
        1. 必ずGPTパーティションスタイルを使用してください
      3. ディスクを初期化したら、ディスクを右クリックして[シンプルボリュームの作成]を選択します

      4. デフォルトを受け入れて、[次へ]をクリックします

      5. 適切なドライブ文字を割り当て、[次へ]をクリックします

      6. アロケーションユニットのサイズを64Kに変更し、ボリュームラベルを正しい名前に変更します
        1. [次へ]をクリック
        2. [完了]をクリックします

    17. 新しい論理ドライブがWindowsエクスプローラーに表示されます
    18. SQL Server 2012をインストールする前に、SQLServerの使用に必要なすべての論理ドライブを作成する必要があります
    19. CrystalDiskMarkを使用して各論理ドライブのパフォーマンスをテストします
    20. SQLIOを使用して各論理ドライブのパフォーマンスをテストします
    21. 各ドライブにこの標準ディレクトリ構造を作成します
      1. データドライブ:SQLData
      2. ログドライブ:SQLLogs
      3. TempDBドライブ:TempDB
      4. バックアップドライブ:SQLBackups
    22. グループポリシーエディター(GPEDIT.MSC)を使用して、SQLServerサービスアカウントにこれらのWindows権限を付与します
      1. ボリュームメンテナンスタスクを実行する
        1. YourDomain \ SQLServerServiceAcct
      2. メモリ内のページをロックする
        1. YourDomain \ SQLServerServiceAcct
    23. SQL Server 2012EnterpriseEditionをインストールします
      1. 保留中の再起動がないことを確認してください。そうしないと、SQLServer2012がインストールされません
      2. このインスタンスに必要なSQLServer2012コンポーネントのみをインストールします
      3. 混合モード認証を使用する
        1. saパスワードを強力なパスワードに設定します
        2. SQL管理者として自分を追加する
        3. 管理者である必要がある他のDBAを追加します
      4. SQLServerサービスアカウントにYourDomain\SQLServerServiceAcctを使用します
        1. パスワードはxxxxxxxxx
        です。
      5. SQLServerエージェントアカウントにYourDomain\SQLServerAgentAcctを使用します
        1. パスワードはxxxxxxxxx
        です。
      6. SQLServerエージェントサービスを自動起動に設定する
      7. デフォルトのディレクトリを適切なドライブ文字とパスに設定します
        1. ユーザーデータベースディレクトリ:P:\ SQLData
        2. ユーザーデータベースログディレクトリ:L:\ SQLLogs
        3. Temp DBディレクトリ:T:\ TempDB
        4. Temp DBログディレクトリ:T:\ TempDB
        5. バックアップディレクトリ:N:\ SQLBackups
    24. SQL Server 2012 ServicePack1をインストールする
      1. またはSQLServer2012用の最新リリースのServicePack
    25. SQL Server 2012 ServicePack1の累積的な更新プログラム6をインストールする
      1. 累積的な更新は、次の場所から入手できます。
        1. http://support.microsoft.com/kb/2874879/en-us
        2. 必ずx64バージョンの更新パッケージを入手してください
      2. インストール後にC:ドライブを手動で最適化する
        1. SSDを使用している場合、これは必要ありません
    26. SQLServer2012のインスタンスレベルのプロパティを変更する
      1. アドホックワークロードの最適化を有効にする
        1. これにより、SQL Serverは、アドホッククエリプランを最初に実行するときに保存するために使用するメモリを減らすことができます。
      2. 最大並列度をサーバー上のNUMAノードの物理コアの数に設定します
      3. デフォルトのバックアップ圧縮を有効にする
        1. これにより、すべてのデータベースバックアップにデフォルトでSQLServerバックアップ圧縮が使用されます
      4. SQLServer構成マネージャーの起動オプションとしてトレースフラグ3226を追加します
        1. これにより、SQLServerエラーログへのデータベースバックアップメッセージのログ記録が抑制されます
      5. SQLServer構成マネージャーの起動オプションとしてトレースフラグ1118を追加します
        1. これは、tempdbでの割り当ての競合を軽減するのに役立ちます
      6. インスタンスでデータベースメールを有効にする
        1. これにより、SQLServerがSQLServerエージェントアラートの電子メール通知を送信したり、SQLServerエージェントジョブが失敗した場合に通知を送信したりできるようになります
      7. 最大サーバーメモリを適切なデフォルト以外の値に設定します
        1. この値は、サーバーで使用可能な物理メモリの量によって異なります
          1. インストールされているSQLServerコンポーネントによっても異なります
        2. 値の例を次に示します。
          1. 96GBの合計RAM:最大サーバーメモリを87000に設定します
          2. 64GBの合計RAM:最大サーバーメモリを56000に設定します
          3. 32GBの合計RAM:最大サーバーメモリを27000に設定
      8. T:\TempDBディレクトリに3つの追加のTempDBデータファイルを作成します
        1. すべてのTempDBデータファイルのサイズは4096MBである必要があります
          1. 自動拡張を1024MBに設定
        2. TempDBログファイルは1024MBである必要があります
    27. ドメイン上の別のマシンからSQLServerマシンにpingできることを確認します
    28. SQL Server 2012 Configuration Managerを使用して、インスタンスでTCP/IPが有効になっていることを確認します
    29. 別のマシンでSSMSを使用してリモートでSQLServerインスタンスに接続できることを確認します
    30. インスタンスにSQLServerオペレーターを作成する
      1. 電子メールアドレス[email protected]でDBAdminを使用します
    31. データベースメールが正しく動作していることを確認します
      1. データベースメールを右クリックして、テストメッセージを送信します
    32. データベースメールを使用するようにSQLServerエージェントメールを構成する
    33. 次のエラーに対するSQLServerエージェントアラートを作成します。
      1. YourServerNameアラート– Sev 19エラー:リソースの致命的なエラー
      2. YourServerNameアラート– Sev 20エラー:現在のプロセスで致命的なエラー
      3. YourServerNameアラート– Sev 21エラー:データベースプロセスで致命的なエラーが発生しました
      4. YourServerNameアラート– Sev 22エラー致命的なエラー:テーブルの整合性が疑われる
      5. YourServerNameアラート– Sev 23エラー:致命的なエラーデータベースの整合性が疑われる
      6. YourServerNameアラート– Sev 24エラー:致命的なハードウェアエラー
      7. YourServerNameアラート– Sev 25エラー:致命的なエラー
      8. YourServerNameアラート–エラー825:読み取り-再試行が必要
      9. YourServerNameアラート–エラー832:定数ページが変更されました
      10. YourServerNameアラート–エラー855:修正不可能なハードウェアメモリの破損が検出されました
      11. YourServerNameアラート–エラー856:SQL Serverはハードウェアメモリの破損を検出しましたが、ページを回復しました
    34. これらのSQLServerエージェントアラートを作成するための一般的なスクリプトは、次の場所から入手できます。
      1. 各エージェントアラートにDBAdminオペレーターに通知する応答があることを確認してください
    35. 次のコマンドを実行するNightlyFreeSystemCacheというSQLServerエージェントジョブを作成します。
      1. DBCC FREESYSTEMCACHE('SQLプラン');
      2. 毎晩12:00AMに実行されます
    36. OlaHallengrenのSQLServerメンテナンスソリューションスクリプトの最新バージョンをダウンロードします。
      1. http://ola.hallengren.com/
      2. インスタンスに接続した状態でMaintenanceSolution.sqlスクリプトを開きます
        1. @BackupDirectory変数をN:\SQLBackupsに変更します
        2. スクリプトを実行して、11個の新しいSQLServerエージェントジョブを作成します
        3. ジョブごとに、[通知]プロパティウィンドウに移動し、ジョブが失敗した場合は、ジョブにDBAdminグループに電子メールを送信してもらいます。
        4. ジョブごとに、実行するスケジュールを作成します。
        5. ジョブの推奨スケジュールは次のとおりです。
          1. CommandLogCleanup日曜日の午前12:00
          2. DatabaseBackup – SYSTEM_DATABASES –毎日午後11時55分にフル
          3. DatabaseBackup – USER_DATABASES –DIFF毎日12:00PM
          4. DatabaseBackup – USER_DATABASES –毎日午前12:00にフル
          5. DatabaseBackup – USER_DATABASES – LOG Hourly
          6. DatabaseIntegrityCheck –SYSTEM_DATABASES土曜日の午前7時55分
          7. DatabaseIntegrityCheck –USER_DATABASES土曜日の午前8時
          8. IndexOptimize –USER_DATABASES日曜日の午後8時
          9. 日曜日の午前12:00に出力ファイルのクリーンアップ
          10. sp_delete_backuphistory日曜日の午前12:00
          11. sp_purge_jobhistory日曜日の午前12:00

    1. Ubuntuにsqlcmd&bcpをインストールする方法

    2. SQLServerでクラスター化インデックスまたは非クラスター化インデックスを使用する場合

    3. Oracleの日付の減算-数値または間隔のデータ型?

    4. HA/DRソリューションの自己妄想を避ける