oracle数据库的打开需要依次完成监听服务启动、数据库实例启动等步骤,不同操作系统的操作方式有所区别,下面分别介绍常见场景下的操作方法。

windows系统下打开oracle的方法
通过服务面板启动
windows系统下oracle的相关服务会注册到系统服务列表中,可以通过以下步骤启动:
- 右键点击桌面此电脑图标,选择管理选项,进入计算机管理界面
- 在左侧菜单中找到服务和应用程序,展开后点击服务选项
- 在服务列表中找到
OracleOraDb11g_home1TNSListener(不同版本名称可能略有差异),右键点击选择启动,这个是oracle的监听服务,负责接收客户端的连接请求 - 找到
OracleServiceORCL(ORCL是默认的数据库实例名,如果你安装时修改了实例名,名称会对应变化),右键点击选择启动,这个是数据库实例服务
通过命令行启动
也可以通过命令行的方式启动相关服务,步骤如下:
按下win+R组合键,输入cmd打开命令提示符,执行以下命令:
:: 启动监听服务,对应服务名根据实际安装情况调整 net start OracleOraDb11g_home1TNSListener :: 启动数据库实例服务,ORCL为实例名 net start OracleServiceORCL
linux系统下打开oracle的方法
启动监听
首先切换到oracle用户,然后启动监听服务:
# 切换到oracle用户,root用户执行 su - oracle # 启动监听 lsnrctl start # 查看监听状态,确认监听正常启动 lsnrctl status
启动数据库实例
监听启动完成后,需要启动数据库实例,步骤如下:
# 进入sqlplus命令行工具 sqlplus / as sysdba # 启动实例,如果是首次启动可以用startup命令,默认是open模式 startup # 如果需要指定参数文件启动,可以用以下命令 # startup pfile='/u01/app/oracle/product/11.2.0/dbhome_1/dbs/initORCL.ora'
执行startup命令后,oracle会依次完成实例启动、数据库挂载、数据库打开三个阶段,最终出现Database opened的提示说明数据库已经正常打开。
验证oracle是否成功打开
可以通过以下方式验证数据库是否正常打开:
- 在sqlplus中执行
select status from v$instance;命令,如果返回OPEN说明实例正常打开 - 执行
select open_mode from v$database;命令,返回READ WRITE说明数据库处于可读写打开状态 - 使用客户端工具连接数据库,能够正常登录并执行查询操作说明打开成功
常见启动问题排查
如果启动过程中出现错误,可以参考以下常见问题排查:
- 监听启动失败提示地址被占用:检查是否有其他程序占用了1521端口,修改监听配置文件中的端口或者关闭占用端口的程序
- 启动实例提示参数文件不存在:检查pfile或者spfile的路径是否正确,默认路径是$ORACLE_HOME/dbs目录下
- 启动实例提示数据文件损坏:查看告警日志定位损坏的数据文件,尝试恢复或者替换损坏的文件
关闭oracle的对应操作
如果需要关闭oracle,对应的操作如下:
- linux系统下先执行
shutdown immediate关闭数据库实例,再执行lsnrctl stop关闭监听 - windows系统下先停止OracleServiceORCL服务,再停止监听服务