linux查看實例
mpstat -P ALL 和 sar -P ALL
說明:sar -P ALL > aaa.txt 重定向輸出內容到文件 aaa.txt
top命令經常用來監控linux的系統狀況,比如cpu、內存的使用,程序員基本都知道這個命令,但比較奇怪的是能用好它的人卻很少,例如top監控視圖中內存數值的含義就有不少的曲解.下面幾種方法都可以插件Java實例消耗的內存.
top命令是Linux下常用的性能分析工具,能夠實時顯示系統中各個進程的資源佔用狀況,類似於Windows的任務管理器
內容解釋:
PID:進程的ID
USER:進程所有者
PR:進程的優先順序別,越小越優先被執行
NInice:值
VIRT:進程佔用的虛擬內存
RES:進程佔用的物理內存
SHR:進程使用的共享內存
S:進程的狀態。S表示休眠,R表示正在運行,Z表示僵死狀態,N表示該進程優先值為負數
%CPU:進程佔用CPU的使用率
%MEM:進程使用的物理內存和總內存的百分比
TIME+:該進程啟動後佔用的總的CPU時間,即佔用CPU使用時間的累加值。
COMMAND:進程啟動命令名稱
常用的命令:
P:按%CPU使用率排行
T:按MITE+排行
M:按%MEM排行
2、便捷的進程內存查看:/proc/pid ,不過比較難理解
測量一個進程佔用了多少內存,linux為我們提供了一個很方便的方法,/proc目錄為我們提供了所有的信息
說明:
/proc/N pid為N的進程信息
/proc/N/cmdline 進程啟動命令
/proc/N/cwd 鏈接到進程當前工作目錄
/proc/N/environ 進程環境變數列表
/proc/N/exe 鏈接到進程的執行命令文件
/proc/N/fd 包含進程相關的所有的文件描述符
/proc/N/maps 與進程相關的內存映射信息
/proc/N/mem 指代進程持有的內存,不可讀
/proc/N/root 鏈接到進程的根目錄
/proc/N/stat 進程的狀態
/proc/N/statm 進程使用的內存的狀態
/proc/N/status 進程狀態信息,比stat/statm更具可讀性
/proc/self 鏈接到當前正在運行的進程
3、可以看到進程中每個資源都佔用了多少內存:pmap
pmap命令可以顯示一個或多個進程所使用的內存數量。你可以使用這個工具來了解伺服器上的某個進程分配了多少內存,並以此來判斷這是否是導致內存瓶頸的原因。要得到更加詳細的信息,使用pmap -d選項。
4、free
free: invalid option -- h
usage: free [-b|-k|-m|-g] [-l] [-o] [-t] [-s delay] [-c count] [-V]
-b,-k,-m,-g show output in bytes, KB, MB, or GB
-l show detailed low and high memory statistics
-o use old format (no -/+buffers/cache line)
-t display total for RAM + swap
-s update every [delay] seconds
-c update [count] times
-V display version information and exit
❷ 跪求oracle專家指教: 在linux系統下,如何查看資料庫有幾個實例,就是判斷資料庫是單實例還是多實例!!
可以看一下系統中是否有多個虧兄pmon進程,如果有幾個pmon進程,就說明有幾個實例。命令如下:
ps -ef|grep ora_pmon
解釋:pmon進程,進程監視器(Process Monitor)oracle中用於恢復失敗的數據核首庫用戶的強制性進程,它先獲取失敗用戶的標識,釋放該用戶佔有的所有資料庫資源。一般一個oracle實例只能有一個pmon進程,可能通過查看pmon進程的多少來判斷有幾個實例銷氏襲。
❸ linux 怎樣查oracle實例名稱
用oracle用戶登陸系統,然後執行命令echo $ORACLE_SID就可以了。
實例:
oracle@server1a:~> echo $ORACLE_SID
ora11g
oracle@server1a:~>
另外推薦一本問題相關的學習書籍《Linux就該這么學》,這本系統對Linux學習有比較好的規劃。
❹ linux中grep命令的詳細解釋
linxu下的grep命令其實是一個搜索文件文本的工具。下面由我為大家整理了linux的grep命令的詳細解釋的相關知識,希望對大家有幫助!
一、linux中的grep命令的詳細解釋
1.作用
Linux系統中grep命令是一種強大的文本搜索工具,它能使用正則表達式搜索文本,並把匹 配的行列印出來。grep全稱是Global Regular Expression Print,表示全局正則表達式版本,它的使用許可權是所有用戶。
2.格式
grep [options]
3.主要參數
[options]主要參數:
-c:只輸出匹配行的計數。
-I:不區分大 小寫(只適用於單字元)。
-h:查詢多文件時不顯示文件名。
-l:查詢多文件時只輸出包含匹配字元的文件名。
-n:顯示匹配行及 行號。
-s:不顯示不存在或無匹冊野頌配文本的錯誤信息。
-v:顯示不包含匹配文本的所有行。
pattern正則表達式主要參數:
: 忽略正則表達式中特殊字元的原有含義。
^:匹配正則表達式的開始行。
$: 匹配正則表達式的結束行。
<:從匹配正則表達 式的行開始。
>:到匹配正則表達式的行結束。
[ ]:單個字元,如[A]即A符合要求 。
[ - ]:范圍,如[A-Z],即A、B、C一直到Z都符合要求 。
。:所有的單個字元。
* :有字元,長度可以為0。
二、linux中的grep命令的詳解實例
脊讓1.grep命令使用簡單實例
$ grep ‘test’ d*
顯示所有以d開頭的文件中包含 test的行。
$ grep ‘test’ aa bb cc
顯示在aa,bb,cc文件中匹配test的行。
$ grep ‘[a-z]{5}’ aa
顯示所有包含每個字元串至少有5個連續小寫字元的字元串的行。
$ grep ‘w(es)t.*1′ aa
如果west被匹配,則es就被存儲到內存中,並標記為1,然後搜索任意個字元(.*),這些字元後面緊跟著 另外一個es(1),找到就顯示該行。如果用egrep或grep -E,就不用””號進行轉義,直接寫成’w(es)t.*1′就可以了。
2.grep命令使用復雜實例
假設您正在’/usr/src/Linux/Doc’目錄下搜索帶字元 串’magic’的文件:
$ grep magic /usr/src/Linux/Doc/*
sysrq.txt:* How do I enable the magic SysRQ key?
sysrq.txt:* How do I use the magic SysRQ key?
其中文件’sysrp.txt’包含該字元串,討論的是 SysRQ 的功能。
默認情況下,’grep’只搜索當前目錄。如果 此目錄下有許多子目錄,’grep’會以如下形式列出:
grep: sound: Is a directory
這可能會使’grep’ 的輸出難於閱州鄭讀。這里有兩種解決的辦法:
明確要求搜索子目錄:grep -r
或忽略子目錄:grep -d skip
如果有很多 輸出時,您可以通過管道將其轉到’less’上閱讀:
$ grep magic /usr/src/Linux/Documentation/* | less
這樣,您就可以更方便地閱讀。
有一點要注意,您必需提供一個文件過濾方式(搜索全部文件的話用 *)。如果您忘了,’grep’會一直等著,直到該程序被中斷。如果您遇到了這樣的情況,按 <CTRL c> ,然後再試。
下面還有一些有意思的命令行參數:
grep -i pattern files :不區分大小寫地搜索。默認情況區分大小寫,
grep -l pattern files :只列出匹配的文件名,
grep -L pattern files :列出不匹配的文件名,
grep -w pattern files :只匹配整個單詞,而不是字元串的一部分(如匹配’magic’,而不是’magical’),
grep -C number pattern files :匹配的上下文分別顯示[number]行,
grep pattern1 | pattern2 files :顯示匹配 pattern1 或 pattern2 的行,
grep pattern1 files | grep pattern2 :顯示既匹配 pattern1 又匹配 pattern2 的行。
grep -n pattern files 即可顯示行號信息
grep -c pattern files 即可查找總行數
這里還有些用於搜索的特殊符號:
< 和 > 分別標注單詞的開始與結尾。
例如:
grep man * 會匹配 ‘Batman’、’manic’、’man’等,
grep ‘<man’ * 匹配’manic’和’man’,但不是’Batman’,
grep ‘<man>’ 只匹配’man’,而不是’Batman’或’manic’等其他的字元串。
‘^’:指匹配的字元串在行首,
‘$’:指匹配的字元串在行 尾,
❺ linux下如何查看oracle上有多少個實例,包括啟動了的和未啟動的。
用 ps -ef|grep smon
看你當前有多少個已經啟動的實例,
沒啟動的,只能去$ORACLE_HOME/dbs下面去數你有多少init文件了肆慶。
如跡雹做果你有多個ORACLE HOME,姿衡那就挨個數吧
❻ Linux 磁碟 操作
1、查看實例上的數據盤信息。
運行以下命令:
運行結果如下所示。
依次運行以下命令,創建一個分區。
運行以下命令分區數據盤。
輸入 p 查看數據盤的分區情況。
本示例中,數據盤沒有分區。
輸入 n 創建一個新分區。
輸入 p 選擇分區類型為主分區。
說明 創建一個單分區數據盤可以只創建主分區。如果要創建四個以上分區,您應該至少選擇一次e(extended),創建至少一個擴展分區。
輸入分區編號,按 回車鍵 。
本示例中,僅創建一個分區,直接按 回車鍵 ,採用默認值 1 。
輸入第一個可用的扇區編號,按 回車鍵 。
本示例中,直接按回車鍵,採用 默認值2048 。
輸入最後一個扇區編號,按 回車鍵 。註:也可用 +size{K,M,G} 確定分區大小
本示例中,僅創建一個分區,直接按 回車鍵 ,採用 默認值 。
輸入 p 查看該數據盤的規劃分區情況。
輸入 w 開始分區,並在完成分區後退出。
運行結果如下所示。
查看新分區信息。
運行以下命令:
運行結果如下所示,如果出現 /dev/vdb1 的相關信息,表示新分區已創建完成。
步驟二:為分區創建文件系統
在新分區上創建一個文件系統。根據您的需求運行以下任一命令,創建文件系統。
創建一個 ext4 文件系統,運行以下命令。
創建一個xfs文件系統,運行以下命令。
本示例中,創建一個ext4文件系統。
步驟三:配置/etc/fstab文件並掛載分區
在/etc/fstab中寫入新分區信息,啟動開機自動掛載分區。
注意 由於釋放雲盤等操作可能會導致其他雲盤的設備名變動,建議您在/etc/fstab中使用全局唯一標識符UUID來引用新分區。
備份etc/fstab文件。
運行以下命令:
在/etc/fstab里寫入新分區信息。
root用戶可以運行以下命令直接修改/etc/fstab文件。
說明
Ubuntu 12.04系統不支持barrier,您需要運行
命令。
如果要把數據盤單獨掛載到某個文件夾,例如單獨用來存放網頁,則將命令中/mnt替換成所需的掛載點路徑。
普通用戶可以手動修改/etc/fstab文件。
運行以下命令查看新分區的UUID。
運行結果如下所示。
運行以下命令編輯/etc/fstab文件。
輸入i進入編輯模式。
在/etc/fstab文件中寫入新分區信息,UUID值請修改為前面步驟中的查詢結果。
按Esc鍵,輸入:wq,按回車鍵保存並退出。
查看/etc/fstab中的新分區信息。
運行以下命令:
運行結果如下所示。
掛載分區。
運行以下命令:
檢查掛載結果。
運行以下命令:
運行結果如下所示,如果出現新建文件系統的信息,表示文件系統掛載成功。
❼ Linux伺服器硬體情況的查看
1、首先是對於CPU的說明
伺服器CPU性能參數主要信息可以通過查看 /proc/cpuinfo 獲得。具體查看指令及效果如下:
顯示這台伺服器上有2個物理CPU
顯示這台伺服器的物理核數為16個
顯示運行模式為64位
顯示為Intel(R) Xeon(R) Gold 6226R CPU @ 2.90GHz
命令:
顯示此伺服器的線程數為64
top命令是Linux下常用的性能分析工具,能夠實時顯示系統中各個進程的資源佔用狀況,類似於Windows的任務管理器。下面詳細介紹它的使用方法。top是一個動態顯示過程,即可以通過用戶按鍵來不斷刷新當前狀態.如果在前台執行該命令,它將獨占前台,直到用戶終止該程序為止.比較准確的說,top命令提供了實時的對系統處理器的狀態監視.它將顯示系統中CPU最「敏感」的任務列表.該命令可以按CPU使用.內存使用和執行時間對任務進行排序;而且該命令的很多特性都可以通過互動式命令或者在個人定製文件中進行設定.
1.命令格式:
top [參數]
2.命令功能:
顯示當前系統正在執行的進程的相關信息,包括進程ID、內存佔用率、CPU佔用率等
3.命令參數:
-b 批處理
-c 顯示完整的治命令
-I 忽略失效過程
-s 保密模式
-S 累積模式
-i<時間> 設置間隔時間
-u<用戶名> 指定用戶名
-p<進程號> 指定進程
-n<次數> 循環顯示的次數
4.使用實例:
實例1:通過 Top 命令顯示進程信息
命令:
統計信息區:
前五行是當前系統情況整體的統計信息區。下面我們看每一行信息的具體意義。
第一行,任務隊列信息,同 uptime 命令的執行結果,具體參數說明情況如下:
10:38:58 — 當前系統時間
up 39 days, 19:47 — 系統已經運行了39天19小時47分鍾(在這期間系統沒有重啟過的吆!)
1 users — 當前有1個用戶登錄系統
load average: 0.00, 0.00, 0.00 — load average後面的三個數分別是1分鍾、5分鍾、15分鍾的負載情況。
load average數據是每隔5秒鍾檢查一次活躍的進程數,然後按特定演算法計算出的數值。如果這個數除以邏輯CPU的數量,結果高於5的時候就表明系統在超負荷運轉了。
第二行,Tasks — 任務(進程),具體信息說明如下:
系統現在共有769個進程,其中處於運行中的有1個,463個在休眠(sleep),stoped狀態的有0個,zombie狀態(僵屍)的有0個。
第三行,cpu狀態信息,具體屬性說明如下:
0.0%us — 用戶空間佔用CPU的百分比。
0.0% sy — 內核空間佔用CPU的百分比。
0.0% ni — 改變過優先順序的進程佔用CPU的百分比
100.0% id — 空閑CPU百分比
0.0% wa — IO等待佔用CPU的百分比
0.0% hi — 硬中斷(Hardware IRQ)佔用CPU的百分比
0.0% si — 軟中斷(Software Interrupts)佔用CPU的百分比
備註:在這里CPU的使用比率和windows概念不同,需要理解linux系統用戶空間和內核空間的相關知識!
第四行,內存狀態,具體信息如下:
65600012k total — 物理內存總量
1785256k used — 使用中的內存總量
62385920k free — 空閑內存總量
1428836k buffers — 緩存的內存量
第五行,swap交換分區信息,具體信息說明如下:
2097148k total — 交換區總量
918340k used — 使用的交換區總量
1178808k free — 空閑交換區總量
備註:
第四行中使用中的內存總量(used)指的是現在系統內核控制的內存數,空閑內存總量(free)是內核還未納入其管控范圍的數量。納入內核管理的內存不見得都在使用中,還包括過去使用過的現在可以被重復利用的內存,內核並不把這些可被重新使用的內存交還到free中去,因此在linux上free內存會越來越少,但不用為此擔心。
對於內存監控,在top里我們要時刻監控第五行swap交換分區的used,如果這個數值在不斷的變化,說明內核在不斷進行內存和swap的數據交換,這是真正的內存不夠用了。
第六行,空行。
第七行以下:各進程(任務)的狀態監控,項目列信息說明如下:
PID — 進程id
USER — 進程所有者
PR — 進程優先順序
NI — nice值。負值表示高優先順序,正值表示低優先順序
VIRT — 進程使用的虛擬內存總量,單位kb。VIRT=SWAP+RES
RES — 進程使用的、未被換出的物理內存大小,單位kb。RES=CODE+DATA
SHR — 共享內存大小,單位kb
S — 進程狀態。D=不可中斷的睡眠狀態 R=運行 S=睡眠 T=跟蹤/停止 Z=僵屍進程
%CPU — 上次更新到現在的CPU時間佔用百分比
%MEM — 進程使用的物理內存百分比
TIME+ — 進程使用的CPU時間總計,單位1/100秒
COMMAND — 進程名稱(命令名/命令行)
或者通過 free 命令顯示系統內存的使用情況,包括物理內存、交換內存(swap)和內核緩沖區內存。
命令:
顯示我當前的伺服器的物理內存是62G,其中交換內存是2個G,一共剩餘是60G的
三、查看Linux內核當前的系統版本號
命令:
顯示的當前的伺服器Linux內核是Ubuntu系統,版本號是18.04.6
❽ 如何在Linux中more命令查看文本文檔
1.命令格式:
more [-dlfpcsu ] [-num ] [+/ pattern] [+ linenum] [file ... ]
2.命令功能:
more命令和cat的功能一樣都是查看文件里的內容,但有所不同的是more可以按頁來查看文件的內容,還支持直接跳轉行等功能。
3.命令參數:
+n 從笫n行開始顯示
-n 定義屏幕大小為n行
+/pattern 在每個檔案御橡顯示前搜尋該字此拆譽串(pattern),然後從該字串前兩行之後開始顯示
-c 從頂部清屏,然後顯示
-d 提示「Press space to continue,』q』 to quit(按空格鍵繼續,按q鍵退出)」,禁用響鈴功能
-l 忽略Ctrl+l(換頁)字元
-p 通過清除窗口而不是滾屏來對文件進行換頁,與-c選項相似
-s 把連續的多個空行顯示為一行
-u 把文件內容中的下畫線去掉
4.常用操作命令:
Enter 向下n行,需要定義。森段默認為1行
Ctrl+F 向下滾動一屏
空格鍵 向下滾動一屏
Ctrl+B 返回上一屏
= 輸出當前行的行號
:f 輸出文件名和當前行的行號
V 調用vi編輯器
!命令 調用Shell,並執行命令
q 退出more
5.命令實例:
實例1:顯示文件中從第3行起的內容
命令:
more +3 log2012.log
輸出:
[root@localhost test]# cat log2012.log
2012-01
2012-02
2012-03
2012-04-day1
2012-04-day2
2012-04-day3
======[root@localhost test]# more +3 log2012.log
2012-03
2012-04-day1
2012-04-day2
2012-04-day3
======[root@localhost test]#
實例2:從文件中查找第一個出現"day3"字元串的行,並從該處前兩行開始顯示輸出
命令:
more +/day3 log2012.log
輸出:
[root@localhost test]# more +/day3 log2012.log
...skipping
2012-04-day1
2012-04-day2
2012-04-day3
2012-05
2012-05-day1
======[root@localhost test]#