关于工作流项目移植到Oracle9i布署时遇到的问题!

来源:互联网 发布:picasa软件下载 编辑:程序博客网 时间:2024/06/05 22:43

关于工作流项目移植到Oracle9i上遇到的问题

当用sqlplusw /nolog来登陆时,/as sysdba来登陆时报ORA-12560: TNS: 协议适配器错误时可通过以下方式来进行修改, 造成ORA-12560: TNS: 协议适配器错误的问题的原因有三个:
1.监听服务没有启起来。在windows平台进行如下操作:开始---程序---管理工具---服务,打开服务面板,启动oraclehome92TNSlistener服务。
2.database instance
没有启起来。在windows平台进行如下操作:开始---程序---管理工具---服务,打开服务面板,启动oracleserviceXXXX,XXXX就是你的database SID.
3.
注册表问题。regedit,然后进入HKEY_LOCAL_MACHINE/SOFTWARE/ORACLE/HOME0将该环境变量ORACLE_SID设置为XXXX(如果没有就新建),XXXX就是你的database SID.或者右几我的电脑,属性--高级--环境变量---系统变量--新建,变量名=oracle_sid,变量值=XXXX,XXXX就是你的database SID.或者进入sqlplus前,在command line下输set oracle_sid=XXXX,XXXX就是你的
database SID.
经过以上步骤,就可以解决问题。

在导入库时两边库的注册信息要一致!(本项目中使用的字符集为:american_america.us7ascii).

注:在项目中字符集有两个地方需要修改,一是:系统的字符集(windows为注册表,Linux为变量---.bash_profile);二是:数据库使用的字符集(创建时注意选择或者通过修改pfile文件也可)

在保证工作流系统能够完全应用oracle9i上还有两处需要修改

1:修改oracle配置方案中的init*.ora文件在里面增加一行(D:/oracle/admin/workflow/pfile):

nls_date_format = "yyyy/mm/dd hh24:mi:ss";

2: 在服务器上运行命令行里输入sqlplusw /nolog 进入命令状态下后输入connect /as sysdba;

3:SQL命令行下输入:

startup pfile='D:/oracle/admin/workflow/pfile/init.ora';

4:然后在命令行状态下输入:

Create spfile from pfile='D:/oracle/admin/workflow/pfile/init.ora';

语法格式用下:

CREATE SPFILE[=’SPFILE-NAME’] FROM PFILE[=’PFILE-NAME’]

5: 添加后将数据库重启即可.(可通过命令不需要重启机器-- shutdown immediate(关闭数据库) , startup (启动数据库)).

6: SQL命令状态下输入show parameter nls_date查看nls_date_format的参数设置是否正确.

*注意:对于Oracle9i来说大多数参数是可以通过使用ALTER SYSTEM方式将修改固定到SPFILE(而对于静态的配置文件init*.ora可以不需修改,因为oracle9i默认首先是从动态SPFILE里面去找!为了保证两个文件同步,也可以通过动态SPFILE文件来创建静态init*.ora文件.)

: 使用ALTER SYSTEM方式将修改固定到SPFILE

SQL> alter system set log_archive_start=false scope=spfile;

: 通过动态SPFILE文件来创建静态init*.ora文件

create pfile='e:/initworkflow.ora' from spfile;

*判断是否使用了Spfile.

查询v$parameter动态视图或者你可以使用SHOW命令来显示参数设置,如果以下查询返回空值,那么你在使用pfile.

SELECT name,value FROM v$parameter WHERE name='spfile';

SHOW PARAMETER spfile;

ALTER SYSTEM增加了一个新选项:SCOPESCOPE参数有三个可选值:MEMORY ,SPFILE , BOTH

MEMORY:只改变当前实例运行(即内存)

SPFILE:只改变SPFILE的设置

BOTH:改变实例及SPFILE.

到此关于将现先工作流布置到oracle9i的问题基本完成,然后利用imp导入工具命令来完成数据库导入即可!

原创粉丝点击