CentOS4安装oracle 10g创建帐户与配置Linux内核参数
原创CentOS 4 安装 Oracle 10g 创建帐户与配置 Linux 内核参数
随着信息化时代的到来,Oracle 数据库因其稳定性和高性能,在企业级应用中得到了广泛的应用。本文将详细介绍怎样在 CentOS 4 操作系统上安装 Oracle 10g 数据库,并创建用户以及配置 Linux 内核参数,以确保数据库的稳定运行。
一、准备工作
1. **硬件要求**:采取 Oracle 官方文档,Oracle 10g 数据库对硬件的要求如下:
- CPU:Intel 或兼容处理器
- 内存:至少 512MB,推荐 1GB 以上
- 硬盘:至少 3GB 的可用空间
2. **软件要求**:确保您的 CentOS 4 操作系统已更新至最新版本,并安装以下软件包:
- glibc
- glibc-common
- glibc-devel
- libaio
- libaio-devel
- ksh
- sysstat
您可以使用以下命令检查是否已安装上述软件包:
bash
rpm -qa | grep -E 'glibc|glibc-common|glibc-devel|libaio|libaio-devel|ksh|sysstat'
如果未安装,请使用以下命令进行安装:
bash
yum install -y glibc glibc-common glibc-devel libaio libaio-devel ksh sysstat
二、安装 Oracle 10g
1. **下载 Oracle 10g 安装包**:从 Oracle 官方网站下载 Oracle 10g 安装包,并将其上传到 CentOS 4 服务器。
2. **创建 Oracle 用户和组**:在 CentOS 4 上创建 Oracle 用户和组,以便安装 Oracle 数据库。
bash
groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
3. **设置环境变量**:为 Oracle 用户设置环境变量,以便在安装过程中使用。
bash
echo 'export ORACLE_HOME=/u01/oracle' >> /home/oracle/.bash_profile
echo 'export ORACLE_BASE=/u01/oracle' >> /home/oracle/.bash_profile
echo 'export ORACLE_SID=ORCL' >> /home/oracle/.bash_profile
echo 'export PATH=$PATH:$ORACLE_HOME/bin' >> /home/oracle/.bash_profile
echo 'export LD_LIBRARY_PATH=$ORACLE_HOME/lib' >> /home/oracle/.bash_profile
source /home/oracle/.bash_profile
4. **运行 Oracle Universal Installer**:切换到 Oracle 用户,并运行 Oracle Universal Installer。
bash
su - oracle
cd $ORACLE_HOME
./runInstaller
5. **安装 Oracle Database**:按照 Oracle Universal Installer 的提示完成安装过程。
三、创建 Oracle 帐户
1. **切换到 Oracle 用户**:切换到 Oracle 用户。
bash
su - oracle
2. **启动 SQL*Plus**:启动 SQL*Plus,创建新的 Oracle 帐户。
bash
sqlplus /nolog
3. **连接到系统**:连接到 Oracle 系统并创建新用户。
sql
connect / as sysdba
4. **创建用户**:
sql
CREATE USER username IDENTIFIED BY password;
5. **授权**:
sql
GRANT CONNECT, RESOURCE TO username;
6. **退出 SQL*Plus**:
sql
EXIT
四、配置 Linux 内核参数
为了确保 Oracle 数据库的稳定运行,我们需要对 Linux 内核参数进行优化。以下是一些推荐的内核参数:
1. **调整最大文件描述符**:
bash
echo 'fs.file-max = 65536' >> /etc/sysctl.conf
sysctl -p
2. **调整内核参数**:
bash
echo 'net.ipv4.tcp_fin_timeout = 30' >> /etc/sysctl.conf
echo 'net.ipv4.tcp_tw_reuse = 1' >> /etc/sysctl.conf
echo 'net.ipv4.tcp_tw_recycle = 1' >> /etc/sysctl.conf
echo 'net.ipv4.tcp_max_syn_backlog = 1024' >> /etc/sysctl.conf
echo 'net.ipv4.tcp_max_tw_buckets = 5000' >> /etc/sysctl.conf
echo 'vm.swappiness = 10' >> /etc/sysctl.conf
sysctl -p
3. **调整 ulimit**:
bash
echo 'oracle hard nofile 65536' >> /etc/security/limits.conf
echo 'oracle soft nofile 65536' >> /