在 Linux x86 上安装 Oracle 数据库 10g_2

 

如果您按照以上说明安装了 Linux,且内核参数全部采用默认值,则只需在以 root 用户身份登录后执行下命令。

cat >> /etc/sysctl.conf <<EOF

kernel.shmall = 2097152

kernel.shmmax = 2147483648

kernel.shmmni = 4096

kernel.sem = 250 32000 100 128

fs.file-max = 65536

net.ipv4.ip_local_port_range = 1024 65000

EOF

/sbin/sysctl -p

 

例如:

# cat >> /etc/sysctl.conf <<EOF

> kernel.shmall = 2097152

> kernel.shmmax = 2147483648

> kernel.shmmni = 4096

> kernel.sem = 250 32000 100 128

> fs.file-max = 65536

> net.ipv4.ip_local_port_range = 1024 65000

> EOF

# /sbin/sysctl -p

net.ipv4.ip_forward = 0

net.ipv4.conf.default.rp_filter = 1

kernel.sysrq = 0

kernel.shmall = 2097152

kernel.shmmax = 2147483648

kernel.shmmni = 4096

kernel.sem = 250 32000 100 128

fs.file-max = 65536

net.ipv4.ip_local_port_range = 1024 65000

root 用户身份运行以下命令来验证您的设置:

/sbin/sysctl -a | grep shm

/sbin/sysctl -a | grep sem

/sbin/sysctl -a | grep file-max

/sbin/sysctl -a | grep ip_local_port_range

 

例如:

# /sbin/sysctl -a | grep shm

kernel.shmmni = 4096

kernel.shmall = 2097152

kernel.shmmax = 2147483648

kernel.shm-use-bigpages = 0

# /sbin/sysctl -a | grep sem

kernel.sem = 250        32000   100     128

# /sbin/sysctl -a | grep file-max

fs.file-max = 65536

# /sbin/sysctl -a | grep ip_local_port_range

net.ipv4.ip_local_port_range = 1024     65000

如果系统的参数设置的比上述参数值小,则编辑 /etc/sysctl.conf 文件,添加或更改这些参数。完成后,运行以下命令激活更改:

/sbin/sysctl -p

对于 SLES 8,在完成以上步骤后运行以下命令。

/sbin/chkconfig boot.sysctl on

oracle 用户设置 Shell 限制

Oracle 建议对每个 Linux 帐户可以使用的进程数和打开的文件数设置限制。要进行这些更改,以 root 用户的身份执行下列命令:

cat >> /etc/security/limits.conf <<EOF

oracle               soft    nproc   2047

oracle               hard    nproc   16384

oracle               soft    nofile 1024

oracle               hard    nofile 65536

EOF

 

cat >> /etc/pam.d/login <<EOF

session    required     /lib/security/pam_limits.so

EOF

对于 RHEL 2.1 RHEL 3,使用以下命令:

cat >> /etc/profile <<EOF

if [ \$USER = "oracle" ]; then 

if [ \$SHELL = "/bin/ksh" ]; then

ulimit -p 16384

ulimit -n 65536

else

ulimit -u 16384 -n 65536

fi

umask 022

fi

EOF

 

cat >> /etc/csh.login <<EOF

if ( \$USER == "oracle" ) then

limit maxproc 16384

limit descriptors 65536

umask 022

endif

EOF

对于 SLES 8,使用以下命令:

cat >> /etc/profile.local <<EOF

if [ \$USER = "oracle" ]; then 

if [ \$SHELL = "/bin/ksh" ]; then

ulimit -p 16384

ulimit -n 65536

else

ulimit -u 16384 -n 65536

fi

umask 022

fi

EOF

 

cat >> /etc/csh.login.local <<EOF

if ( \$USER == "oracle" ) then

limit maxproc 16384

limit descriptors 65536

umask 022

endif

EOF

避免错误!(仅限 SLES 8

SLES 8 上安装 Oracle Enterprise Manager 10g 时存在一个错误由于所需端口以为 /etc/services 所保留而导致安装失败。OEM DBConsole 需要端口 1830,而在 SLES8 环境中,此端口已经为 /etc/services 所保留。此错误在 MetaLink 上的错误号为 3513603

要避免安装过程中出现问题,以 root 用户身份登录,并在安装 Oracle 10g 软件之前将 /etc/services 文件中的端口 1830 1849 对应的行注释掉。(注意:此时,您最好重新启动服务器以确保以上更改生效。)

oracle 用户的环境变量

要使用 Oracle 产品,应该或必须设置几个环境变量。对于数据库服务器,建议设置以下环境变量:

ORACLE_BASE
ORACLE_HOME
ORACLE_SID
PATH

如果您在同一服务器上安装了多个 Oracle 产品或数据库,则 ORACLE_HOMEORACLE_SID PATH 变量可能会更改。ORACLE_BASE 变量不应更改,并可以在需要时在您的登录配置文件中设置它。Oracle 提供了一个称作 oraenv 的实用程序来设置其他变量。

oracle 身份登录,并通过在 .bash_profile .profilebash ksh)中添加以下行,将 ORACLE_BASE 添加到登录配置文件:

ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE

或在 .login (csh) 中添加以下行:

setenv ORACLE_BASE /u01/app/oracle

此更改将在您下次登录到 oracle 帐户时生效。要使更改对当前会话为活动状态,只需从命令行运行此命令。

3 部分:安装 Oracle

可以从 OTN 下载 Oracle 数据库 10gOracle 提供了一个免费的开发和测试许可。但不提供支持,且该许可不允许用于生产目的。OTN 提供了完整的许可协议。

要使 Oracle 10g 发行套件介质可以在服务器上使用,最简单的方法是将其直接下载到服务器。

使用图形登录以 oracle 身份登录。

创建一个目录以存放 Oracle 10g 发行套件:

mkdir 10g_db

要从 OTN 下载 Oracle 数据库 10g,请将浏览器(Mozilla 比较好用)指向 http://www.oracle.com/technology/software/products/database/oracle10g/htdocs/linuxsoft.html。填写 Eligibility Export Restrictions 页面,并阅读 OTN 许可协议。如果您接受限制和许可协议,则单击 I Accept

单击 ship.db.cpio.gz 链接,并将该文件保存在为此目的创建的目录 (10g_db) 如果尚未登录到 OTN,则此时可能提示您登录。

解压缩此文件:

cd 10g_db

gunzip ship.db.cpio.gz

cpio -idmv < ship.db.cpio

安装软件

使用 oracle 帐户登录。

指定数据库名称 (ORACLE_SID)。该名称通常不多于五个字符。对此安装使用 demo1

设置环境变量:

  • Borne shell Korn shell

·                ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE

·                ORACLE_SID=demo1; export ORACLE_SID

  • C shell

·                setenv ORACLE_BASE /u01/app/oracle

·                setenv ORACLE_SID demo1

将目录更改为 Oracle 10g 软件解压缩到的位置。

例如:

$ cd $HOME/10g_db

将目录更改为 Disk1

例如:

$ cd Disk1

上一篇:Android中的动画


下一篇:ShardingSphere系列(一)——ShardingSphere-JDBC初体验