Centos5
在正在執行的 Linux 機器上創建交換文件
我們公司的網站剛剛從共享主機轉移到 VDS,因為託管公司計劃淘汰不太可靠的共享託管伺服器。
VDS 只有 256MB 的 RAM 並託管幾個站點,除了其中一個之外,所有站點都是非常簡單的靜態站點,只有幾頁,每天為少於 20-30 名訪問者提供服務。
我們的主站點執行著某種定製版本的 OSCommerce,流量也很低(很少超過 10 個左右的並髮使用者),但確實需要 MySQL。不幸的是,由於記憶體不足,由於移動 mysqld 不斷崩潰。我已經稍微編輯了 Apache 配置(以減少執行緒數量)以減輕負載,但這只是迴避了真正的問題。
伺服器沒有交換空間,但它的磁碟空間確實比我們需要的多得多,所以我正在考慮使用其中的一些空間進行交換。我知道這對性能沒有幫助,但我們可以忍受。
如何在伺服器執行時創建交換文件並啟用它?作業系統是 CentOS 5.5(最終版),Linux 不是我的母語。
**更新:**對於任何可能想知道結果的人,自從實現了 quanta 描述的交換文件以來,伺服器不僅穩定,沒有更多的 mysqld 崩潰,它實際上比以前更快地提供頁面。性能提升與我的預期相反,但我很高興在這種情況下錯了。
假設您要創建 512MB 的交換文件:
# dd if=/dev/zero of=/swapfile bs=1024 count=524288
設置交換區:
# mkswap /swapfile
啟動它:
# swapon /swapfile
添加到
/etc/fstab
永久:echo -e "/swapfile\t\tswap\t\tswap\t\tdefaults\t0 0" >> /etc/fstab
並用 驗證
free -m
。