Oracle 监听错误
Oracle 无监听程序
近日本地的Oracle数据库无法连接,抛出无监听程序错误,baigoogledu一下,总结了如下解决方案:
First:
一、运行监听器
在CMD中输入以下内容:
C:>lsnrctl
LSNRCTL for 32-bit Windows: Version 8.1.6.0.0 - Production on 14-3月 -2003 14:17
:51(c) Copyright 1998, 1999, Oracle Corporation. All rights reserved.
欢迎来到LSNRCTL,请键入"help"以获得信息。
LSNRCTL> status
连接至(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=robust)(PORT=1521)))
TNS-01103: 地址的协议专用组件指定不正确
TNS-12541: TNS:无监听器
TNS-12560: TNS:协议适配器出现错误
TNS-00511: 无监听器
32-bit Windows Error: 61: Unknown error
LSNRCTL> start
启动tnslsnr:请稍候...
Failed to start service, error 3.
TNS-12536: TNS:可能会阻碍*作
TNS-12560: TNS:协议适配器出现错误
TNS-00506: *作可能阻塞
32-bit Windows Error: 997: Unknown error
二、解决
修改 listerner.ora(..ora92networkadmin),文件,确保如下:
LISTENER =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = tiger)(PORT = 1521))
)
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = ORCL)
(ORACLE_HOME = E:oracleora92)
(SID_NAME = ORCL)
)
)
Note: 此段配置要根据自己的安装配置而定, 我的配置更新如下:
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = orcl
(ORACLE_HOME = F:\oracle\product\10.2.0\db_1)
(PROGRAM = extproc)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
&nb
相关文档:
什么是合并多行字符串(连接字符串)呢,例如:
SQL> desc test;
Name Type Nullable Default Comments
------- ------------ -------- ------- --------
COUNTRY VARCHAR2(20) Y &nb ......
INSERT INTO hydlsrs@remote_zzh
SELECT * from hydlsrs where zzh='2'
hydlsrs为表名 @remote_zzh为库名
select * from hydlsrs为另1库中表名,
不同库中相同表结构,可以跨库插入。用于
2地倒入表内容。 ......
1. 复制表结构及其数据:
create table table_name_new as select * from table_name_old
2. 只复制表结构:
create table table_name_new as select * from table_name_old where
1=2;
或者:
create table table_name_new like table_name_old
3. 只复制表数据:
如果两个表结构一样:
insert into table ......
写存储过程时,用到拆分字符串,第一个传入参数为带分割符的字符串,第二个为分隔符的个数,下面是单提出来的分割字符串方法,
create or replace procedure split( ......
update EMPLOYEE set BADGE=trim(BADGE); // 这样可去除字符串两边的空格
update EMPLOYEE set BADGE=replace(BADGE,' ',''); // 这样能去除所有的空格
SELECT replace(string,chr(13),'') from DUAL ----换行
SELECT replace(string,chr(10),'') fr ......