Linux 一键配置 Oracle 主机 /dev/shm

简介: 首先可以看出来/dev/shm是一个设备文件, 可以把/dev/shm看作是系统内存的入口, 可以把它看做是一块物理存储设备,一个tmp filesystem, 可以通过这个设备向内存中读写文件, 以加快某些I/O高的操作,比如对一个大型文件频繁的open, write, read!

首先可以看出来/dev/shm是一个设备文件, 可以把/dev/shm看作是系统内存的入口, 可以把它看做是一块物理存储设备,一个tmp filesystem, 可以通过这个设备向内存中读写文件, 以加快某些I/O高的操作,比如对一个大型文件频繁的open, write, read!


Oracle 就利用了/dev/shm(shitou没用过oracle), 可以通过mount命令列出当前的/dev/shm的挂载的文件系统,


你可以直接对/dev/shm进行读写操作, 例如:


#touch/dev/shm/file1


既然是基于内存的文件系统,系统重启后/dev/shm下的文件就不存在了。Linux默认(CentOS)/dev/shm分区的大小是系统物理内存的50%, 虽说使用/dev/shm对文件操作的效率会高很多。但是目前各发行软件中却很少有使用它的(除了前面提到的Oracle), 可以通过ls /dev/shm查看下面是否有文件, 如果没有就说明当前系统并没有使用该设备。


因此需要在 /etc/fstab 文件中加上配置:


DAYTIME=$(date+%Y%m%d)
memTotal=$(grepMemTotal/proc/meminfo|awk'{print $2}')
shmTotal=$(df-k/dev/shm|awk'{print $2}'|head-n2|tail-n1)
if [ "$(grep -E -c "/dev/shm" /etc/fstab)"-eq0 ]; then    [ !-f/etc/fstab."${DAYTIME}" ] &&cp/etc/fstab/etc/fstab."${DAYTIME}"cat<<EOF>>/etc/fstabtmpfs/dev/shmtmpfssize=${memTotal}k00EOFmount-oremount/dev/shmelseif [ "$shmTotal"-lt"$memTotal" ]; thenshmTotal=$memTotal      [ !-f/etc/fstab."${DAYTIME}" ] &&cp/etc/fstab/etc/fstab."${DAYTIME}"line=$(grep-n"/dev/shm"/etc/fstab|awk-F":"'{print $1}')
sed-i"${line} d"/etc/fstabcat<<EOF>>/etc/fstabtmpfs/dev/shmtmpfssize=${memTotal}k00EOFmount-oremount/dev/shmfifi



本次分享到此结束啦~

相关文章
|
26天前
|
监控 Oracle 关系型数据库
Linux平台Oracle开机自启动设置
【11月更文挑战第8天】在 Linux 平台设置 Oracle 开机自启动有多种方法,本文以 CentOS 为例,介绍了两种常见方法:使用 `rc.local` 文件(较简单但不推荐用于生产环境)和使用 `systemd` 服务(推荐)。具体步骤包括编写启动脚本、赋予执行权限、配置 `rc.local` 或创建 `systemd` 服务单元文件,并设置开机自启动。通过 `systemd` 方式可以更好地与系统启动过程集成,更规范和可靠。
|
22天前
|
Oracle Cloud Native 关系型数据库
Oracle Linux 9.5 正式版发布 - Oracle 提供支持 RHEL 兼容发行版
Oracle Linux 9.5 正式版发布 - Oracle 提供支持 RHEL 兼容发行版
58 10
Oracle Linux 9.5 正式版发布 - Oracle 提供支持 RHEL 兼容发行版
|
4月前
|
存储 Ubuntu Linux
在Linux中,如何查看当前主机的主机名,如何修改主机名?要想重启后依旧生效,需要修改哪个配置文件?
在Linux中,如何查看当前主机的主机名,如何修改主机名?要想重启后依旧生效,需要修改哪个配置文件?
|
27天前
|
Oracle Ubuntu 关系型数据库
Linux平台Oracle开机自启动设置
【11月更文挑战第7天】本文介绍了 Linux 系统中服务管理机制,并详细说明了如何在使用 systemd 和 System V 的系统上设置 Oracle 数据库的开机自启动。包括创建服务单元文件、编辑启动脚本、设置开机自启动和启动服务的具体步骤。最后建议重启系统验证设置是否成功。
|
2月前
|
存储 Oracle 关系型数据库
|
2月前
|
Linux 网络安全
Linux虚拟机与主机和Xshell的连接问题解决
Linux虚拟机与主机和Xshell的连接问题解决
86 1
|
3月前
|
Ubuntu Oracle 关系型数据库
Oracle VM VirtualBox之Ubuntu 22.04LTS双网卡网络模式配置
这篇文章是关于如何在Oracle VM VirtualBox中配置Ubuntu 22.04LTS虚拟机双网卡网络模式的详细指南,包括VirtualBox网络概述、双网卡网络模式的配置步骤以及Ubuntu系统网络配置。
316 3
|
4月前
|
存储 监控 网络协议
在Linux中,如何使用 tcpdump 监听主机为 192.168.1.1,tcp 端⼝为 80 的数据,并将将输出结果保存输出到tcpdump.log?
在Linux中,如何使用 tcpdump 监听主机为 192.168.1.1,tcp 端⼝为 80 的数据,并将将输出结果保存输出到tcpdump.log?
|
4月前
|
网络协议 Linux 网络安全
在Linux中,如何将本地 80 端口的请求转发到 8080 端口?当前主机 IP 为10.0.0.104。
在Linux中,如何将本地 80 端口的请求转发到 8080 端口?当前主机 IP 为10.0.0.104。
|
4月前
|
存储 监控 Ubuntu
在Linux中,如何规划⼀台 Linux 主机,步骤是怎样?
在Linux中,如何规划⼀台 Linux 主机,步骤是怎样?