1:无监听 服务
2:监听服务已经启动,但是用PLsql测试任然提示:“无监听服务”
3:其它情况
第一种的情况,在这我就不说了,大家可以查找资料,添加相应的监听服务。
第二种情况的原因是:可能你装了多次的oracle,导致监听内ORACLE主目录指向错误。解决办法:指向你的ORACLE的安装目录即可。
登陆用dba
sql> conn sys/sys as sysdba;
停掉数据库
sql>shutdown immediate;
启动数据库到mount状态下
sql> STARTUP MOUNT;
ORACLE instance started.
Total System Global Area 76619308 bytes
Fixed Size 454188 bytes
Variable Size 58720256 bytes
Database Buffers 16777216 bytes
Redo Buffers 667648 bytes
Database mounted.
sql> ALTER SESSION SET sql_TRACE=TRUE;
Session altered. sql> ALTER SYSTEM ENABLE RESTRICTED SESSION; System altered. sql> ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0; System altered. sql> ALTER SYSTEM SET AQ_TM_PROCESSES=0; System altered. 启动数据库 sql> Alter database open; 设置字符集 sql> ALTER DATABASE CHARACTER SET ZHS16GBK; 先把数据库中的有中文乱码的清空了。 然后在执行。这是有可能报错 执行这个ALTER DATABASE character set INTERNAL_USE ZHS16GBK 跳过字符集检查 关闭数据库 sql> Shutdown immediate; 重启 sql> startup; 做完之后在sqlplus里边试一下,应该就好了,但是在pl/sql里边一看还是乱码, 最后,在pl/sql里边创建个表,然后在插入中文,查看一下,应该是对的。 这样就解决了乱码问题。 中间还有许多的问题,自己在慢慢研究吧。 SIMPLIFIED CHINESE_CHINA.ZHS16GBK