第 1 部分:安装 Oracle Enterprise Linux 5
本部分介绍了如何在您的硬件上安装 Oracle Enterprise Linux 5 (OEL5)。请花点时间确保您的硬件满足 Oracle 数据库 11g 第 1 版所需的最低硬件要求。
最低硬件要求:
32 位 (x86)
- x86 兼容 CPU
- 1 GB RAM
- 10 GB 的可用磁盘空间(3.5 GB 用于 Oracle 软件 + 1.5 GB 用于数据库 + 3 GB 用于 OEL5 + 2 GB 交换空间)
64 位 (x86_64)
- x86_64 兼容 CPU
- 1 GB RAM
- 10.5 GB 的可用磁盘空间(4 GB 用于 Oracle 软件 + 1.5 GB 用于数据库 + 3 GB 用于 OEL5 + 2 GB 交换空间)
注:Linux 和 Oracle 必须安装在同一体系结构上。32 位 Oracle 只能运行于 32 位 Linux 之上,64 位 Oracle 只能运行于 64 位 Linux 之上。
现在,我们将逐步演示在服务器上安装 Linux 操作系统的过程。本文假设进行 Linux 系统全新安装(有别于升级),并假设服务器为 Oracle 所专用,且服务器上没有其他操作系统或数据。
Oracle 数据库 11g 第 1 版经认证可以在不需要更新的情况下运行 OEL5 的基本版本。可以免费下载 OEL5。
- 使用第一张 CD 或 DVD 启动服务器。
- 您可能需要更改 BIOS 设置,以允许从 CD/DVD 启动。
- 启动屏幕出现,并在底部显示 {{boot:}}提示符。
- 选择 Enter,从控制台上执行图形安装。
- #* 安装程序扫描您的硬件
- Oracle Enterprise Linux splash 屏幕
- 单击 Next
- 语言选择
- 接受默认值。
- 配置键盘
- 接受默认值。
- 安装或升级
- 选择 Install 并单击 Next
- 设置磁盘分区
- 本指南不介绍磁盘分区的详细方法,而是假设您熟悉磁盘分区方法。
警告:对磁盘进行错误分区是删除硬盘上所有内容的最可靠、最快捷的方法之一。如果不确定如何分区,请先停下来,找人帮帮您,否则您将冒丢失数据的危险!) - 接受默认的分区布局。注意,默认布局适用于评估,但不一定适用于其他目的。默认布局可能会创建一个交换分区,该分区比 Oracle 指南推荐的要小。这对于评估来说也已足够。
- 本指南不介绍磁盘分区的详细方法,而是假设您熟悉磁盘分区方法。
- 网络配置
- 通常情况下,最好使用静态 IP 地址配置数据库服务器。为此,单击 Edit。
- 出现一个弹出窗口。取消选中 Configure using DHCP 复选框,并输入服务器的 IP 地址和网络掩码。确保选中Activate on boot,然后单击 OK。
- 在 Hostname 框中,选择 manually 并输入主机名。
- 在 Miscellaneous Settings 框中,输入其他网络设置。
- 选择时区
- 选择适合您区域的时间设置。将系统时钟设置为 UTC 对服务器而言通常是一个很好的做法。为此,选择 System clock uses UTC。
- 设置 Root 口令
- 输入 root 的口令,并再次输入以进行确认。
- 软件包安装
- 本指南将采用 Oracle 推荐的"默认 RPM"安装。接受默认的软件选择,并单击 Next。
- 还需要安装额外的 RPM 以运行 Oracle 数据库 11g 第 1 版。它们将稍后安装。
- 安装程序包
- 软件将被复制到硬盘并被安装。提示更换磁盘。
- 软件安装结束后
- 取出所有 CD/DVD 启动介质。
- 单击 Next。
- 欢迎参加甲骨文开发者大会
- 单击 Forward
- 许可协议
- 阅读许可协议。如果同意其中的条款,选择 Yes, I agree to the License Agreement 并单击Forward。
- 配置防火墙
- 出于本演示的需要,将不配置防火墙。选择 Disabled 并单击 Forward。
- 当出现"Warning - No Firewall"窗口时,单击 Yes。
- SELinux
- 从下拉菜单中选择 Disabled 并单击 Forward。
- Kdump
- 不要启用 Kdump。接受默认设置并单击 Forward。
- 日期和时间
- 设置日期和时间。
- 如果要使用 NTP 服务器(推荐),则选择 Enable Network Time Protocol 并输入 NTP 服务器的名称。
- 系统用户
- 为自己创建一个帐户。
- 此时不要为 oracle 创建帐户。本部分稍后将介绍如何创建 oracle 帐户。
- 声卡
- 如果有声卡,对其进行配置并单击 Forward。
- 其他 CD
- 单击 Finish。
- 系统将重启
- 出现一个图形登录屏幕。
- 恭喜!您的 OEL5 软件现已安装完毕。
安装必需的软件包
额外的 Linux 软件程序包必须在安装 Oracle 软件之前完成安装。程序包的要求对 32 位和 64 位体系结构而言各不相同,因此本部分包含针对每种体系结构的单独说明。
32 位 (x86) 安装
所需内核版本:2.6.18。该内核或其他更新的内核可用于 Oracle 数据库 11g 第 1 版。
通过运行以下命令检查内核版本: uname -r
Ex:
- uname -r
2.6.18-8.el5所需程序包版本(或更高):
- compat-libstdc++-33-3.2.3-61
- elfutils-libelf-0.125-3.el5
- elfutils-libelf-devel-0.125-3.el5
- glibc-2.5-12
- glibc-devel-2.5-12
- glibc-common-2.5-12
- gcc-4.1.1-52.el5
- gcc-c++-4.1.1-52.el5
- libgcc-4.1.1-52.el5
- libaio-0.3.106-3.2
- libaio-devel-0.3.106-3.2
- libstdc++-4.1.1-52.el5
- libstdc++-devel-4.1.1-52.el5
- unixODBC-2.2.11-7.1
- unixODBC-devel-2.2.11-7.1
- sysstat-7.0.0-3.el5
- binutils-2.17.50.0.6-2.el5
- make-3.81-1.1
如果您已经按照 Oracle 的建议执行了"默认 RPM"安装,则还需要安装一些必需的程序包:
- compat-libstdc++-33
- elfutils-libelf-devel
- glibc-devel-2.5
- gcc
- gcc-c++
- libaio-devel
- libstdc++-devel
- unixODBC
- unixODBC-devel
- sysstat
要安装其余的程序包,加载 Oracle Enterprise Linux 介质,然后转到包含 RPM 的目录。
某些必需的程序包依赖于其他程序包,因此依赖程序包也必须安装。以 root 身份登录,运行下面的命令,以安装其余的必需程序包及它们依赖的程序包:
第 2 部分:针对 Oracle 配置 Linux
Linux 软件现已安装完毕,您需要针对 Oracle 对其进行配置。本部分将逐步讲解针对 Oracle 数据库 11g 第 1 版配置 Linux 的过程。
创建 Oracle 组和用户帐户
接下来,创建用于安装和维护 Oracle 数据库 11g 第 1 版软件的 Linux 组和用户帐户。用户帐户将称为 oracle,而组将称为 oinstall 和 dba。以 root 用户身份执行以下命令: /usr/sbin/groupadd oinstall
/usr/sbin/groupadd dba
/usr/sbin/useradd -m -g oinstall -G dba oracle
id oracle
Ex:
- /usr/sbin/groupadd oinstall
- /usr/sbin/groupadd dba
- /usr/sbin/useradd -m -g oinstall -G dba oracle
- id oracle
uid=501(oracle) gid=502(oinstall) groups=502(oinstall),503(dba)
设置 oracle 帐户的口令: passwd oracle
Ex:
- passwd oracle
Changing password for user oracle.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.
创建目录
现在创建目录来存放 Oracle 数据库 11g 第 1 版软件及数据库文件。本指南在创建目录结构时所用的命名惯例符合最佳灵活结构 (OFA) 规范。有关 OFA 标准的更多信息,请参阅针对 Linux 的 Oracle 数据库安装指南 11g 第 1 版 (11.1) 的附录 D。
以下假设在根文件系统中创建目录。这样做是为了简便起见,不建议将其作为通用做法。这些目录通常被创建为单独的文件系统。
以 root 用户身份执行以下命令: mkdir -p /u01/app/oracle
chown -R oracle:oinstall /u01/app
chmod -R 775 /u01/app
配置 Linux 内核参数
Oracle 数据库 11g 第 1 版需要以下所示的内核参数设置。给出的值都为最小值,因此如果您的系统使用一个更大的值,则不要进行更改。Linux 允许在系统启动并运行时修改大多数内核参数,所以无需在修改内核参数后重启系统。 kernel.shmall = 2097152
kernel.shmmax = 536870912
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default=4194304
net.core.wmem_default=262144
net.core.rmem_max=4194304
net.core.wmem_max=262144
注意,OEL 5 已经为 kernel.shmall 和 kernel.shmmax 定义了值。如果默认值等于或大于要求值,则使用默认值。
如果您按照以上说明安装了 Linux,且内核参数全部采用默认值,则只需在以 root 用户身份登录后执行下命令。 cat >> /etc/sysctl.conf <<EOF
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default=4194304
net.core.wmem_default=262144
net.core.rmem_max=4194304
net.core.wmem_max=262144
EOF
/sbin/sysctl -p
Ex:
- cat >> /etc/sysctl.conf <<EOF
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default=262144
> kernel.shmmni = 4096
> kernel.sem = 250 32000 100 128
> fs.file-max = 65536
> net.ipv4.ip_local_port_range = 1024 65000
> net.core.rmem_default=4194304
> net.core.wmem_default=262144
> net.core.rmem_max=4194304
> net.core.wmem_max=262144
> EOF - /sbin/sysctl -p
net.ipv4.ip_forward = 0
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
kernel.sysrq = 0
kernel.core_uses_pid = 1
net.ipv4.tcp_syncookies = 1
kernel.msgmnb = 65536
kernel.msgmax = 65536
kernel.shmmax = 4294967295
kernel.shmall = 268435456
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default = 4194304
net.core.wmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_max = 262144
以 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 rmem_default
/sbin/sysctl -a | grep rmem_max
/sbin/sysctl -a | grep wmem_default
/sbin/sysctl -a | grep wmem_max
Ex:
- /sbin/sysctl -a | grep shm
kernel.shmmni = 4096
kernel.shmall = 268435456
kernel.shmmax = 4294967295
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 - /sbin/sysctl -a | grep rmem_default
net.core.rmem_default = 4194304 - /sbin/sysctl -a | grep rmem_max
net.core.rmem_max = 4194304 - /sbin/sysctl -a | grep wmem_default
net.core.wmem_default = 262144 - /sbin/sysctl -a | grep wmem_max
net.core.wmem_max = 262144
为 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
修改 bash 和 ksh 的默认配置文件以及 cshell 的默认登录脚本。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
第 3 部分:安装 Oracle
Oracle 数据库 11g 第 1 版可以从 OTN 下载获得。Oracle 提供了一个免费的开发和测试许可。但不提供支持,且该许可不允许用于生产目的。OTN 提供了完整的许可协议。
要使 Oracle 数据库 11g 第 1 版发行套件介质可以在服务器上使用,最简单的方法是将其直接下载到服务器。
使用图形登录以 oracle 用户身份登录。
创建一个目录以存放 Oracle 数据库 11g 第 1 版发行套件: mkdir 11gR1_db
要从 OTN 上下载 Oracle 数据库 11g 第 1 版,将浏览器转到 Oracle 数据库下载页面。阅读 OTN 许可协议。如果您接受限制和许可协议,则单击Accept License Agreement。
单击 Linux x86 链接(32 位)或 Linux x86-64 链接(64 位),然后将文件保存在您专门为此创建的目录下 (11gR1_db) — 如果您尚未登录 OTN,此时可能会提示您进行登录。
解压缩此文件。cd 11gR1_db
For 32-bit
unzip linux_11gR1_database.zip
For 64-bit
unzip linux.x64_11gR1_database.zip
安装软件并创建数据库
使用 oracle 帐户登录。
转到包含 Oracle 数据库 11g 第 1 版软件的目录。 Ex:
$ cd $HOME/11gR1_db/database
启动 Oracle 通用安装程序。 $ ./runInstaller
- 选择安装方式
- 选择 Basic Installation
- Oracle Base 的位置:/u01/app/oracle
- Oracle Home 位置:/u01/app/oracle/product/11.1.0/db_1
- 安装类型:Enterprise Edition (3.3GB)
- UNIX DBA 组:dba
- 确保选中 Create Starter Database
- 全局数据库名称:demo1
- 输入数据库口令并确认口令
- 单击 Next
- 指定清单目录和凭证
- 清单目录:/u01/app/oraInventory
- #* 操作系统组名:oinstall
- 单击 Next
- 产品特定的前提条件检查
- 如果您一直在依循本指南中的步骤,则所有检查都应顺利通过。如果进行 OEL5 安装时使用的是默认分区布局,您可能会收到一个与交换文件大小有关的警告。该警告可以忽略。如果一次或多次检查失败,应在继续操作前进行更正。
- 单击 Next
- Oracle 配置管理器注册
- 针对该演示,保留禁用状态并单击 Next
- 总结
- 显示已安装产品的摘要。
- #* 单击 Install。
- 安装
- 将显示安装进度
- 配置助理
- Oracle Net、Oracle 数据库与 iSQL*Plus 配置助手会自动运行
- 记下 Database Configuration Assistant 弹出窗口中的信息,并单击 OK。
- 执行配置脚本
- 在安装的结尾,将弹出一个窗口,提示需要以 root 用户身份运行脚本。以 root 用户身份登录,运行提示的脚本。
- 完成后单击 OK。
- 安装结束
- 记下摘要中显示的 URL,并在准备好时单击 Exit。
- 恭喜!您的 Oracle 数据库 11g 第 1 版数据库现在已经就绪,可以使用了。