Linux下安装Oracle的过程和涉及的知识点-系列3

本文涉及的产品
运维安全中心(堡垒机),免费版 6个月
运维安全中心(堡垒机),企业双擎版 50资产 7天
简介: 4、磁盘空间11g R2要求/tmp空间不能少于1G,若不满足要求,可以做以下两件事情之一:(1)、删除/tmp的空间,以满足磁盘要求。(2)、设置TMP和TMPDIR环境变量。

4、磁盘空间

11g R2要求/tmp空间不能少于1G,若不满足要求,可以做以下两件事情之一:

(1)、删除/tmp的空间,以满足磁盘要求。

(2)、设置TMP和TMPDIR环境变量。

使用df -h查看磁盘空间,11g R2要求的空间大小是:

Installation Type Requirement for Software Files (GB)
Enterprise Edition 4.7
Standard Edition 4.6

Installation Type Requirement for Data Files (GB)
Enterprise Edition 1.7
Standard Edition 1.5

5、依赖包

11g R2对Linux x86_64的依赖包要求是:

binutils-2.20.51.0.2-5.11.el6 (x86_64)
compat-libcap1-1.10-1 (x86_64)
compat-libstdc++-33-3.2.3-69.el6 (x86_64)
compat-libstdc++-33-3.2.3-69.el6.i686
gcc-4.4.4-13.el6 (x86_64)
gcc-c++-4.4.4-13.el6 (x86_64)
glibc-2.12-1.7.el6 (i686)
glibc-2.12-1.7.el6 (x86_64)
glibc-devel-2.12-1.7.el6 (x86_64)
glibc-devel-2.12-1.7.el6.i686
ksh
libgcc-4.4.4-13.el6 (i686)
libgcc-4.4.4-13.el6 (x86_64)
libstdc++-4.4.4-13.el6 (x86_64)
libstdc++-4.4.4-13.el6.i686
libstdc++-devel-4.4.4-13.el6 (x86_64)
libstdc++-devel-4.4.4-13.el6.i686
libaio-0.3.107-10.el6 (x86_64)
libaio-0.3.107-10.el6.i686
libaio-devel-0.3.107-10.el6 (x86_64)
libaio-devel-0.3.107-10.el6.i686
make-3.81-19.el6
sysstat-9.0.4-11.el6 (x86_64)

当前实验的版本缺少如下包:

compat-libstdc++
gcc-c++
libstdc++-devel
libaio-devel

另外,若需要使用ODBC,也需要安装unixODBC包。

可以使用yum -y install libaio-devel*的方式安装所需的依赖包。

通过实验,看到上述依赖包有很多前缀一样但后缀分为x86_64和i686的,其实只需要下载x86_64就可以了。

依赖包这块的安装是否全,决定了安装Oracle时是否会出现缺少依赖包的问题。

王道就是尽量安装全官方要求的依赖包,yum时也会找到该包当前的最新版本。


6、创建安装路径、用户、用户组:

(1)、创建dba组

groupadd -g 101 dba

这里可以指定gid是101,也可以不指定使用默认值。

可以使用grep dba /etc/group查看是否建立过dba组。

(2)、创建oinstall组

groupadd oinstall

这个组如果不建立也不会影响当前Oracle的安装,oinstall组一般是用于控制软件安装、补丁安装的,dba组一般是用于控制数据库创建,数据库管理等的,当然组名不一定必须是dba或oinstall,另外以上权限也可以都授权给dba组,这样只需要创建一个dba组就可以了。

可以使用more /etc/oraInst.loc查看是否已经建立过Oracle Inventory group,例如:

inventory_loc=/opt/app/oraInventory

inst_group=oinstall

(3)、创建用户

useradd -g oinstall -G dba ora11g

这里-g表示用户ora11g指定主group是oinstall,-G表示用户ora11g指定其他用户(副)group是dba。

一个用户只能属于一个主group,但可以属于多个其他用户组。

可以使用id ora11g查看用户所属的主group和副group等信息。也可以使用groups ora11g查看所属组。

使用passwd ora11g为用户创建密码。

(4)、创建安装目录,配置权限

mkdir -p /opt/app/ora11g

chown -R ora11g:dba /opt/app/ora11g

创建Oracle安装路径/opt/app/ora11g,-R表示修改该目录所属的用户和组,包括路径下的子文件夹。


7、系统内核参数

官方文档给出的内核参数建议是:

Parameter Minimum Value File
semmsl

semmns

semopm

semmni

250

32000

100

128

/proc/sys/kernel/sem
shmall 2097152 /proc/sys/kernel/shmall
shmmax Minimum: 536870912

Maximum: A value that is 1 byte less than the physical memory

Recommended: More than half the physical memory

See My Oracle Support Note 567506.1 for additional information about configuring shmmax.

/proc/sys/kernel/shmmax
shmmni 4096 /proc/sys/kernel/shmmni
file-max 6815744 /proc/sys/fs/file-max
ip_local_port_range Minimum: 9000

Maximum: 65500

/proc/sys/net/ipv4/ip_local_port_range
rmem_default 262144 /proc/sys/net/core/rmem_default
rmem_max 4194304 /proc/sys/net/core/rmem_max
wmem_default 262144 /proc/sys/net/core/wmem_default
wmem_max 1048576 /proc/sys/net/core/wmem_max
aio-max-nr 1048576

Note: This value limits concurrent outstanding requests and should be set to avoid I/O subsystem failures.

/proc/sys/fs/aio-max-nr
并强调如果当前系统的内核参数值大于上述建议值,则不建议修改这些值。

如果需要修改,建议记录修改的参数项和值。

可以使用如下命令查看对应的内核参数值:

Parameter Command
semmslsemmnssemopm, and semmni # /sbin/sysctl -a | grep sem

This command displays the value of the semaphore parameters in the order listed.

shmallshmmax, and shmmni # /sbin/sysctl -a | grep shm
file-max # /sbin/sysctl -a | grep file-max
ip_local_port_range # /sbin/sysctl -a | grep ip_local_port_range
rmem_default # /sbin/sysctl -a | grep rmem_default
rmem_max # /sbin/sysctl -a | grep rmem_max
wmem_default # /sbin/sysctl -a | grep wmem_default
wmem_max # /sbin/sysctl -a | grep wmem_max
若需要修改内核参数,可以编辑/etc/sysctl.conf。

修改之后使用sysctl -p生效,如下是增加和修改的内容:


官方还建议对于11g R2需要设置一个额外的参数:fs.aio-max-nr。


8、修改Oracle软件安装用户的资源限制

官方建议:

Resource Shell Limit Resource Soft Limit Hard Limit

Open file descriptors

nofile

at least 1024

at least 65536

Number of processes available to a single user

nproc

at least 2047

at least 16384

Size of the stack segment of the process

stack

at least 10240 KB

at least 10240 KB, and at most 32768 KB

这里需要修改/etc/security/limits.conf,

ora11g             soft       nproc   2047

ora11g             hard     nproc   16384

ora11g             soft      nofile  1024

ora11g              hard    nofile  65536

注:但我尚未设置stack这个(11g R2建议配置),不知道是否有影响

type中:

soft指的是当前系统生效的设置值。

hard表明系统中所能设定的最大值。

soft的限制不能比hard限制高。

用-就表明同时设置了soft和hard的值。

resource中:

nofile表示打开文件的最大数目。

nproc表示进程的最大数目。

查看file descriptor的soft和hard的最小、最大限制:ulimit -Sn和ulimit -Hn。

查看用户可用进程数的soft和hard的最小、最大限制:ulimit -Su和ulimit -Hu。

查看stack的soft的最大、最小限制:ulimit -Ss和ulimit -Hs。

对于以上limits.conf文件的修改,必须重新登陆才能生效,再继续下面的安装之前,最后重新登陆。

知识点4:limits.conf文件内容

soft    core            0              禁止创建core文件

何谓core文件,当一个程式崩溃时,在进程当前工作目录的core文件中复制了该进程的存储图像。core文件仅仅是个内存映象(同

时加上调试信息),主要是用来调试的。core文件是个二进制文件,需要用相应的工具来分析程式崩溃时的内存映像。系统默认

core文件的大小为0,所以没有创建。

能用ulimit命令查看和修改core文件的大小。 

$ulimit -c
0
$ ulimit -c 1000

$ ulimit -c

1000 

-c 指定修改core文件的大小,1000指定了core文件大小。也能对core文件的大小不做限制,如: 

#ulimit -c unlimited

#ulimit -c

unlimited 

如果想让修改永久生效,则需要修改设置文件,如 .bash_profile、/etc/profile或/etc/security/limits.conf。 

hard    rss             10000      非root用户最多使用10M内存

hard    nproc         20            最多进程数限制在20

limits.conf的工作原理:

limits.conf的后端是这样工作的:limits.conf是pam_limits.so的设置文件,然后/etc/pam.d/下的应用程式调用pam_***.so模块。譬如说,当用户访问服务器,服务程式将请求发送到PAM模块,PAM模块根据服务名称在/etc/pam.d目录下选择一个对应的服务文件,然后根据服务文件的内容选择具体的PAM模块进行处理。

例如:限制admin用户登录到sshd的服务不能超过2个:

在/etc/pam.d/sshd 中添加 session required pam_limits.so。

在/etc/security/limits.conf中添加 admin - maxlogins 2。


9、/etc/pam.d/login添加如下内容

session    required     pam_limits.so

原因如上所述,要使 limits.conf 文件配置生效,必须要确保pam_limits.so文件被加入到启动文件中。

如上所述,可以用ulimit -n 32768设置最大描述符,不过只对当前会话有用,而且要root,或者修改/etc/security/limits.conf,但要重启。

pam.d指的是验证登陆配置,存放着与PAM模块有关安全策略配置文件,如上所述,修改最大文件打开数的配置过程中,需要修改安全策略,加载pam_limits.so模块。login是登陆配置文件。简单说这就是Linux操作系统的登陆配置文件。每次登陆系统的时候或修改密码的时候都要先经过pam的验证,验证的规则就是在这里面定义的,如果符合才能让你登陆。

目录
相关文章
|
26天前
|
安全 Linux iOS开发
Nessus Professional 10.10 Auto Installer for RHEL 10, AlmaLinux 10, Rocky Linux 10 - Nessus 自动化安装程序
Nessus Professional 10.10 Auto Installer for RHEL 10, AlmaLinux 10, Rocky Linux 10 - Nessus 自动化安装程序
116 6
Nessus Professional 10.10 Auto Installer for RHEL 10, AlmaLinux 10, Rocky Linux 10 - Nessus 自动化安装程序
|
3月前
|
Ubuntu Linux
计算机基础知识:linux系统怎么安装?
在虚拟机软件中创建一个新的虚拟机,并选择相应操作系统类型和硬盘空间大小等参数。将下载的 ISO 镜像文件加载到虚拟机中。启动虚拟机,进入安装界面,并按照步骤进行安装。安装完成后,可以在虚拟机中使用 Linux 系统。
|
26天前
|
消息中间件 Kafka Linux
Linux下安装Kafka 3.9.1
本文介绍Kafka 3.9.1版本的安装与配置,包括通过ZooKeeper或KRaft模式启动Kafka。涵盖环境变量设置、日志路径修改、集群UUID生成、存储格式化及服务启停操作,适用于Linux环境下的部署实践。
178 0
|
3月前
|
网络协议 关系型数据库 Linux
【App Service Linux】在Linux App Service中安装 tcpdump 并抓取网络包
在App Service for Linux环境中,无法像Windows一样直接使用网络排查工具抓包。本文介绍了如何通过TCPDUMP在Linux环境下抓取网络包,包括SSH进入容器、安装tcpdump、执行抓包命令及下载分析文件的完整操作步骤。
176 6
|
3月前
|
弹性计算 安全 Linux
阿里云服务器ECS安装宝塔Linux面板、安装网站(新手图文教程)
本教程详解如何在阿里云服务器上安装宝塔Linux面板,涵盖ECS服务器手动安装步骤,包括系统准备、远程连接、安装命令执行、端口开放及LNMP环境部署,手把手引导用户快速搭建网站环境。
|
3月前
|
Ubuntu 安全 Linux
Linux这5款微型发行版,体积小+精简,比win7运行还快,值得安装
以上5款微型发行版体积小且精简,如果你有台旧电脑,不妨试试?
|
3月前
|
安全 Ubuntu Linux
如何安装Linux操作系统?
此时,您可以选择重新启动计算机,然后从硬盘上的Linux系统启动。以上是一个大致的安装过程。请注意,不同的Linux发行版可能会在细节上有所差异,因此在进行安装之前,请确保您阅读并理解了相应发行版的安装指南或文档。
|
3月前
|
Ubuntu Linux 数据安全/隐私保护
Win10安装Linux子系统教程!如何在Win10系统中安装Ubuntu!
登录系统后,输入cd /返回上一级,然后再输入“ls”查看一下系统文件目录,看看对不对!
|
3月前
|
Ubuntu Linux Shell
手把手教你安装适用于Linux的Windows子系统——Ubuntu
重启完成,你看看重新打开Ubuntu是不是发生了变化,等待几分钟,系统配置完成,根据提示设置用户名和密码即可