在Linux系统上安装Oracle数据库是一个复杂的过程,涉及多个步骤和配置。以下是一个详细的安装步骤解析:
1. 准备工作
硬件要求
内存:至少4GB(建议8GB以上)
CPU:至少2.0GHz(建议2.4GHz以上)
硬盘:至少300GB(建议500GB以上)
软件要求
操作系统:Red Hat Enterprise Linux 7.x 或 CentOS 7.x
Oracle数据库版本:Oracle Database 12c 或更高版本
JDK:Java Development Kit,版本1.7或更高
安装依赖包
sudo yum install -y binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel make sysstat
创建Oracle用户和组
sudo groupadd oinstall
sudo groupadd dba
sudo useradd -g oinstall -G dba oracle
sudo passwd oracle
配置内核参数
编辑 /etc/sysctl.conf 文件,添加以下内容:
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 4294967295
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
运行以下命令使修改内核参数生效:
sudo sysctl -p
配置用户限制
编辑 /etc/security/limits.conf 文件,添加以下内容:
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
2. 安装Oracle数据库
下载并解压Oracle安装文件
从Oracle官方网站下载适用于Linux的Oracle安装文件,并解压到指定目录。
wget [Oracle安装文件链接] -P /tmp
unzip /tmp/[Oracle安装文件名].zip -d /tmp/
运行安装程序
以Oracle用户身份运行安装程序:
su - oracle
cd /tmp/[Oracle安装文件名]/database
./runInstaller
创建数据库
安装完成后,使用SQL*Plus创建数据库:
sqlplus / as sysdba
CREATE DATABASE your_database_name
USER sys IDENTIFIED BY password
USER system IDENTIFIED BY password
CONTROLFILE REUSE
LOGFILE GROUP 1 ('/u01/app/oracle/oradata/orcl/redo01.log') SIZE 50M,
GROUP 2 ('/u01/app/oracle/oradata/orcl/redo02.log') SIZE 50M,
GROUP 3 ('/u01/app/oracle/oradata/orcl/redo03.log') SIZE 50M
MAXLOGFILES 5
MAXLOGMEMBERS 5
MAXLOGHISTORY 1
MAXDATAFILES 100
CHARACTER SET AL32UTF8
NATIONAL CHARACTER SET AL16UTF16
EXTENT MANAGEMENT LOCAL
DATAFILE '/u01/app/oracle/oradata/orcl/system01.ctl' SIZE 700M
SYSAUX DATAFILE '/u01/app/oracle/oradata/orcl/sysaux01.ctl' SIZE 500M
DEFAULT TABLESPACE users
DATAFILE '/u01/app/oracle/oradata/orcl/users01.ctl'
SIZE 500M REUSE
DEFAULT TEMPORARY TABLESPACE temp
TEMPFILE '/u01/app/oracle/oradata/orcl/temp01.ctl'
SIZE 20M REUSE
UNDO TABLESPACE undotbs
DATAFILE '/u01/app/oracle/oradata/orcl/undotbs01.ctl'
SIZE 200M REUSE;
配置监听器和数据库实例
使用 netca 和 dbca 工具配置监听器和数据库实例。
$ORACLE_HOME/bin/netca
$ORACLE_HOME/bin/dbca
3. 验证安装
连接数据库
sqlplus username/password@your_database_name
查询版本信息
SELECT * FROM v$version;
[1,4,5,6,7,8,9,10,11,12]