一、硬件层面优化
二、文件系统与磁盘I/O优化
noatime,nodiratime(避免每次读取文件更新访问时间)、data=writeback(提高写入效率,需配合日志保障一致性)等参数,减少不必要的磁盘操作。none(禁用调度器,发挥NVMe的高并发优势),SATA SSD推荐deadline(平衡延迟与吞吐);通过echo deadline | sudo tee /sys/block/sdX/queue/scheduler临时修改,或修改/etc/udev/rules.d/60-ioscheduler.rules永久生效。三、Oracle数据库层级优化
/u01/oradata存数据文件、/u02/redo存Redo日志、/u03/archive存归档日志),避免关键组件互相抢占I/O带宽。DISK_ASYNCH_IO = TRUE),并在/etc/fstab中添加aio=1参数(挂载时启用异步I/O),提升数据库的I/O并发处理能力。COMPRESS FOR OLTP),减少存储空间占用并提高I/O效率。EXPLAIN PLAN分析SQL执行计划,识别并优化低效索引(如未使用的索引可删除)。四、操作系统层面优化
vm.swappiness = 0,禁用交换分区,提高内存使用效率;vm.dirty_background_ratio设置为5~10,vm.dirty_ratio设置为10~20,控制脏页面写回策略,平衡内存与磁盘I/O);调整共享内存参数(shmall、shmmax,根据系统内存大小设置,满足Oracle共享内存需求);调整信号量参数(kernel.sem,控制并发访问,避免进程阻塞)。iostat(查看磁盘I/O利用率、等待时间,%util > 80%表示磁盘饱和)、iotop(实时查看进程级I/O占用,定位高I/O进程)、blktrace+btt(深度分析I/O行为,定位难以复现的瓶颈)等工具监控系统I/O性能;通过Oracle AWR(自动工作负载存储库)、ASH(活动会话历史)报告分析数据库I/O热点(如慢SQL、高I/O等待事件),针对性优化。五、存储空间管理优化
df命令查看磁盘空间使用情况(重点关注Use%列),du命令查找大文件(如du -sh * | sort -rh),ncdu工具进行交互式磁盘空间分析(可视化展示目录大小);定期清理不必要的文件(如旧日志、临时文件、归档日志(超过保留期限))。ALTER TABLE ... SHRINK SPACE命令整理表碎片(消除因DELETE、UPDATE操作产生的碎片,提高空间利用率);对历史数据进行归档(如将超过1年的订单数据迁移至归档表或单独存储设备),减少主表的数据量,提升查询性能。