在 Debian 上安装 Oracle Database(通常指 Oracle Database 19c / 21c / 23c)不是官方支持的组合。Oracle 官方只支持 RHEL、Oracle Linux、SUSE 等。但可以通过“兼容模式 + 手动安装”在 Debian 上跑起来,常用于开发/测试环境。
下面给你一个实用、可操作的方案(以 Oracle 19c + Debian 11/12 为例)。
sudo groupadd oinstall
sudo groupadd dba
sudo useradd -m -g oinstall -G dba oracle
sudo passwd oracle
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install -y \
alien \
autoconf \
automake \
binutils \
gcc \
libaio1 \
libaio-dev \
libcap1 \
libcap2 \
libelf-dev \
libstdc++5 \
libstdc++6 \
libxext6 \
libxext6:i386 \
libxtst6 \
libxtst6:i386 \
libx11-6 \
libx11-6:i386 \
libxau6 \
libxau6:i386 \
libxcb1 \
libxcb1:i386 \
libxi6 \
libxi6:i386 \
make \
sysstat \
unixodbc \
unzip \
vim
Debian 缺少 Oracle Linux 的库,需要手动创建软链接:
sudo ln -s /usr/lib/x86_64-linux-gnu/libpthread_nonshared.a /usr/lib64/libpthread_nonshared.a
sudo ln -s /usr/lib/x86_64-linux-gnu/libc_nonshared.a /usr/lib64/libc_nonshared.a
sudo ln -s /usr/lib/x86_64-linux-gnu/libpthread.so.0 /usr/lib64/libpthread.so
sudo ln -s /usr/lib/x86_64-linux-gnu/libc.so.6 /usr/lib64/libc.so
(如 /usr/lib64 不存在就创建)
从 Oracle 官网下载:
LINUX.X64_193000_db_home.zip放到:
/home/oracle/
su - oracle
unzip LINUX.X64_193000_db_home.zip -d $ORACLE_HOME
设置环境变量:
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/19.3.0/dbhome_1
cd $ORACLE_HOME
./runInstaller
⚠️ 常见问题:
Checking operating system version: must be ...
cvu_prereq.xml 或使用 -ignorePrereq./runInstaller -ignorePrereq -silent
dbca
或使用静默:
dbca -silent -createDatabase \
-templateName General_Purpose.dbc \
-gdbname orcl \
-sid orcl \
-responseFile NO_VALUE
sqlplus / as sysdba
startup
如果你只是想 用 Oracle,而不是“在 Debian 上装 Oracle”:
docker run -d -p 1521:1521 \
-e ORACLE_PASSWORD=123456 \
container-registry.oracle.com/database/enterprise:19.3.0
| 方式 | 推荐度 |
|---|---|
| Debian 原生安装 | ⭐⭐(折腾) |
| Docker | ⭐⭐⭐⭐⭐ |
| Oracle Linux 虚拟机 | ⭐⭐⭐⭐ |
如果你愿意,我可以:
你打算用在 学习 / 开发 / 生产?