1、首先保证oracle相关程序能够运行,如netmanager,如果能够运行,说明oracle安装仍然有效,只是因为服务被“净化”,导致oracle无法启动,plsql无法连接;现象为,“我的电脑-管理-服务”中所有oracle前缀的服务全部消失;
2、创建oracle10g、11g的监听服务:(%ORACLE_HOME%为oracle的安装目录,例如:C:appivbaoproduct11.2.0dbhome_1)
sccreateOracleOraDb11g_home1TNSListenerbinPath="%ORACLE_HOME%BINTNSLSNR.EXE"
刷新“我的电脑-管理-服务”,可以看到
调用CMD管理员模式,记得,否则你想要执行的东西都调用不了,win8下“窗口键+X”-“命令提示符(管理员)”
3、创建oracle数据库服务:(ORCL-数据库SID,)
ORADIM-NEW-SIDORCL-INTPWDmanager-MAXUSERS20-STARTMODEAUTO-PFILE%ORACLE_HOME%databaseSPFILEORCL.ORA
刷新“我的电脑-管理-服务”,可以看到增加了3个服务
当然,主sid服务已经注册上了,但是无论如何重复启动这个名为OracleServiceORCL的服务,我们的plsql仍然连接不上,因为plsql在64位的操作系统上需要安装一个32位版本的oracleclient,另外,监听TNS需要重新配置一下
4、配置TNS监听:(虽然已经在win8系统中注册了TNSListener服务)
全部默认“下一步”即可完成配置,ok,然后重新启动创建的“OracleOraDb11g_home1TNSListener”服务,当然,“我的电脑-管理-服务”完成这一步
5、启动plsql连接数据库,仍然会报如下错误:(哈,很神奇的程序反应)
---------------------------
PL/SQLDeveloper

---------------------------
ORA-12514:TNS:监听程序当前无法识别连接描述符中请求的服务
---------------------------
OK
---------------------------
启动多次监听和数据库实例服务,仍然无法连接,神奇的一刻在后面一步,继续看吧
6、启动ORCL数据库实例,重启监听(多次重启才行哟)
调用CMD管理员模式,输入如下命令:
Sqlplus/nolog
Connsys/managerassysdba
Startup
命令行输出如下:
SQL>startup
ORACLE例程已经启动。
TotalSystemGlobalArea3357155328bytes
FixedSize2180384bytes
VariableSize2466253536bytes
DatabaseBuffers872415232bytes
RedoBuffers16306176bytes
数据库装载完毕。
数据库已经打开。
7、plsql可以正常连接数据库了
如果仍然连不通,那么查看一下oracle安装目录下的admin目录,调整init.ora文档
例如:D:appivbaoadminorclpfileinit.ora.712013233329重新命名为init.ora,重启数据库和监听即可连接