Linux下搭建ORACLE数据库

资源需要:

至少512 MB物理内存

需1.5倍物理内存的交互空间

至少400 MB /tmp 临时目录空间

oracle软件需要1.5 GB 到 3.5 GB 磁盘空间

默认数据库需要1.2 GB

 

查看系统资源相关语句:

cat /etc/issue

uname -r

grep MemTotal/proc/meminfo

grep SwapTotal/proc/meminfo

grep "modelname" /proc/cpuinfo

free

df -k /tmp

 

安装前的检查和准备工作:

安装 libaio-0.3.102-1.i386.rpm 和libaio-devel0.3.102-1.i386.rpm

  在Red HatEnterprise Linux 介质的第三张 CD

  以 root 用户身份运行以下命令:

 

创建数据库安装的准备工作:

1,创建user/group;

groupadd dba

groupadd oinstall

useradd oracle -goinstall -G dba

(初始组为 oinstall, 附加组 dba 一个是控制软件安装,补丁安装等的;另一个是控制数据库创建,数据库管理等的。可以将两个权限都授权给dba组,只创建dba一个组就可以了)

passwd oracle

 

如果nobody用户不存在(idnobody命令查看),则创建:

useradd nobody

( 首先nobody是一个普通用户,非特权用户。 使用nobody用户名的目的是,使任何人都可以登录系统,但是其UID和GID不提供任何特权,即该uid和gid只能访问人人皆可读写的文件。其次,许多系统中都按惯例地默认创建一个nobody,尽量限制它的权限至最小,当服务器向外服务时,可能会让client以nobody的身份登录)

 

2,建立oracle安装文件夹(sample);

mkdir -p/home/opt/oracle/product/10g

mkdir/home/opt/oracle/database

chown -Roracle.oinstall  /home/opt/oracle

chmod 755 -R/home/opt/oracle

 

3,配置环境变量;

要使用 Oracle 产品,应该或必须设置几个环境变量。

如果您在同一服务器上安装了多个 Oracle 产品或数据库,则ORACLE_HOME、ORACLE_SID 和 PATH 变量可能会更改。

ORACLE_BASE 变量不应更改,并可以在需要时在您的登录配置文件中设置它。Oracle 提供了一个称作oraenv 的实用程序来设置其他变量。

对于数据库服务器,建议设置以下环境变量:

使用Oracle用户登陆:

su - oracle

vi ~/.bash_profile

以下是配置文件的内容

exportORACLE_BASE=/home/opt/oracle/

exportORACLE_HOME=/home/opt/oracle/product/10g

exportORACLE_SID=orcl

exportPATH=$ORACLE_HOME/bin:$PATH     

 

配置好后用 source .bash_profile 命令使配置生效 

 

4,设置系统参数;

Oracle 数据库 10g 需要以下所示的内核参数设置。

其中给出的是最小值,因此如果您的系统使用的值较大,则不要更改它。

 

su - root

A) 修改/etc/sysctl.conf   (vi /etc/sysctl.conf), 添加:

 

kernel.shmmax =2147483648

kernel.shmmni =4096

kernel.shmall =2097152

kernel.sem = 25032000 100 128

fs.file-max = 65536

net.ipv4.ip_local_port_range= 1024 65000

net.core.rmem_default=262144

net.core.rmem_max=262144

net.core.wmem_default=262144

net.core.wmem_max=262144

 

修改后运行"/sbin/sysctl -p"命令使得内核改变立即生效;

 

 

对每个参数值做个简要的解释和说明。

    (1)shmmax:该参数定义了共享内存段的最大尺寸(以字节为单位)。缺省为32M,对于oracle来说,该缺省值太低了,通常将其设置为2G。

    (2)shmmni:这个内核参数用于设置系统范围内共享内存段的最大数量。该参数的默认值是 4096 。通常不需要更改。

    (3)shmall:该参数表示系统一次可以使用的共享内存总量(以页为单位)。缺省值就是2097152,通常不需要修改。

    (4)sem:该参数表示设置的信号量。

    (5)file-max:该参数表示文件句柄的最大数量。文件句柄设置表示在linux系统中可以打开的文件数量。

 

B) 设置oracle对文件的要求:

编辑文件:vi /etc/security/limits.conf 加入以下语句:

oracle           soft    nproc           2047

oracle           hard    nproc           16384

oracle           soft    nofile          1024

oracle           hard    nofile          65536

 

limits.conf的格式如下:

username|@groupnametype resource limit

 

username|@groupname:设置需要被限制的用户名,组名前面加@和用户名区别。也可以用通配符*来做所有用户的限制。

 

type:有 soft,hard 和 -,soft 指的是当前系统生效的设置值。hard 表明系统中所能设定的最大值。soft的限制不能比hard 限制高。用 - 就表明同时设置了soft 和 hard 的值。

 

resource:

core - 限制内核文件的大小

date - 最大数据大小

fsize - 最大文件大小

memlock - 最大锁定内存地址空间

nofile - 打开文件的最大数目

rss - 最大持久设置大小

stack - 最大栈大小

cpu - 以分钟为单位的最多 CPU 时间

noproc - 进程的最大数目

as - 地址空间限制

maxlogins - 此用户允许登录的最大数目

 

编辑文件:vi /etc/pam.d/login   linux操作系统的登陆配置文件。

session    required    /lib/security/pam_limits.so

 

session required/lib/security/pam_limits.so

这是告诉Linux在用户完成系统登录后,应该调用pam_limits.so模块来设置系统对该用户可使用的各种资源数量的最大限制(包括用户可打开的最大文件数限制),而pam_limits.so模块就会从/etc/security/limits.conf文件中读取配置来设置这些限制值。修改完后保存此文件


接着下面的

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值