ORACLE 非同步IO

renjixinchina發表於2013-05-17

一般說來,非同步I/O是和同步I/O相比較來說的,如果是同步I/O,當一個I/O操作執行時,應用程式必須等待,直到此I/O執行完. 相反,非同步I/O操作在後臺執行,I/O操作和應用程式可以同時執行,提高了系統效能; 使用非同步I/O會提高I/O流量,如果應用是對裸裝置進行操作,這種優勢更加明顯, 因此象資料庫,檔案伺服器等應用往往會利用非同步I/O,使得多個I/O操作同時執行.

Oracle在預設情況是不使用非同步IO的。可檢視引數filesystemio_options(預設值為none),有四種選項

■ ASYNCH: enable asynchronous I/O on file system files, which has no timing requirement for transmission.
■ DIRECTIO: enable direct I/O on file system files, which bypasses the buffer cache.
■ SETALL: enable both asynchronous and direct I/O on file system files.
■ NONE: disable both asynchronous and direct I/O on file system files.


官方解釋如下:

Asynchronous I/O Support


Note:

On Linux, Automatic Storage Management uses asynchronous I/O by default. Asynchronous I/O is not supported for database files stored on NFS file systems.

Oracle Database supports kernel asynchronous I/O. This feature is disabled by default.

By default, the DISK_ASYNCH_IO initialization parameter in the parameter file is set to TRUE to enable asynchronous I/O on raw devices. To enable asynchronous I/O on file system files:

  1. Ensure that all Oracle Database files are located on file systems that support asynchronous I/O.

  2. Set the FILESYSTEMIO_OPTIONS initialization parameter in the parameter file to one of the following values:

    Linux DistributionRecommended Value
    SUSE Linux Enterprise Server 9SETALL
    Other distributionsASYNCH

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

相關文章