我想知道 Oracle 10g 是否有支持的(或推荐的)文件系统列表。
具体来说,我想知道将 Oracle 数据存储在 XFS 分区上是否是个坏主意。
我问这个问题是因为有些人说删除速度慢, 和可能 Oracle 不支持它,虽然我找不到什么有趣的东西他们的 文档。
请注意,我没有希望要使用 XFS,我正在使用的客户端是已经使用它。他们遇到了一些奇怪的问题,我想知道这是否与此有关。
答案1
Metalink 文档 414673.1 “Oracle 不对本地文件系统(即 OCFS2、NFS 等除外)进行认证,但 ext2/ext3 除外,因为它是所有 Linux 发行版的通用默认文件系统。因此,如果 XFS 出现问题,则应联系 Linux 供应商。”
我通常会采用默认设置,除非您有特殊理由不这样做。
答案2
通过启用惰性计数器可以提高 XFS 删除性能。这可以通过适中的较新内核(支持惰性计数器)和非常新的 xfs-utils 来实现。xfs_admin 命令是用于启用惰性计数器的命令。您可能还想启用未写入范围和日志版本 2(可以使用更大的日志)并更改挂载选项以使用更多/更大的日志缓冲区。这通常会大大提高 xfs 性能。其中一些更改需要随后运行 xfs_repair。文件系统在线时无法更改。
我们使用这些设置取得了巨大成功。除非您关闭有序数据日志记录,否则 ext3 通常较慢。对于我们来说,xfs 具有支持多个并行写入线程的优势,因为它使用可由多个内核线程并行修改的分配组。结合 RAID-5(或其他可以并行对不同磁盘进行独立写入的分配组)和 xfs 设置以使用正确的条带大小,这是一个不错的性能改进。这通常还会产生非常高效的数据库设置。
以下是可以执行此操作的 xfs_admin 命令行:
xfs_admin -ej -c1 /dev/sdXX
xfs_repair /dev/sdXX
安装选项如下:
mount -o relatime,sunit=128,swidth=384,logbufs=8,logbsize=256k /dev/sdXX ...
sunit 和 swidth 是关于条带宽度和大小的 - 现在描述这些有点复杂。值通常是扇区(512 字节单位)。sunit 是条带大小,swidth 是 sunit * 条带数。无论如何,relatime 应该是最新内核中的默认值。