在 Linux 下启动 Oracle 数据库,通常需要 操作系统用户 oracle 来执行。下面按 最常见、标准流程 给你说明。
su - oracle
如果未自动配置,可手动设置:
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/19.3.0/dbhome_1
export ORACLE_SID=orcl
export PATH=$ORACLE_HOME/bin:$PATH
✅ 建议写在
.bash_profile中,避免每次手动执行
sqlplus / as sysdba
startup
执行过程大致为:
startup nomount
常用于:
startup mount
常用于:
数据库启动后,客户端才能连接:
lsnrctl start
查看监听状态:
lsnrctl status
select status from v$instance;
常见状态:
OPEN ✅(正常)MOUNTEDSTARTEDselect open_mode from v$database;
结果应为:
READ WRITE
说明数据库已经启动,先关闭:
shutdown immediate;
startup;
通常是监听未启动或服务未注册:
lsnrctl start
或手动注册:
alter system register;
shutdown immediate;
其他关闭方式:
shutdown normalshutdown transactionalshutdown abort(强制,慎用)1. 切换到 oracle 用户
2. sqlplus / as sysdba
3. startup
4. lsnrctl start
如果你用的是:
可以告诉我,我可以给你更精确的启动方式。