CentOS环境下Oracle数据库配置实战教程
一、前置准备
1. 系统要求确认
- 基础环境:确保CentOS系统(推荐7/8/9版本,64位)已更新至最新状态(
yum update -y)。 - 硬件要求:
- 内存:至少1GB(生产环境推荐4GB以上);
- 硬盘:至少10GB可用空间(数据文件、日志文件占用较大);
- Swap分区:建议不小于2GB(可通过
free -h查看,不足则创建:dd if=/dev/zero of=/swapfile bs=1M count=2048,mkswap /swapfile,swapon /swapfile,并添加到/etc/fstab永久生效)。
2. 关键配置调整
- 修改主机名(可选但推荐):
sudo hostnamectl set-hostname oracle-db # 设置主机名 echo "127.0.0.1 oracle-db" | sudo tee -a /etc/hosts # 映射IP与主机名 - 关闭SELinux(Oracle对SELinux支持有限):
sudo setenforce 0 # 临时关闭 sudo sed -i 's/SELINUX=.*/SELINUX=disabled/' /etc/selinux/config # 永久关闭 - 禁用防火墙(测试环境,生产环境需放行端口):
sudo systemctl stop firewalld sudo systemctl disable firewalld
3. 安装必要依赖包
Oracle数据库需要多个系统库支持,使用以下命令安装:
sudo yum install -y binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libXi libXtst make sysstat unixODBC unixODBC-devel pcre-devel
注:依赖包版本需与Oracle版本兼容,建议参考Oracle官方文档。
二、Oracle用户与环境配置
1. 创建用户与组
Oracle需以专用用户运行,避免权限问题:
sudo groupadd oinstall # 归属组
sudo groupadd dba # 数据库管理员组
sudo useradd -g oinstall -G dba oracle # 创建oracle用户,归属oinstall组,附加dba组
sudo passwd oracle # 设置密码(如Oracle123)
2. 创建安装与数据目录
建议将Oracle软件与数据分开存储,提升管理效率:
sudo mkdir -p /u01/app/oracle/product/19.3.0/dbhome_1 # Oracle软件目录
sudo mkdir -p /u01/app/oracle/oradata # 数据文件目录
sudo chown -R oracle:oinstall /u01 # 所有权赋给oracle用户
sudo chmod -R 775 /u01 # 设置读写权限
3. 配置Oracle环境变量
编辑oracle用户的.bashrc文件,添加以下内容:
sudo vi /home/oracle/.bashrc
插入以下配置(根据实际路径调整):
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/19.3.0/dbhome_1
export ORACLE_SID=orcl
export PATH=$PATH:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH
export LANG=en_US.UTF-8
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
使配置生效:
source /home/oracle/.bashrc
三、Oracle安装过程
1. 下载并解压安装包
从Oracle官网下载对应版本的Linux x64安装包(如19c),上传至服务器并解压:
unzip linux.x64_193000_db_home.zip -d /u01/app/oracle/
2. 运行安装程序
切换至oracle用户,进入安装目录执行安装脚本:
su - oracle
cd /u01/app/oracle/database
./runInstaller
按照向导操作:
- 选择“安装数据库软件”→“单实例数据库安装”;
- 选择“企业版”(适合生产环境);
- 指定Oracle基目录(
/u01/app/oracle)和产品目录(/u01/app/oracle/product/19.3.0/dbhome_1); - 勾选“创建和配置数据库”(简化后续步骤);
- 设置数据库标识(SID,默认
orcl)、字符集(推荐AL32UTF8); - 配置管理员密码(如Oracle123);
- 完成安装后,根据提示运行
/u01/app/oracle/product/19.3.0/dbhome_1/root.sh(root用户执行)。
四、数据库配置与启动
1. 配置监听器(可选,安装时已自动配置)
监听器负责接收客户端连接请求,编辑listener.ora文件:
vi $ORACLE_HOME/network/admin/listener.ora
确保内容如下(根据IP调整):
LISTENER =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
启动监听器:
lsnrctl start
设置开机自启:
sudo systemctl enable lsnrctl
2. 创建数据库实例(可选,安装时已自动创建)
若未在安装时创建数据库,可使用DBCA工具手动创建:
dbca
按照向导操作:
- 选择“创建数据库”→“自定义数据库”;
- 设置全局数据库名(如
orcl.localdomain)、SID(orcl); - 选择字符集(
AL32UTF8); - 设置管理员密码;
- 完成创建后,数据库将自动启动。
3. 启动数据库实例
使用SQL*Plus连接并启动:
sqlplus / as sysdba
在SQL*Plus中执行:
STARTUP
若需设置开机自启,可创建systemd服务(以Oracle 19c为例):
sudo vi /etc/systemd/system/oracle-database.service
插入以下内容:
[Unit]
Description=Oracle Database Service
After=network.target
[Service]
Type=forking
User=oracle
Group=oinstall
Environment="ORACLE_HOME=/u01/app/oracle/product/19.3.0/dbhome_1"
Environment="ORACLE_SID=orcl"
ExecStart=/u01/app/oracle/product/19.3.0/dbhome_1/bin/dbstart $ORACLE_HOME
ExecStop=/u01/app/oracle/product/19.3.0/dbhome_1/bin/dbshut $ORACLE_HOME
Restart=on-failure
[Install]
WantedBy=multi-user.target
启用并启动服务:
sudo systemctl enable oracle-database
sudo systemctl start oracle-database
五、验证安装
使用SQL*Plus连接数据库,验证是否成功:
sqlplus / as sysdba
执行以下SQL语句:
SELECT status FROM v$instance; -- 查看实例状态(应为OPEN)
SELECT * FROM dual; -- 测试基本查询
若状态为OPEN且能正常查询,说明安装成功。
六、常见问题排查
1. 监听器无法启动
- 原因:内核参数配置错误或端口被占用。
- 解决方法:检查
/etc/sysctl.conf中的参数(如kernel.shmmax、net.ipv4.ip_local_port_range),执行sysctl -p使配置生效;使用netstat -tulnp | grep 1521查看端口占用情况,杀掉占用进程。
2. 无法连接数据库
- 原因:监听器未启动、SID错误或权限不足。
- 解决方法:确认监听器已启动(
lsnrctl status);检查ORACLE_SID环境变量是否正确;确保oracle用户有访问数据库的权限。
3. 依赖包缺失
- 原因:安装前未安装所有必要依赖包。
- 解决方法:根据错误提示安装缺失的包(如
libaio、compat-libstdc++),使用yum search 包名查找对应包。
以上就是关于“centos oracle配置实战教程”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm