下面给你一个**在 Linux 上部署 Oracle 数据库(以 Oracle 19c 为例,最常见)**的实用流程,适合新手照着做。
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
passwd oracle
vi /etc/sysctl.conf
添加:
fs.file-max = 6815744
kernel.sem = 250 32000 100 128
kernel.shmmax = 4294967295
kernel.shmall = 1073741824
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_max = 4194304
net.core.wmem_max = 1048576
执行:
sysctl -p
vi /etc/security/limits.conf
添加:
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
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
mkdir -p /u01/app/oracle
mkdir -p /u01/app/oraInventory
chown -R oracle:oinstall /u01
chmod -R 775 /u01
例如:
LINUX.X64_193000_db_home.zip
解压:
su - oracle
cd /u01/app/oracle
unzip LINUX.X64_193000_db_home.zip
cd /u01/app/oracle
./runInstaller
/u01/app/oraInventory/orainstRoot.sh
/u01/app/oracle/root.sh
(用 root 执行)
su - oracle
dbca
或静默创建:
dbca -silent -createDatabase \
-templateName General_Purpose.dbc \
-gdbname orcl -sid orcl \
-createAsContainerDatabase false \
-characterSet AL32UTF8 \
-memoryPercentage 40 \
-emConfiguration NONE
su - oracle
vi ~/.bash_profile
添加:
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE
export ORACLE_SID=orcl
export PATH=$ORACLE_HOME/bin:$PATH
source ~/.bash_profile
sqlplus / as sysdba
startup
监听:
lsnrctl start
sqlplus system/密码@localhost:1521/orcl
listener.ora如果你告诉我:
我可以给你更精确的部署方案(含 Docker 方式)。