升级到win8.1导致oracle服务丢失的处理
针对升级到win8.1导致oracle服务丢失的处理
1、首先保证oracle相关程序能够运行,如net manager,如果能够运行,说明oracle安装仍然有效,只是因为服务被“净化”,导致oracle无法启动,plsql无法连接;现象为,“我的电脑-管理-服务”中所有oracle前缀的服务全部消失;
2、创建oracle10g、11g的监听服务:(%ORACLE_HOME%为oracle的安装目录,例如:C:\app\ivbao\product\11.2.0\dbhome_1) sc create OracleOraDb11g_home1TNSListener binPath= "%ORACLE_HOME%\BIN\TNSLSNR.EXE" 刷新“我的电脑-管理-服务”,可以看到
调用CMD管理员模式,记得,否则你想要执行的东西都调用不了,win8下“窗口键+X”-“命令提示符(管理员)”
3、创建oracle数据库服务:(ORCL-数据库SID,)
ORADIM -NEW -SID ORCL -INTPWD manager -MAXUSERS 20 -STARTMODE AUTO -PFILE %ORACLE_HOME%\database\SPFILEORCL.ORA 刷新“我的电脑-管理-服务”,可以看到增加了3个服务
当然,主sid服务已经注册上了,但是无论如何重复启动这个名为OracleServiceORCL的服务,我们的plsql仍然连接不上,因为plsql在64位的操作系统上需要安装一个32位版本的oracle client,另外,监听TNS需要重新配置一下
4、配置TNS监听:(虽然已经在win8系统中注册了TNSListener服务)
新市场营销法则 助推企业成长 电子商务营销 食品餐饮营销 建筑房产营销 消费品营销
全部默认“下一步”即可完成配置,ok,然后重新启动创建的“OracleOraDb11g_home1TNSListener”服务,当然,“我的电脑-管理-服务”完成这一步
5、启动plsql连接数据库,仍然会报如下错误:(哈,很神奇的程序反应) --------------------------- PL/SQL Developer ---------------------------
ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务
--------------------------- OK
---------------------------
启动多次监听和数据库实例服务,仍然无法连接,神奇的一刻在后面一步,继续看吧
6、启动ORCL数据库实例,重启监听(多次重启才行哟) 调用CMD管理员模式,输入如下命令: Sqlplus /nolog
Conn sys/manager as sysdba Startup
命令行输出如下: SQL> startup
ORACLE 例程已经启动。
Total System Global Area 3357155328 bytes Fixed Size 2180384 bytes Variable Size 2466253536 bytes Database Buffers 872415232 bytes Redo Buffers 16306176 bytes 数据库装载完毕。 数据库已经打开。
7、plsql可以正常连接数据库了
如果仍然连不通,那么查看一下oracle安装目录下的admin目录,调整init.ora文档
例如:D:\app\ivbao\admin\orcl\pfile\init.ora.712013233329 重新命名为 init.ora,重启数据库和监听即可连接