一個細小問題觸發的報警(r11筆記第68天)

jeanron100發表於2017-02-07

    今天有一個資料庫伺服器報警,報警資訊是來自於一個異機備庫。可以看到這臺伺服器空間只有300多G,而剩餘空間只剩下了不到30G.所以這樣一個問題就很奇怪了。

     這個伺服器是否很老舊,答還在報修期內,其它配置也不差,一個配置較好的伺服器怎麼會只有300G左右的儲存空間。

# fdisk -l
Disk /dev/sda: 299.4 GB, 299439751168 bytes
255 heads, 63 sectors/track, 36404 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk identifier: 0x0006ca1e然後下面就是分割槽的設定資訊,下面的一段內容給我提了個醒。

Disk /dev/sdb: 1798.7 GB, 1798651772928 bytes
255 heads, 63 sectors/track, 218673 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00062df9
   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1   *           1      218673  1756490841   83  Linux

    由此可見,這個伺服器的儲存空間不是低配的300G,其實還有一塊更大容量的盤,這個問題看來就好解釋了。

    那麼我們就花點時間快速修復下,我看了下表,那就給10~20分鐘的時間吧。

    但是現在我只看到分割槽的資訊,不知道現在是否已經初始化了檔案系統,所以還需要確認一下才能動手。這個時候可以使用parted來看。

# parted /dev/sdb
GNU Parted 2.1
Using /dev/sdb
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) print list                                                       
Model: DELL PERC H710P (scsi)
Disk /dev/sdb: 1799GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Number  Start   End     Size    Type     File system  Flags
 1      32.3kB  1799GB  1799GB  primary  ext3         boot
....確認後目前還沒有初始化資料,那麼我所做的工作就可以改進了,ext3是很早之前的設定,我們最起碼得ext4,或者xfs,但是現在的配置我們使用df -T檢視目前都是ext4,所以為了統一,還是保守設定為了ext4.

重新格式化一下。

# mkfs -t ext4 /dev/sdb1然後使用parted檢視,資訊就一目瞭然了。

Model: DELL PERC H710P (scsi)
Disk /dev/sdb: 1799GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Number  Start   End     Size    Type     File system  Flags
 1      32.3kB  1799GB  1799GB  primary  ext4         boot這個時候有個腦筋急轉彎就需要我來做了。目前根目錄/下有一個U01的軟連結 指向/home/U01,也就意味著目前的資料都是從/home目錄下取得,換句話說就是從根目錄下取得的。

    我們新設定了分割槽,就需要把資料挪過區,怎麼儘可能平滑的挪動呢,我們要保持/U01的軟連結不動。

首先停止異機備庫的資料庫服務和監聽

建立一個U01的目錄來切換。mkdir /home/U02   

移花接木

mv /home/U01/* /home/U02

順勢掛載新分割槽

mount /dev/sdb1 /home/U01修改許可權

chown -R oracle:oinstall /home/U01
chown -R oracle:oinstall /home/U02

這個時候才是真正挪動資料到新的分割槽,這個過程會花點時間,不過相對來說,本地的複製相對會快很多。

mv /home/U02/* /home/U01

整個過程加上複製檔案的時間大概花了30分鐘。很快問題就得到了修復,而回過頭來,問題怎麼會是現在這個情況,我想起還是以前做資料遷移的時候,發現這個伺服器自帶的磁碟空間不夠,於是申請了一塊較大容量的硬碟,但是換盤的時候我休假了,結果這個事情就一直擱置下來, 資料還是一直在原來的分割槽存放。

     所以從這個整體來看,這個問題的發生時由於一連串細小的原因導致的,各種原因最後就觸發了最終的問題。






來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/23718752/viewspace-2133193/,如需轉載,請註明出處,否則將追究法律責任。

相關文章