确保Linux发行版为Oracle支持的版本(如Oracle Linux 7.x/8.x、Red Hat Enterprise Linux 7.x/8.x、CentOS 7.x/8.x等),可通过cat /etc/redhat-release
命令确认系统版本。
/u01
挂载点用于Oracle安装);free -h
命令检查。以Oracle Linux为例,使用YUM源安装Oracle预安装包(自动解决依赖):
sudo yum install -y oracle-database-preinstall-19c
若未使用预安装包,需手动安装以下依赖:
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 unixODBC unixODBC-devel
```。
##### **1.4 创建Oracle用户和组**
为Oracle数据库创建专用用户和组,提升安全性:
```bash
sudo groupadd oinstall # 创建oinstall组(Oracle软件所有者)
sudo groupadd dba # 创建dba组(数据库管理员)
sudo useradd -g oinstall -G dba oracle # 创建oracle用户,属于oinstall和dba组
sudo passwd oracle # 设置oracle用户密码
```。
##### **1.5 配置系统内核参数**
编辑`/etc/sysctl.conf`文件,添加以下参数(满足Oracle对内核的要求):
```bash
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
```。
##### **1.6 配置用户资源限制**
编辑`/etc/security/limits.conf`文件,添加以下内容(限制oracle用户的进程、文件数等):
```bash
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
编辑/etc/pam.d/login
文件,确保启用pam_limits
模块:
session required pam_limits.so
```。
##### **1.7 创建安装目录并赋权**
创建Oracle安装目录(如`/u01`),并设置正确的所有权:
```bash
sudo mkdir -p /u01/app/oracle/product/19.0.0/dbhome_1 # 安装目录
sudo chown -R oracle:oinstall /u01 # 所有权归属
sudo chmod -R 775 /u01 # 权限设置
```。
#### **2. 下载并安装Oracle Database软件**
##### **2.1 下载安装包**
访问Oracle官方网站(需登录账号),下载适用于Linux x86_64的Oracle Database安装包(如`LINUX.X64_193000_db_home.zip`)或预编译RPM包(如`oracle-database-ee-19c-1.0-1.x86_64.rpm`)。
##### **2.2 解压或安装软件包**
- **解压安装(手工方式)**:将下载的ZIP包上传至`/u01/app/oracle/product/19.0.0/`目录,解压:
```bash
cd /u01/app/oracle/product/19.0.0/
unzip LINUX.X64_193000_db_home.zip
sudo rpm -ivh oracle-database-ee-19c-1.0-1.x86_64.rpm
```。
切换至oracle
用户,进入安装目录,启动图形化安装向导:
su - oracle
cd /u01/app/oracle/product/19.0.0/dbhome_1
./runInstaller
按照安装向导步骤操作:
ORACLE_BASE
(如/u01/app/oracle
)和ORACLE_HOME
(如/u01/app/oracle/product/19.0.0/dbhome_1
)路径;orcl
)、字符集(推荐AL32UTF8
或ZHS16GBK
)、管理员密码;安装完成后,安装向导会提示以root
用户身份执行以下两个脚本:
sudo /u01/app/oraInventory/orainstRoot.sh # 配置Oracle Inventory目录
sudo /u01/app/oracle/product/19.0.0/dbhome_1/root.sh # 配置系统环境
执行完成后,安装程序会提示“Oracle Database安装成功”。
切换至oracle
用户,编辑~/.bash_profile
文件,添加以下内容:
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/19.0.0/dbhome_1
export ORACLE_SID=orcl # 与安装时设置的数据库名一致
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH
使环境变量生效:
source ~/.bash_profile
```。
##### **5.2 创建数据库实例**
使用Oracle Database Configuration Assistant(DBCA)工具创建数据库:
```bash
dbca
按照向导步骤操作:
orcl
)和SID;AL32UTF8
);/u01/app/oracle/oradata
);使用Net Configuration Assistant(NETCA)配置监听器(若未自动配置):
netca
选择“添加监听程序”,设置监听端口为1521
(默认),完成配置后启动监听器:
lsnrctl start
检查监听器状态:
lsnrctl status
```。
##### **6.2 登录数据库**
使用SQL*Plus工具登录数据库,验证是否安装成功:
```bash
sqlplus / as sysdba
输入命令查看数据库版本:
SELECT * FROM v$version;
若能正常显示版本信息,则说明Oracle Database安装成功。
以上步骤涵盖了Oracle在Linux系统上的完整安装流程,实际操作中需根据具体Linux发行版和Oracle版本调整部分参数(如依赖包名称、安装脚本路径)。建议安装前参考Oracle官方文档(如《Oracle Database安装指南》),确保符合最新要求。