主頁 > 知識庫 > 新手SqlServer數(shù)據(jù)庫dba需要注意的一些小細(xì)節(jié)

新手SqlServer數(shù)據(jù)庫dba需要注意的一些小細(xì)節(jié)

熱門標(biāo)簽:地方門戶網(wǎng)站 服務(wù)外包 鐵路電話系統(tǒng) 呼叫中心市場需求 Linux服務(wù)器 百度競價(jià)排名 網(wǎng)站排名優(yōu)化 AI電銷

前言:任何的優(yōu)化和修改都是以業(yè)務(wù)情況為前提,可能有的寫的有誤或者不準(zhǔn)確的地方,歡迎各位來拍磚。

1.在創(chuàng)建db的時(shí)候自增長建議設(shè)置成按MB(M)增長,步長根據(jù)業(yè)務(wù)量來設(shè)置,一般情況建議設(shè)置100-200M(見圖片),還有就是盡量別改初始大小,這個(gè)默認(rèn)就好。

  如果按照數(shù)據(jù)文件(mdf)按照默認(rèn)的1m增長,同時(shí)db的業(yè)務(wù)寫入比較頻繁,那數(shù)據(jù)庫就會(huì)頻繁的向磁盤請求空間,會(huì)造成不必要的io消耗,也會(huì)因?yàn)樯暾埧臻g造成資源等待等問題。

  如果把日志文件(ldf)按照默認(rèn)的百分比10%增長,同樣當(dāng)db業(yè)務(wù)量很大或者有大事務(wù)的時(shí)候,日志會(huì)蹭蹭的增長,假如現(xiàn)在日志文件大小是100G,那每次增長步長就是10G,各位可以想一下如果數(shù)據(jù)庫突然像磁盤申請10個(gè)G的空間,那當(dāng)時(shí)的io情況會(huì)是什么樣。

2.建議給系統(tǒng)預(yù)留一些內(nèi)存。根據(jù)內(nèi)存大小預(yù)留(服務(wù)器64g內(nèi)存一般我限制sqlserver到60g,留4個(gè)g給系統(tǒng)用,還是那句話根據(jù)業(yè)務(wù)情況來定)。因?yàn)閟qlserver有一些操作是不消耗系統(tǒng)給sqlserver預(yù)留的內(nèi)存的。比如你的服務(wù)器內(nèi)存是64g,現(xiàn)在sqlserver進(jìn)程占用50g,這時(shí)候如果你做備份操作的時(shí)候,這個(gè)操作消耗的不是sqlserver占用的50g,而是剩余的14g內(nèi)存。還有一些其他的操作也會(huì)占用非sqlserver的內(nèi)存,例如索引重建(這個(gè)記憶模糊了準(zhǔn)確性有待考證)。假如現(xiàn)在sqlserver把64g內(nèi)存都占滿了,這時(shí)候你需要備份,那內(nèi)存從哪來呢?只能讓sqlserver釋放緩存中的一些對象來給你提供備份的內(nèi)存。如果現(xiàn)在業(yè)務(wù)繁忙可能就會(huì)因?yàn)閮?nèi)存不足或者內(nèi)存命中引起性能問題了。

3.profiler是個(gè)好東西,誰用誰知道。

4.windows的性能監(jiān)視器是監(jiān)控sqlserver性能必備的工具(友情提示:快捷鍵是perfmon.msc)。具體監(jiān)控指標(biāo)我會(huì)在其他blog里寫。

5.如果你們機(jī)房的防火墻足夠流弊,程序代碼寫的足夠嚴(yán)謹(jǐn),數(shù)據(jù)庫沒有公網(wǎng)ip,那你可以使用xp_cmdshell這個(gè)存儲(chǔ)過程,否則請關(guān)閉這個(gè)config。

  曾經(jīng)有一臺sqlserver服務(wù)器放在我面前我沒有統(tǒng)一管理,后來我忘了服務(wù)器的登陸密碼。于是我用sa口令登陸這臺數(shù)據(jù)庫,成功的通過xp_cmdshell添加了服務(wù)器管理員賬號,成功的通過這個(gè)管理員賬號登陸了服務(wù)器。本來這應(yīng)該是一個(gè)皆大歡喜的故事,但是你有沒有想過如果別人通過非法程序知道了你的數(shù)據(jù)庫連接串,恰巧你又開啟了xp_cmdshell呢,那么你就可以準(zhǔn)備簡歷了。

6.不要勾選登陸框上邊的保存密碼選項(xiàng)(別問我為什么,任性,就是擔(dān)心某一天我的服務(wù)器被別人登陸了隨便就能進(jìn)數(shù)據(jù)庫了,隨便就刪我數(shù)據(jù)毀我db了怎樣?。。?。

7.如非特殊需求盡量不要用過ssms跨機(jī)器登陸(尤其是當(dāng)你的服務(wù)器不是你一個(gè)人使用的時(shí)候)。比如你在192.168.1.3這個(gè)服務(wù)器上用ssms登陸通過ip賬號密碼192.168.1.4這臺服務(wù)器的db,這是沒問題的,但是當(dāng)你使用完以后盡量養(yǎng)成隨手關(guān)掉這個(gè)連接的習(xí)慣。否則下一個(gè)人或者你自己不注意就會(huì)把想在本機(jī)上執(zhí)行的腳本執(zhí)行到了遠(yuǎn)端的那個(gè)db上。

8.存放db物理文件的路徑盡量別使用默認(rèn)路徑,自己在某個(gè)盤符下建個(gè)命叫db或者data之類的文件夾存放就好,否則找起來是個(gè)很痛苦的事也不方便管理。不要直接建在磁盤的根目錄下,因?yàn)檫@樣有的時(shí)候可能會(huì)涉及到權(quán)限的問題讓你蛋疼好久。如果有2個(gè)磁盤陣列(例如一個(gè)raid10一個(gè)raid0)或者2個(gè)單獨(dú)的物理磁盤,最好將mdf文件和ldf文件分開存放提高io性能(mdf放在raid10上,ldf放在raid0上)。

9.備份數(shù)據(jù)庫的時(shí)候盡量選擇業(yè)務(wù)量最小服務(wù)器負(fù)載最小的時(shí)候,如果可以選擇壓縮備份,節(jié)省磁盤空間(當(dāng)然也會(huì)產(chǎn)生額外的io)。日志備份不用太頻繁也不能太長,視業(yè)務(wù)量和允許丟失數(shù)據(jù)的程度而定。

10.如果這個(gè)實(shí)例下有除了備份以外其他的作業(yè)盡量別選擇整點(diǎn)的時(shí)間跑,往前或者往后錯(cuò)開幾分鐘,因?yàn)橐话愕娜罩緜浞荻紩?huì)選擇間隔一小時(shí)或者多少分鐘,多數(shù)都是整點(diǎn)備份。所以其他的作業(yè)盡量避開這種備份操作的時(shí)間。

11.作業(yè)監(jiān)視器只能看到作業(yè)最后一次執(zhí)行的狀態(tài)。

12.查看sql服務(wù)啟動(dòng)時(shí)間:SELECT LOGIN_TIME FROM MASTER..SYSPROCESSES WHERE SPID= 1

13.不要讓程序使用sa作為數(shù)據(jù)庫連接串,sa的密碼盡可能的復(fù)雜,sa弱口令的危害不用多說吧。

14.查看當(dāng)前數(shù)據(jù)庫連接情況的快捷鍵是crtl+1(sp_who)鎖情況的快捷鍵是ctrl+2(sp_lock),執(zhí)行的快捷鍵是alt+x或者是f5(雖然有快捷鍵但是盡量別用),按win+r鍵調(diào)出來運(yùn)行欄輸入ssms可以打開sqlserver的management studio,選中表按alt+f1可以查看表的屬性(sp_help),新建一個(gè)查詢窗口的快捷鍵是alt+n,這些都是比較常用的快捷鍵,可以方便你的數(shù)據(jù)庫操作。

15.有時(shí)候當(dāng)你新建或者修改一個(gè)表或者字段的以后,你執(zhí)行查詢或者寫出來新建的字段發(fā)現(xiàn)新添加的對象下邊有個(gè)紅線,鼠標(biāo)放上去會(huì)顯示列名無效,對于我這種有輕微強(qiáng)迫癥的人很難受。造成這個(gè)現(xiàn)象的原因是:SQL Server的intellisense(智能感知功能),沒有感知到這項(xiàng)修改,我們可以手動(dòng)的執(zhí)行快捷鍵ctrl+shift+r來重新感知。

大過年的腦子里都被各種吃吃喝喝的填滿了- -暫時(shí)就想起來這么多,以后有想到的再補(bǔ)充,如果有不準(zhǔn)確的或者不明白的地方歡迎各位拍磚。

ps:本blog手打原創(chuàng)轉(zhuǎn)載請注明出處。

標(biāo)簽:蘭州 湘潭 黃山 衡水 湖南 崇左 仙桃 銅川

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《新手SqlServer數(shù)據(jù)庫dba需要注意的一些小細(xì)節(jié)》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266