在Win7旗舰版安装oracle9i,但是由于版本不兼容,装不上去,改装oracle10g,前面都正常,但是在创建数据库时报:创建数据库提示:ora-12546 tns permission denied
重新配置tnslistener,新建数据库还是同样的错误。
在命令行执行oracle.exe,然后在任务管理器,查看不到oracle进程,说明oracle没有安装上。
原来是由于:oracle 10g for windows有好几个版本的。不同操作系统不同。
Win7需要使用“oracle 10g for vista and windows2K8 x86”这个版本。
可以下载:
或者到http://www.oracle.com/technology/software/products/database/xe/htdocs/102xewinsoft.html
下载Express版本。选:Oracle Database 10g Express Edition (Universal),只有一个语言。
因为我不需要使用很高级的数据库管理功能,所以下载Express版本。200多M,下载很快,大概20多分钟。
因为我已经装了一个oracle10g,所以需要先将它卸载。但是比较土的,我竟然没有找到可以卸载的地方(不像8i),所以采用下面方法卸载。
删除oracle安装程序,然后把注册表里面software里面的oracle删了,把注册表里面services里面的oracle相关服务删了就完了。
网上有些资料,提示按照下面步骤做些修改。但是这些修改是当如果oracle安装的时候,报版本不匹配的话,你再去改那个配置文件,否则不用的。我在我的Win7上安装,没有出现提示版本不匹配的情况,所以我没有做修改。留下蛮记录。
将oralce 10G的安装镜像解压都硬盘,找到\stage\prereq\db\下的refhost.xml文件添加如下内容:
Y&D#Qf2v"yz4d0<!--Microsoft Windows 7-->
9EKG){ M1Z;L?DyE0
7fC.t#G#lk(}0
I{ uQ+x(A#UW0ITPUB个人空间m:J-k3xP+TC"f
ITPUB个人空间aBl$bM
再到install目录中找到oraparam.ini文件,添加如下内容:ITPUB个人空间bZ7d+_l,g;l"Anxm
[Windows-6.1-required]ITPUB个人空间r-?\,g V%A{0p8^
#Minimum display colours for OUI to run
.Vg?],f7X.jC0MIN_DISPLAY_COLORS=256ITPUB个人空间})LB&RzE
#Minimum CPU speed required for OUI
`AZD3H:YuZ#\0#CPU=300ITPUB个人空间*p7{[0?%t/p
[Windows-6.1-optional]
装oracle10g Express版本,过程很快,也很顺利。数据库装上了。但是发现没有数据库。
采用新建表空间,然后在表空间中创建数据库的方式来解决这个问题。Express版本启动的那个页面,内容很简单,所以采用命令行方式进行下述操作。
以sys用户登录
打开命令行,
sqlplus /nolog
conn sys/manager as sysdba
创建表空间
create tablespace demo datafile 'demo.dat' size 50m reuse autoextend on next 5m;
创建用户
create user demo identified by demo default tablespace demo;
授权
grant dba to demo;
以新建用户登录
conn demo/demo
导入数据
@ D:\f盘\自动化平台安装包\V2.0\售前演示数据.sql
导入后出现下述错误
values ('A2550526187961000004', 'WebElement', '单击寿险2007版FF核心业务系统(用户
-Yj5n8n}0D0t0测试)', 'T', 'A247120722A251000001', '寿险2007版FF核心业务系统(用户测试)', 'Clic
6H BfKpe2u0k', null, null, null, '0', 1, null, 'A2471207221561000001')ITPUB个人空间/W Y.{!|SI\&f
*
DMhk4xT3f*M0第2行出现错误:ITPUB个人空间JTGIM(\:{RE
ORA-12899:列"DEMO"."TF_STEP"."STEP_NAME"的值太大(实际值: 53,最大值: 50)
由于原来创建数据库时,字符集选择错误,现有字符集支持单字符,而待导入数据为双字符,故现有字符集不支持该数据。下面需要修改数据库的字符集。
select * from nls_database_parameters
得知现有字符集为:AL16UTF16。
NLS_NCHAR_CHARACTERSETITPUB个人空间n e-FIm h E4W0p G
AL16UTF16
下面开始修改数据库字符集。
shutdown
startup nomoout(无挂载数据库方式启动)
alter database mount exclusive;
alter system enable restricted session;
alter system set job_queue_processes=0;
alter database open;
alter database character set INTERNAL_USE zhs16gbk
SELECT VALUE$ FROM SYS.PROPS$ WHERE Name = 'NLS_CHARACTERSET';
修改完字符集后,需要重新创建表空间,导入数据。
drop tablespace demo;
drop user demo cascade;
重新创建
create tablespace demo datafile 'demo.dat' size 50m reuse autoextend on next 5m;ITPUB个人空间(t%hQXUA!uQL)W
create user demo identified by demo default tablespace demo;
1MY$Z \Tb?C0grant dba to demo;ITPUB个人空间`R"w:Ug T&P"]
conn demo/demo
@ D:\f盘\自动化平台安装包\V2.0\售前演示数据.sql
这回数据导入成功
记得要执行commit,否则断开连接,数据将丢失。
commit;
创建SampleCenter数据库环境
创建表空间等均类似。在导入数据时,先导入:create_sql_oracle.sql,然后再导入init_data.sql。在导入init_data.sql时提示:
ERROR:ITPUB个人空间!_j)w}H0_
ORA-01756:引号内的字符串没有正确结束
[sFHE2T/jN0经检查,文件中脚本没有异常,决定一片一片导入,此次可以导入,怀疑为文件中的注释语句问题。
记住需要执行commit。
如何查看这个express版本的服务名
select instance_name from v$instance
结果为:xe。
可参考资料:
http://www.apex-blog.com/oracle-apex/windows-7-oracle-xe-open-source-161.html
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/8020322/viewspace-690128/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/8020322/viewspace-690128/