1、linux下如何查看伺服器物理內存狀況?
$ free -m
total used free shared buffers cached
Mem: 1002 769 232 0 62 421
-/+ buffers/cache: 286 715
Swap: 1153 0 1153
第一部分Mem行:
total 內存總數: 1002M
used 已經使用的內存數: 769M
free 空閑的內存數: 232M
shared 當前已經廢棄不用,總是0
buffers Buffer 緩存內存數: 62M
cached Page 緩存內存數:421M
關系:total(1002M) = used(769M) + free(232M)
第二部分(-/+ buffers/cache):
(-buffers/cache) used內存數:286M (指的第一部分Mem行中的used - buffers - cached)
(+buffers/cache) free內存數: 715M (指的第一部分Mem行中的free + buffers + cached)
可見-buffers/cache反映的是被程序實實在在吃掉的內存,而+buffers/cache反映的是可以挪用的內存總數。
第三部分是指交換分區, 我想不講大家都明白.
我想大家看了上面,還是很暈.第一部分(Mem)與第二部分(-/+ buffers/cache)的結果中有關used和free為什麼這么奇怪.
其實我們可以從二個方面來解釋.
對操作系統來講是Mem的參數.buffers/cached 都是屬於被使用,所以它認為free只有232.
對應用程序來講是(-/+ buffers/cach).buffers/cached 是等同可用的,因為buffer/cached是為了提高程序執行的性能,當程序使用內存時,buffer/cached會很快地被使用。
所以,以應用來看看,以(-/+ buffers/cache)的free和used為主.所以我們看這個就好了.另外告訴大家一些常識.Linux為了提高磁碟和內存存取效率, Linux做了很多精心的設計, 除了對dentry進行緩存(用於VFS,加速文件路 徑名到inode的轉換), 還採取了兩種主要Cache方式:Buffer Cache和Page Cache。前者針對磁碟塊的讀寫,後者針對文件inode的讀寫。這些Cache能有效縮短了 I/O系統調用(比如read,write,getdents)的時間。
記住內存是拿來用的,不是拿來看的.不象windows, 無論你的真實物理內存有多少,他都要拿硬碟交換文件來讀.這也就是windows為什麼常常提示虛擬空間不足的原因.你們想想,多無聊,在內存還有大部分 的時候,拿出一部分硬碟空間來充當內存.硬碟怎麼會快過內存.所以我們看linux,只要不用swap的交換空間,就不用擔心自己的內存太少.如果常常 swap用很多,可能你就要考慮加物理內存了.這也是linux看內存是否夠用的標准哦.
2、如何查看linux伺服器是否存在內存溢出
問題描述:抄
阿里雲ECS Linux伺服器,站點程序無法運行,排查發現資料庫未啟動。啟動MySQL服務時,返回Out of memory報錯信息。
分析解決:
該類問題一般是由於基礎環境配置不當,或硬體配置不能滿足當前服務需求導致,如MySQL配置錯誤,內存不足等。
針對該類問題,排查思路如下:
1. 檢查是否為基礎服務問題,如對MySQL的最小內存設置進行檢查。如果不熟悉資料庫調整,可以卸載後重新進行安裝恢復默認配置。
2. 如果當前硬體配置較低,如只有512M或1G內存,則可以考慮升級內存後,驗證問題是否解決。硬體配置變更升級操作方法如下:
a. 登陸阿里雲控制台,點擊【實例】--在要升級的伺服器右側,點擊
3、怎麼在linux上查看伺服器的內存多大
1,Linux下可以在/proc/cpuinfo中看到每個cpu的詳細信息。但是對於雙核的cpu,在cpuinfo中會看到兩個cpu。常常會讓人誤以為是兩個單核的cpu。
其實應該通過Physical Processor ID來區分單核和雙核。而Physical Processor ID可以從cpuinfo或者dmesg中找到. flags 如果有 ht 說明支持超線程技術 判斷物理CPU的個數可以查看physical id 的值,相同則為同一個物理CPU
2,查看內存大小:
cat /proc/meminfo |grep MemTotal
3,其他一些可以查看詳細linux系統信息的命令和方法:
uname -a # 查看內核/操作系統/CPU信息的linux系統信息命令
head -n 1 /etc/issue # 查看操作系統版本,是數字1不是字母L
cat /proc/cpuinfo # 查看CPU信息的linux系統信息命令
hostname # 查看計算機名的linux系統信息命令
lspci -tv # 列出所有PCI設備
lsusb -tv # 列出所有USB設備的linux系統信息命令
lsmod # 列出載入的內核模塊
env # 查看環境變數資源
free -m # 查看內存使用量和交換區使用量
df -h # 查看各分區使用情況
-sh # 查看指定目錄的大小
4、Linux伺服器要怎麼查看內存?
1. free命令
命令格式:free -m
用途:用於檢查有關系統RAM的使用情況(查看系統的可用和已用內存)。
可用內存計算公式:
可用內存=free +buffers +cached, 實際操作即:215 +11+57 =253MB。
2. vmstat 指令
命令格式:vmstat -s(參數)
用途:用於查看系統的內存存儲信息,是一個報告虛擬內存統計信息的小工具,vmstat 命令報告包括:進程、內存、分頁、阻塞IO、中斷、磁碟、CPU。
3. /proc/meminfo 指令
命令格式:cat/proc/meminfo
用途:用於從/proc文件系統中提取與內存相關的信息。這些文件包含有系統和內核的內部信息。
SwapFree中的交換內存。
PS:你還可以使用命令less /proc/meminfo 直接讀取該文件。通過使用less 命令,可以在長長的輸出中向上和向下滾動,找到你需要的內容哦~
4. top 指令
命令格式:top
用途:用於列印系統中的CPU和內存使用情況。
PS:如果你想讓top 顯示更友好的內存信息,使用命令top -o %MEM,這會使top 按進程所用內存對所有進程進行排序。
5. htop 指令
命令格式:htop
用途:詳細分析CPU和內存使用情況。
PS:如果你終端沒安裝htop,先通過指令來安裝。
命令格式:sudo apt-get update
接著輸入以下指令
命令格式:sudo apt install htop
等一切安裝結束之後。請輸入以下指令即可。
5、怎麼在linux上查看伺服器的內存多大
第一,的確可以那樣查詢內存和硬碟,或者可以使用top命令,而哪個memtotal就是總的內存大小。
那個fdisk是在root目錄下才能使用的命令。先su
-
,然後按回車,然後輸入密碼,切換到root下再輸入fdisk
-l就可以了!
6、linux 下如何查看伺服器物理內存狀況
Linux下看內存和CPU使用率一般都用top命令,但是實際在用的時候,用top查看出來的內存佔用率都非常高,如:
Mem: 4086496k total, 4034428k used, 52068k free, 112620k buffers
Swap: 4192956k total, 799952k used, 3393004k free, 1831700k cached
接近98.7%,而實際上的應用程序佔用的內存往往並沒這么多,
PID
USER PR NI VIRT RES SHR S %CPU %MEM TIME+
COMMAND
25801 sybase 15 0 2648m 806m 805m S 1.0 20.2 27:56.96
dataserver
12084 oracle 16 0 1294m 741m 719m S 0.0 18.6 0:13.50
oracle
27576 xugy 25 0 986m 210m 1040 S 1.0 5.3 28:51.24 cti
25587 yaoyang 17 0 1206m 162m 3792 S 0.0 4.1 9:21.14 java
仔細看top關於內存的顯示輸出,有兩個數據buffers和cached,在Linux系統下的buffer指的是磁碟寫緩存,而cache則指的是磁碟讀緩存。
(A buffer is something that has yet to be "written" to disk.
A cache is something that has been "read" from the disk and stored for later use.)
而這兩塊是為了提高系統效率而分配的內存,在內存富餘的時候,操作系統將空閑內存利用起來,而有內存需求時,系統會釋放這部分的內存供應用程序使用。
這樣,真正應用程序可用的內存就是free+buffer+cache,上面的例子就是:
52068k + 112620k + 1831700k = 1996388k
而已用內存則是used-buffer-cache,上面的例子為:
4034428k - 112620k - 1831700k = 2090108k
Linux下查看內存還有一個更方便的命令,free:
$ free
total used free shared buffers cached
Mem: 4086496 4034044 52452 0 112756 1831564
-/+ buffers/cache: 2089724 1996772
Swap: 4192956 799952 3393004
Mem:這列就是用top命令看到的內存使用情況,而-/+buffers/cache這列就是剛剛做的計算結果,used-buffer-cache/free+buffer+cache
也可以加-m或者-g參數查看按MB或者GB換算的結果。
$ free -m
total used free shared buffers cached
Mem: 3990 3906 83 0 90 1786
-/+ buffers/cache: 2029 1961
Swap: 4094 781 3312
這樣,真正應用程序的內存使用量就可以得出來了,上面的例子中內存佔用率為51.1%
7、在linux 下怎麼查看伺服器的cpu和內存的硬體信息
以Linux centos 7伺服器為例,查看伺服器的cpu和內存的硬體信息方法如下:
1、滑鼠右鍵點擊桌面,選擇「打開終端」,如下圖所示。
2、先輸入命令「cat /proc/cpuinfo」,然後再按回車鍵就能看到伺服器的CPU信息,如下圖所示。
3、在輸入命令「cat /proc/meminfo 」,然後按回車鍵,就能查看到內存的信息,如下圖所示。
8、如何解決Linux伺服器內存不足的方法
國內伺服器的普及,以及在全球其他地區的用戶量迅速增長,促成了國內用戶在考慮空間時更多會考慮租用伺服器。在過去的幾年中,整個IT產業經歷了巨大的變革和虛擬化是最顯著的那些之一。
這些技術有助於增加功能和提高操作的表現力,這有望增長更加在未來幾年,PS擁有著伺服器的獨立性和虛擬主機的便宜性的特點,所以獨服也是一個熱門的選擇,但是很多站長為了價格上更加便宜,往往會在伺服器的配置劃分上更為不合理,因而很多VPS以512MB的面貌出現,然後用戶購買之後發現根本不夠用,今天壹基比小喻就VPS出現內存不足該如何解決,今天給大家分享一下。
1、用swap解決swap一般稱作為「交換空間」,其作用相當於Windows上的「虛擬內存」。swap實際上是硬碟上的一塊空間,雖然速度較慢,但是也不失為解決方案。swap內保存的數據並不能直接供CPU直接使用。CPU如果想用swap內的數據,需要先把數據從硬碟轉移到內存,然後再交給CPU但是問題根源是由於物理內存不足,就不要嘗試通過增加swap來解決內存不足的問題,再多的swap也是於事無補的。 總而言之swap可以解一時之急,讓我們的數據擁有一個合法的緩沖區,但是升級物理內存才是我們實現系統性能提升的根本辦法。
2、升級內存如果內存不足,應該及時升級內存。傳統的升級方法就是購買內存更大的伺服器,這是一筆不小的投資,而且經常會因為升級內存而「被升級」CPU和硬碟,這種強加條款讓用戶很難受。否則不光會影響到自己的系統,而且會影響到其他的。
3、使用雲伺服器雲伺服器的升級過程和獨立主機或者是不同的,雲伺服器是無數tai獨立主機構成的,所以雲伺服器的內存升級,只需要打開控制面板或者購買面板,直接選擇你想要的內存數量,即可實現無縫升級。
9、linux系統的伺服器,內存越大越好嗎?
這要看你在伺服器上運行什麼服務了,通常來說,伺服器的內存越大內越好,當然如果是32位的容Linux,最多可以管理的內存不超過4G,64位的就沒有這個限制了。
但是如果你在伺服器上運行的服務確定只需要512M內存就能運行很流暢,用戶數量和服務規模都不會增加,那麼就不用增加內存了。
10、linux資料庫伺服器佔用內存過高,是怎麼回事
修改mysql配置文件,優化緩存大小和連接數連接方式,優化sql語句 ,記得mysql好像是有工具可以查看最佔用資源的sql語句,找到他,優化他。
安裝好mysql後,配製文件應該在/usr/local/mysql/share/mysql目錄中,配製文件有幾個,有my-huge.cnf my-medium.cnf my-large.cnf my-small.cnf,不同的流量的網站和不同配製的伺服器環境,當然需要有不同的配製文件了。
一般的情況下,my-medium.cnf這個配製文件就能滿足我們的大多需要;一般我們會把配置文件拷貝到/etc/my.cnf 只需要修改這個配置文件就可以了,使用mysqladmin variables extended-status –u root –p 可以看到目前的參數,有3個配置參數是最重要的,即key_buffer_size,query_cache_size,table_cache。
key_buffer_size只對MyISAM表起作用,
key_buffer_size指定索引緩沖區的大小,它決定索引處理的速度,尤其是索引讀的速度。一般我們設為16M,實際上稍微大一點的站點 這個數字是遠遠不夠的,通過檢查狀態值Key_read_requests和Key_reads,可以知道key_buffer_size設置是否合理。比例 key_reads / key_read_requests應該盡可能的低,至少是1:100,1:1000更好(上述狀態值可以使用SHOW STATUS LIKE 『key_read%』獲得)。 或者如果你裝了phpmyadmin 可以通過伺服器運行狀態看到,筆者推薦用phpmyadmin管理mysql,以下的狀態值都是本人通過phpmyadmin獲得的實例分析:
這個伺服器已經運行了20天
key_buffer_size – 128M
key_read_requests – 650759289
key_reads - 79112
比例接近1:8000 健康狀況非常好