在CentOS系统上安装Oracle数据库是一个复杂的过程,需要仔细规划和执行。以下是一个基本的指南,帮助你在CentOS上安装Oracle数据库。请注意,这个指南是一个通用的参考,具体的安装步骤可能会因版本和系统配置的不同而有所变化。
确保你的CentOS系统满足Oracle的最低硬件和软件要求。例如,CentOS 7或CentOS 8是推荐的版本,至少需要2GB的内存和20GB的磁盘空间。
sudo yum update -y
sudo yum install 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
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
编辑 /etc/pam.d/login
文件,添加以下内容:
session required pam_limits.so
sudo mkdir -p /u01/app/oracle
sudo chown -R oracle:oinstall /u01
sudo chmod -R 775 /u01
访问Oracle官方网站,下载适合你的CentOS版本的Oracle数据库安装包。例如,对于Oracle 19c,你可以下载以下包:
linux.x64_193000_db_home.zip
oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm
oracle-database-ee-19c-1.0-1.x86_64.rpm
cd /tmp
unzip linux.x64_193000_db_home.zip
以 oracle
用户登录,编辑 .bash_profile
文件:
vi /home/oracle/.bash_profile
添加以下内容:
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/product/19.3.0/dbhome_1
export ORACLE_SID=orcl
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
使环境变量生效:
source /home/oracle/.bash_profile
以 oracle
用户运行安装程序:
cd $ORACLE_HOME
./runInstaller
选择“创建和配置数据库”,然后按照屏幕上的指示完成配置过程。
cd /u01/app/oracle/product/19.3.0/dbhome_1/bin
./dbca
sudo systemctl start oracle-database-preinstall
sudo systemctl start oracle-database-ee-19c
使用 sqlplus
连接到Oracle数据库,并执行一些简单的SQL语句来验证数据库安装是否成功。
sqlplus / as sysdba
SQL startup
SQL select instance_name from vinstance;
以上步骤提供了一个基本的框架,但在实际操作中可能需要根据具体情况进行调整。建议参考Oracle官方文档以获取更详细的指导。