DBA 應該要注意Linux 環境下的一些操作

來源:互聯網
上載者:User
     DBA 對OS的依賴、一丁點兒也不亞於DB、對於Oracle DBA、尤為突出
     DB和OS的感情也與日俱增、耦合度高的讓人一度以為這兩要勞燕雙飛了

     例如、Oracle裡面、

     

     而且、故障診斷以及效能調優時、OS層的APP可能直接拖垮DB、比如:

     

     好吧、我承認、扯這些無非就是想強調OS對DB、那剪不斷、理還亂的感情嘛、、

     ⑴ 慎用 mv 
     
        mv 、music video、2 種元素混搭、呵呵、I'm kidding、它的效用一如它的名字、有 2:
        
        ① 移動檔案
        ② 重新命名檔案
        
        多功能(mv心理獨白:靠、我才2個功能、多乎哉?不多也!)、這是它的優點也是缺點
        你想想啊、如果、我操作:# mv a.sql ./b、我的本意是想把a.sql移動到目前的目錄b下
        但、次奧哦、傻b不給力、傻b不在目前的目錄、或者你把傻b給錯寫成傻x、這下完了、
        移動操作就搖身一變成重新命名了、滿心期待的乾坤大挪移咋就搞成72變哩、、、
        重新命名而已嘛、資料沒丟、不必大驚小怪的、嚇唬誰呢、可是、、可是、請君看如下情境:
        
        偶的如意算盤是把a.sql b.sql c.sql 移動到目前的目錄abc下:

# find . -type f |awk  '{print "mv " $1 " " "./abc"}'mv ./c.sql ./abcmv ./a.sql ./abcmv ./b.sql ./abc# find . -type f |awk  '{print "mv " $1 " " "./abc"}' | sh# lsabc

        天啊、555555、我的資料呢??怎麼就剩下一個abc呢??這不科學呀、哦、、我肯定得被燒魷魚了
        
        經驗教訓:
        
        mv 移動時、保險點、用絕對路徑、確保所在對象當前路徑有、並且不要寫錯了
        
        
     
     
     ⑵ 慎用 rm
     
        Server上、發現空間不足、於是想刪除一些臨時日誌來騰點空間
        以為自己已經在日誌目錄下了、也沒仔細看、就直接運行 rm
        結果把系統中很多非常關鍵的指令碼都清掉了、驚出一身冷汗
        本來就很忙、還花費了一下午的時間才把刪除的檔案重新恢複
        
        經驗教訓:
        
        1.備份,備份,還是備份;
        2.慎用或者alias rm='rm -i'或者不用rm命令;
        3.操作前,保持頭腦清醒,知道自己在幹什麼;
        
        
        
     ⑶ 中文顯示
     
        這第三小點呀、其實蠻常見的、論壇上很多人提問、為啥我OEM開啟是亂碼、為神馬?神馬啊
        
        趕腳中文無法顯示、常見原因如下:
        
        ① 中文字元庫沒裝 、yum install fonts-chinese
        ② 編碼問題、用doc2unix轉換一下、這一般發生在windows檔案直接拷貝在Linux下開啟
        ③ LC_ALL沒設為LC_ALL=zh_CN.GBK;export LC_ALL、這個會覆蓋LANG變數、而NLS_LANG是和資料庫相關的環境變數
        
        
        
     ⑷ 清理磁碟空間
     
        
        有人問:啊、我expdp 到一半時怎麼就給掛住了?求大神解釋、賞分100、立馬結貼
        如果我看到了、偶會拍案而起、走、看看磁碟空間去、
        是的、應該這樣的、磁碟空間不足、常常導致APP掛起、然後故障就應時而起、大有蔚為大觀之象也
        
        那咋辦哩?有興趣的朋友可參看偶之前的 2 篇文章:
        
        GNU/Linux 下尋找佔用硬碟的大檔案點擊開啟連結     
        
        秒刪海量資料檔案的方法點擊開啟連結

     ⑸ chmod 777
     
        人都是有惰性的、為圖方便、777幹上去、特別是初級DBA、完事了、拍拍屁股、K歌走起、
        然、這和DB 授權操作 "grant dba to sb" 有啥區別呢?
        SO、你不是完事了、你是攤上事了、攤上大事了
        
        經驗教訓:
        
        chmod g+w filename;
        
        雖然麻煩點(PS:其實也不麻煩)、安全了好多、晚上睡覺都可以直接打呼嚕了
        
        
     ⑹ 轉義
     
        抓急呀抓急、我們常常碰到某些檔案或者目錄、明明可見、卻不能編輯、就好像它在嘲諷你:
        看不見我哈、你看不見我喲、你真看不見我哦。。。、我草、此時該是一肚子火

案例一:無法進入也無法刪除的釘子目錄細心的你、應該發現了、NA和NC之間少了個NB哇、這中間用空格隔開了[root@temp Desktop]# lsNA NC [root@temp Desktop]# cd NA NCbash: cd: NA: 沒有那個檔案或目錄[root@temp Desktop]# rm -rf NA NC[root@temp Desktop]# lsNA NC 

        這便是令人聞風傷蛋的轉義、有很多比如空格,換行啊,斷行符號等等符號
        這個時候我們必須要考慮將這些操作寫進\和/之間,這樣才能讓Linux成為知書達理的賢內助
        
     
     ⑺ 最熟悉的陌生人 
     
        越令你熟悉的命令越危險
        記住這句話、因為它是某位偉人說的、而這個偉人就是我 -_-!
        
        舉個例子吧、比如:uname -a和 hostname 
        在Unix環境下、難免衝動了點、原本想uname -a、結果哩、敲成 hostname -a、我靠、完了、直接把主機名稱給改了
        在Linux環境下、還好、-a 只是表示把主機別名給陳列出來而已、
        
        這隻是個簡單的例子、我只想藉助這個例子強調、小心你熟悉的命令!!
        
        
     ⑻ 虛空間增長
     
        
        有這樣一個情境:
        你發現、磁碟空間滿了、但你卻無論如何也找不出大檔案?
        導致你不知道到底是什麼原因空間暴滿,從而無從解決問題
        
        這便是所謂的虛空間增長
        
        舉例說明:某時候有個程式由於某種異常在持續不斷的往某檔案裡不停寫入
        可是如果該檔案在被不斷寫進的過程被人不小心給刪除了
        由於程式未退出,寫進動作還在進行中。。。。,這時空間就會不斷變大
        但是我們卻找不到這個大檔案,原因很簡單,被刪除了當然找不到
        除非找到這個進程並強制殺掉這個進程,虛增長的空間才會立即釋放,否則空間滿問題就無法解決
        
        
        經驗教訓:
        
        在刪除檔案的時候(尤其在生產環境操作中)、應該再多做一步:觀察進程的動作
        如果查看到引用某檔案的進程還沒停止、就暫時不要考慮去刪除該檔案
        
        
     
     不知不覺、夜闌珊、顧影自憐、有誰憐?淨自傷懷、不如睡去、未完待續
     
     
By David Lin 
2013-06-23
Good Luck 

        

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.