一、安装前的准备工作
(一)检查系统环境要求
- 操作系统版本:确保 Linux 系统版本与 Oracle 数据库版本兼容,例如 Oracle 19c 在 CentOS 7 上支持良好。
- 内核版本:使用命令
uname -a
查看系统内核版本,确保其符合 Oracle 的最低要求。 - 硬件资源:
- 内存:至少 2GB RAM,推荐 4GB 或更多。
- 硬盘空间:至少 50GB 可用空间,根据安装选项和数据库大小,可能需要更多。
- 依赖库:检查系统是否已安装必需的依赖库,如
libaio
、libstdc++
等。
(二)下载 Oracle 安装文件
- 访问 Oracle 官方网站,找到 Oracle Database 12c 的下载页面。
- 根据 Linux 系统的架构(如 x86_64),下载对应的安装包,通常为
.zip
格式。 - 将下载的文件保存到一个独立的安装文件夹中,例如
/data/file/oracle
。
(三)创建用户和用户组
- 创建
oinstall
和dba
用户组:groupadd oinstall groupadd dba
- 创建
oracle
用户,并将其加入到oinstall
和dba
用户组:useradd -g oinstall -G dba oracle
- 设置
oracle
用户的密码:passwd oracle
(四)系统参数配置
- 修改内核参数:编辑
/etc/sysctl.conf
文件,添加以下内容:
执行fs.file-max = 6815744 fs.aio-max-nr = 1048576 kernel.shmall = 2097152 kernel.shmmax = 2147483648 kernel.shmmni = 4096 kernel.sem = 250 32000 100 128 net.ipv4.ip_local_port_range = 9000 65500 net.core.rmem_default = 4194304 net.core.rmem_max = 4194304 net.core.wmem_default = 262144 net.core.wmem_max = 1048576
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 oracle hard stack 10240
- 修改 PAM 配置:编辑
/etc/pam.d/login
文件,添加以下内容:session required /lib64/security/pam_limits.so session required pam_limits.so
(五)安装依赖包
以 root 用户执行以下命令安装所需的依赖包:
yum -y install binutils compat-libcap1 compat-libstdc++-33 compat-libstdc++-33*i686 compat-libstdc++-33*.devel compat-libstdc++-33 compat-libstdc++-33*.devel gcc gcc-c++ glibc glibc*.i686 glibc-devel glibc-devel*.i686 ksh libaio libaio*.i686 libaio-devel libaio-devel*.devel libgcc libgcc*.i686 libstdc++ libstdc++*.i686 libstdc++-devel libstdc++-devel*.devel libXi libXi*.i686 libXtst libXtst*.i686 make sysstat unixODBC unixODBC*.i686 unixODBC-devel unixODBC-devel*.i686
二、安装 Oracle 数据库
(一)上传并解压安装包
- 创建安装目录并设置权限:
su root mkdir -p /data/file/oracle chown -R oracle:oinstall /data/file/oracle chmod -R 775 /data/file/oracle
- 上传安装包到
/data/file/oracle
目录,例如通过scp
命令:scp -P 12305 root@192.168.1.200:/data/backup/db/oracle/12c/V839960-01.zip /data/file/oracle
- 安装解压工具:
yum install -y unzip zip
- 切换到 oracle 用户并解压文件:
su - oracle unzip /data/file/oracle/V839960-01.zip
(二)配置安装响应文件
- 复制响应文件模板:
mkdir /data/file/oracle/database/etc cp /data/file/oracle/database/response/* /data/file/oracle/database/etc
- 设置响应文件权限:
su root chmod 700 /data/file/oracle/database/etc/*.rsp
- 编辑响应文件
db_install.rsp
:
修改以下关键参数:su - oracle vim /data/file/oracle/database/etc/db_install.rsp
oracle.install.option=INSTALL_DB_SWONLY UNIX_GROUP_NAME=oinstall INVENTORY_LOCATION=/data/server/oracle/oraInventory ORACLE_HOME=/data/server/oracle/product/12/db_1 ORACLE_BASE=/data/server/oracle oracle.install.db.InstallEdition=EE oracle.install.db.OSDBA_GROUP=dba oracle.install.db.OSOPER_GROUP=oinstall oracle.install.db.OSBACKUPDBA_GROUP=oinstall oracle.install.db.OSDGDBA_GROUP=oinstall oracle.install.db.OSKMDBA_GROUP=oinstall oracle.install.db.OSRACDBA_GROUP=oinstall oracle.install.db.config.starterdb.type=GENERAL_PURPOSE oracle.install.db.config.starterdb.globalDBName=orcl oracle.install.db.config.starterdb.SID=orcl oracle.install.db.config.starterdb.memoryLimit=81920 oracle.install.db.config.starterdb.password.ALL=oracle SECURITY_UPDATES_VIA_MYORACLESUPPORT=false DECLINE_SECURITY_UPDATES=true
(三)运行安装脚本
- 切换到安装文件目录:
cd /data/file/oracle/database
- 运行安装脚本:
如果出现权限问题,可使用以下命令添加执行权限:./runInstaller -silent -responseFile /data/file/oracle/database/etc/db_install.rsp
chmod +x runInstaller
(四)配置 Oracle 数据库
- 配置监听器:
- 执行以下命令启动监听器配置工具:
netca
- 按照提示完成监听器的配置,设置端口号(默认为 1521)。
- 执行以下命令启动监听器配置工具:
- 创建数据库实例:
- 执行以下命令启动数据库配置助手:
dbca
- 按照提示完成数据库实例的创建,包括设置数据库名、字符集等信息。
- 执行以下命令启动数据库配置助手:
- 设置环境变量:
- 编辑
/etc/profile
文件,添加以下内容:export ORACLE_HOME=/data/server/oracle/product/12/db_1 export ORACLE_BASE=/data/server/oracle export ORACLE_SID=orcl export PATH=$PATH:$ORACLE_HOME/bin
- 使环境变量生效:
source /etc/profile
- 编辑
三、验证安装
(一)检查服务状态
使用以下命令检查 Oracle 相关服务是否正常启动:
ps -ef | grep ora_pmon
ps -ef | grep ora_tns
如果看到类似以下输出,则表示服务已启动:
oracle 12345 1 0 12:34 ? 00:00:01 ora_pmon_orcl
oracle 12346 1 0 12:34 ? 00:00:01 ora_tns_orcl
(二)登录数据库
使用以下命令以 sys
用户登录数据库:
sqlplus sys/oracle as sysdba
如果成功登录,表示数据库安装和配置成功。
(三)测试数据库功能
在 SQL*Plus 中执行以下命令,测试数据库的基本功能:
SELECT * FROM v$version;
如果能够正常返回 Oracle 数据库的版本信息,则说明数据库功能正常。
四、常见问题及解决方法
(一)安装过程中提示权限不足
- 确保当前用户为
oracle
,并属于oinstall
和dba
用户组。 - 检查安装文件和目录的权限,确保
oracle
用户有足够权限访问。
(二)监听器无法启动
- 检查监听器配置文件
/data/server/oracle/product/12/db_1/network/admin/listener.ora
是否正确。 - 确保监听器端口(默认 1521)未被其他应用占用。
(三)数据库实例无法启动
- 检查数据库实例的告警日志文件,通常位于
/data/server/oracle/diag/rdbms/orcl/orcl/trace
目录下。 - 根据日志中的错误信息进行排查和修复。