1. 程式人生 > >資料庫伺服器構建和部署最佳實踐

資料庫伺服器構建和部署最佳實踐

17.檢查下,保證新的邏輯驅動器在Windows資源管理器中都能夠看到   18.在安裝SQL Server 2012之前,把所有需要的邏輯驅動器都建立上   19.使用CrystalDiskMark測試每個邏輯驅動器的效能   20.使用SQLIO測試每個邏輯驅動器的效能   21.在每個驅動器上,建立下面的資料夾        資料驅動器:SQLData       日誌驅動器:SQLLogs       TempDB驅動器:TempDB        備份驅動器:SQLBackups   22.使用組策略編輯器(GPEDIT.MSC)將這些Windows許可權授予SQL Server服務帳戶        執行卷維護任務        鎖定記憶體頁面      23.安裝SQL Server 2012企業版        確保沒有待處理的重新引導,否則SQL Server 2012將無法安裝        僅安裝此例項所需的SQL Server 2012元件       C。使用混合模式認證            將sa密碼設定為強密碼           II。將自己新增為SQL管理員           III。新增任何需要成為管理員的其他DBA        對於SQL Server服務帳戶使用域賬戶       使用對應的域賬戶作為SQL Server代理帳戶       F。將SQL Server代理服務設定為自動啟動       G。將預設目錄設定為相應的驅動器號和路徑           I.使用者資料庫目錄:P:\ SQLData           II.使用者資料庫日誌目錄:L:\ SQLLogs           III. Temp DB目錄:T:\ TempDB           IV。 Temp DB日誌目錄:T:\ TempDB           v。備份目錄:N:\ SQLBackups   24.安裝SQL Server 2012最新 Service Pack    25.安裝SQL Server 2012 最新的累積更新6        累積更新可從此位置獲得:            http://support.microsoft.com/kb/2874879/en-us        安裝後手動對C:驅動器進行碎片整理           如果您使用的是SSD,則不需要這樣做 26.更改SQL Server 2012例項級屬性        a. 啟用optimize for ad hoc workloads
          這將允許SQL Server在第一次執行時使用較少的記憶體來儲存臨時查詢計劃        b.設定最大並行度設定為伺服器上NUMA節點中的物理核心數       c.啟用預設備份壓縮            這將為所有資料庫備份預設使用SQL Server備份壓縮        d.在SQL Server配置管理器中新增跟蹤標誌3226作為啟動選項            這將阻止在SQL Server錯誤日誌中記錄成功的資料庫備份訊息       e .在SQL Server配置管理器中新增跟蹤標誌1118作為啟動選項            這將有助於緩解tempdb中的配置爭用       f. 在例項上啟用資料庫郵件            用於SQL Server代理警報和SQL Server代理作業失敗時郵件通知       G。將Max Server Memory設定為適當的非預設值
           值取決於伺服器中可用的實體記憶體量               它還取決於安裝的SQL Server元件           II。以下是一些示例值:               1.96GB總RAM:將最大伺服器記憶體設定為87000               2. 64GB總RAM:將最大伺服器記憶體設定為56000               3. 32GB總RAM:將最大伺服器記憶體設定為27000       H。在T:\ TempDB目錄中額外再建立三個TempDB資料檔案。總共4個tempdb檔案(不需要一開始就和CPU個數對齊)            所有TempDB資料檔案的大小應為4096MB
               將自動增長設定為1024MB            II。 TempDB日誌檔案應為1024MB   27.確認您可以從域上的其他計算機ping通 SQL Server計算機   28.使用SQL Server 2012 Configuration Manager,確認例項啟用了TCP / IP   29.確認您可以使用其他計算機上的SSMS遠端連線到SQL Server例項   30.在例項上建立一個SQL Server操作員        使用DBAdmin與電子郵件地址[email protected]   31.確認資料庫郵件正常執行        右鍵單擊資料庫郵件併發送測試訊息   32.配置SQL Server代理郵件以使用資料庫郵件   33.為以下錯誤建立SQL Server代理警報:       a . YourServerName Alert - Sev 19錯誤:資源中的致命錯誤       b. YourServerName Alert - Sev 20錯誤:當前程序中的致命錯誤       C。 YourServerName Alert - Sev 21錯誤:資料庫程序中的致命錯誤       d。 YourServerName Alert - Sev 22錯誤致命錯誤:表完整性可疑       e. YourServerName Alert - Sev 23錯誤:致命錯誤資料庫完整性可疑       f。 YourServerName Alert - Sev 24錯誤:致命的硬體錯誤       g。 YourServerName Alert - Sev 25錯誤:致命錯誤       h。 YourServerName Alert - Error 825:Read-Retry Required       i。 YourServerName警報 - 錯誤832:常量頁面已更改       j.YourServerName警報 - 錯誤855:檢測到不可糾正的硬體記憶體損壞       k。 YourServerName警報 - 錯誤856:SQL Server已檢測到硬體記憶體損壞,但已恢復該頁面   34.這裡提供了建立這些SQL Server代理警報的通用指令碼:        確保每個代理警報都有響應來通知DBAdmin操作員   35.建立一個名為Nightly Free System Cache的SQL Server代理作業,執行此命令:        DBCC FREESYSTEMCACHE ('SQL Plans');        每天晚上在凌晨12:00執行   36.下載最新版本的Ola Hallengren的SQL Server維護解決方案指令碼:        http://ola.hallengren.com/        連線到例項時開啟MaintenanceSolution.sql指令碼            將@BackupDirectory變數修改為N:\ SQLBackups           II。執行指令碼建立十一個新的SQL Server代理作業           III。對於每個作業,如果作業發生故障,請轉到“通知”屬性視窗,並將作業通過電子郵件傳送給DBAdmin組           IV。對於每個作業,建立一個執行時間的計劃。           v。這是一個建議的工作時間表:               CommandLogCleanup星期日上午12:00               2. DatabaseBackup - SYSTEM_DATABASES - 完整的每日11:55 PM               3. DatabaseBackup - USER_DATABASES - DIFF Daily at 12:00 PM               4. DatabaseBackup - USER_DATABASES - 上午12:00時全天               5. DatabaseBackup - USER_DATABASES - 每小時記錄一次               DatabaseIntegrityCheck - SYSTEM_DATABASES星期六上午7:55               7. DatabaseIntegrityCheck - USER_DATABASES星期六上午8:00               8. IndexOptimize - USER_DATABASES星期日下午8:00               9. 檔案清理 星期日上午12:00               10.sp_delete_backuphistory星期日上午12:00               11.sp_purge_jobhistory 星期日上午12:00。

總結

對於個人認為比較重要的最佳實踐我都用紅色的標註了。不過上面的

啟用超執行緒和turbo-boost 

我覺得要根據客戶的實際情況,如果 客戶的系統能夠用上這些多餘的邏輯CPU,那麼才應該開啟超執行緒。根據經驗通常OLTP系統開啟超執行緒是比較有好處的。但對於某些報表查詢,可能開啟超執行緒反而會有不良影響。

詳細可以參考:https://blogs.msdn.microsoft.com/slavao/2005/11/12/be-aware-to-hyper-or-not-to-hyper/ 

tempdb檔案個數

我們知道增加tempdb資料檔案可以減少PAGELATCH爭用 ,按照以前的最佳實踐是和CPU核心數對齊。但是現在已經做了優化,不需要一來就設定那麼多

MBR and GPT

GPT意為GUID分割槽表。(GUID意為全域性唯一識別符號)。這是一個正逐漸取代MBR的新標準。它和UEFI相輔相成——UEFI用於取代老舊的BIOS,而GPT則取代老舊的MBR。之所以叫作“GUID分割槽表”,是因為你的驅動器上的每個分割槽都有一個全域性唯一的識別符號.在MBR磁碟上,分割槽和啟動資訊是儲存在一起的。如果這部分資料被覆蓋或破壞,事情就麻煩了。相對的,GPT在整個磁碟上儲存多個這部分資訊的副本,因此它更為健壯,並可以恢復被破壞的這部分資訊。GPT還為這些資訊儲存了迴圈冗餘校驗碼(CRC)以保證其完整和正確——如果資料被破壞,GPT會發覺這些破壞,並從磁碟上的其他地方進行恢復。而MBR則對這些問題無能為力——只有在問題出現後,你才會發現計算機無法啟動,或者磁碟分割槽都不翼而飛了.

總之,GPT更先進,更健壯,推薦使用GPT

關於其他選項沒什麼爭議。應該儘量遵守的。

相關推薦

資料庫伺服器構建部署最佳實踐

17.檢查下,保證新的邏輯驅動器在Windows資源管理器中都能夠看到   18.在安裝SQL Server 2012之前,把所有需要的邏輯驅動器都建立上   19.使用CrystalDiskMark測試每個邏輯驅動器的效能   20.使用SQLIO測試每個邏輯驅動器的效能   21.在每個驅動器上,建立下

Oracle數據庫測試優化最佳實踐: OTest介紹 (轉)

1-1 log 數據 bsp 下載 pan alt style 發送 當前Oracle數據庫最佳測試工具OTest * Otest是用於Oracle數據庫測試、優化、監控軟件。 * Otest是免費提供給Oracle客戶和廣大DBA工程師使用的軟件。由原廠技

數據庫服務器構建部署筆記

創建 大服務 阻止 server 戴爾 ror 數據庫日誌 操作系統 diff 1. 機架和電纜服務器 確保每個電源插入不同的電源電路 果可能,請確保網絡電纜已插入不同的網絡交換機 2.SQL Server服務和SQL Server

laravel 上線部署最佳實踐

download 擁有 優先 -s 類型 註意 dex chmod ram nginx 配置 listen 80 default_server; server_name xxxx; index index.php index.html;

Window系統下用Ant實現Java項目的自動構建部署

echo 驗證 TP 地址 apach ava build 部署 系統環境變量 Step 1: 從官網下載Ant包,官網地址http://ant.apache.org/ Step 2: 解壓好了,去配置用戶自定義環境變量【或者系統環境變量】 Step 3:驗證一下自己環境是

個人站點升級持續集成,自動構建部署

lock 快的 標識 mar 根目錄 OS 執行 連接 path 前言 利用markdown+Hexo寫文章,整體體驗已經很棒。在寫作過程中,節省了我不少時間。 但是,美中不足的,就是發布的時候,需要手動輸入命令,build好文件,再用scp部署到服務器上。 本文,用於記錄

使用Leangoo一鍵構建部署DevOps

故事 部署 ops ati 幫助 htm 簡潔 ima 敏捷 先來說一下這個Scrum敏捷開發工具-Leangoo Leangoo(中文名:領歌)是一款基於看板的項目協作工具,完美支持Scrum敏捷開發。它的核心主要是看板,通過看板共享和實時同步團隊工作以實現高效協同!工具

springboot2.x簡單詳細教程--高階篇幅之雲伺服器介紹部署生產環境實戰(第十七章)

一、阿里雲伺服器介紹和使用講解     簡介:阿里雲伺服器介紹和使用講解 1) 2)第一次需要註冊 3)控制檯 二、阿里雲Linux伺服器部署JDK8實戰     簡介:在阿里雲伺

邊緣化搭建DotNet Core 2.1 自動化構建部署環境(上)

寫在前面   寫這篇文章的緣由是由於筆者的對新興技術方向有所追求,但個人資產有限,只能容許購買一臺阿里雲低配1核2G伺服器。伺服器上搭建了 Centos7 & Docker & Jenkins & ASP.NET Core 2.0 自動化釋出和部署 環境後犧牲了大部分效能。

讓天下沒有難用的資料庫 » RDS MySQL空間優化最佳實踐

在前三期介紹了RDS for MySQL引數優化,鎖問題以及延遲優化最佳實踐之後,本期將介紹儲存空間相關的最佳實踐。 儲存空間是RDS很重要的一個指標,在RDS的工單問題中,空間問題的諮詢可以排在top 5,當RDS的實際使用空間超過了購買的空間後,例項就會被鎖定了,這樣就會導致應用無法再寫入,更新

API設計的十大最差五大最佳實踐

那麼作為開發者,除了要學會呼叫API外,是否想過設計自己的API呢?這不,國外媒體給大家總結了10條最差API實踐與開發API的五個最佳實踐,希望各位能在以後的開發道路上少走一些彎路。 十大最差實踐 錯誤處理不完善或者比較差 Rest API忽視HTTP規則 暴露原始底層資料模型 安全複雜性 意

Kubernetes-基於Dockerfile構建docker映象最佳實踐

1、Dockerfile檔案和核心指令在Kubernetes中執行容器的前提是已存在構建好的映象檔案,而通過Dockerfile檔案構建映象是最好方式。Dockerfile是一個文字檔案,在此檔案中的可以設定各種指令,以通過docker build命令自動構建出需要的映象。D

用Ant實現Java專案的自動構建部署

       Ant是一個Apache基金會下的跨平臺的構件工具,它可以實現專案的自動構建和部署等功能。在本文中,主要讓讀者熟悉怎樣將Ant應用到Java專案中,讓它簡化構建和部署操作。 一.安裝與配置 下載地址:http://ant.apache.org/,在本文中下載的是1.7.0版本。解壓到某

Ant詳解(用Ant實現Java專案的自動構建部署)

       Ant是一個Apache基金會下的跨平臺的構件工具,它可以實現專案的自動構建和部署等功能。在本文中,主要讓讀者熟悉怎樣將Ant應用到Java專案中,讓它簡化構建和部署操作。 一.安裝與配置 下載地址:http://ant.apache.org/,在本文

vue專案開發心得一些最佳實踐

使用vue一年多了,做了一個javaee的專案(全棧,前端使用的mvvm框架vue),三個移動端專案,其中兩個釘釘子應用(釘釘的坑很多,心累),一個微信的(ing)。自己也慢慢摸索出一些專案中的最佳實踐,整理了一下,做個記錄一起交流。如果你在閱讀過程中,覺得我某

Netflix如何做構建部署

在程式碼部署到雲端之前,Netflix 是如何做構建的?本篇文章將描述為 Netflix 服務8000萬用戶的微服務,是用什麼工具和技術構建出來的。 上圖描述了在 Netflix 的全球持續

搭建Jenkins自動化持續構建部署系統

什麼是Jenkins? Jenkins是一個持續整合和持續交付的java應用程式,可以處理任何型別的構建或持續整合。整合Jenkins可以用於一些測試和部署技術。簡單得說就是一款自動化構建測試和部署的Java應用程式。 Jenkins的應用場景 簡單的應用場景:在團隊開

瞭解以太坊區塊鏈智慧合約開發從零構建部署去中心化投票

區塊鏈愛好者(QQ:53016353)編輯器選擇理論上講任何編輯器都可以編寫Solidity合約程式碼,比如:WebStorm,VSCode,Sublime,等等。我選擇的是Atom,沒有任何理由,因為Atom輕量並且介面漂亮。移步https://atom.io/地址,下載安

sharepoint 2016 學習系列篇(2)-如何部署sharepoint server 2016(1)-AD域伺服器安裝部署

學習和了解sharepoint,除了在網上或者官網檢視資料之外,當然就是來真真正正體驗它,操作它,來得更加實在。那麼第一步,當然是要知道如何來部署sharepoint server 2016了。 根據以往的經驗,暫時可以簡單的劃分三臺伺服器,一臺是AD域伺服器,一臺是Sql

【機器學習】在生產環境使用Kafka構建部署大規模機器學習

使用Apache Kafka在生產環境構建大規模機器學習智慧實時應用為所有行業帶來了革命性變化。