NC61数据源配置和数据库表空间的配置

NC61数据源配置和数据
发现童鞋们在安装NC61的时候遇到的问题非常多,尤其是建立多个帐套的时候更是问题多多。

我总结了一下,问题的症结 就在于对数据库的 表空间、用户、UAP配置 等关系没有理清楚。

如果这篇文章帮助你解决了问题,希望你能把你出现问题的截图发上来,并告诉大家用这个方法可以解决。
写了一个下午,看完好歹给个回复。



--------------------------------------------------------------------------------

问题症状 往往表现为:

1.数据源配置的时候测试通不过;

2.数据源配置的时候测试能通过,但在建库的时候通不过,比如到10%的时候弹出错误“物理布局错误”,到30%的时候弹出错误“表或视图不存在”等等。

3. 按照下面的方法,UAP配置测试通不过,出现ORA-12519错误的时候,可以尝试先关闭中间件,再测试。


小伙伴们,如果你遇到类似的问题,建议你继续往下看,一定要看到最后哟。



--------------------------------------------------------------------------------


授人以鱼不如授人以渔


首先告诉大家一个小秘密,相信很多童鞋都还不知道呢。



在NC61安装盘的根目录下,有三个文档,你们都看过么?

还有其他的那些文件,你们都知道是干什么用的么?

既然是放到安装盘里的内容,肯定是有用的吧。


在NC61安装盘的DOC目录下,有很多的帮助文档,你们都看过了么?

还记得配置数据库的时候我们用了几段代码么?

其实就是 《NC6.1 数据库参考脚本及临时表要求.pdf》 这篇文档里的,自己去找找看。


看完上面这些东东,小伙伴们都惊呆了!有木有!

哦。。。原来解决方案 远在天边,近在眼前 呢!

下次再遇到问题你还会直接就去问别人么?

也希望大家有什么好的方法都共享出来哦!

其实我还有别的小秘密,下次告诉大家吧。

下面进入正题了,本着知其然并知其所以然的精神,我重点讲讲我的理解和方法。



--------------------------------------------------------------------------------


1.数据库配置

下面是用命令的方法,大家还记得这些命令是从哪里来的吗?

《NC6.1 数据库参考脚本及临时表要求.pdf》 去找找看,都在这里了。



1--创建表空间:

CREATE TABLESPACE NNC_DATA01 DATAFILE 'd:\nnc_data01.dbf' SIZE 500M AUTOEXTEND ON NEXT 50M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 256K ;

CREATE TABLESPACE NNC_INDEX01 DATAFILE 'd:\nnc_index01.dbf' SIZE 500M AUTOEXTEND ON NEXT 50M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 128K ;
复制代码
注:

这段代码的主要功能就是:建立两个表空间,NNC_DATA01 和 NNC_INDEX01,并指定数据存储路径、文件大小

、自动扩展、区分配大小。

重点:这里是很多同学会犯错的地方。NNC_DATA01 和 NNC_INDEX01 不能改成别的名字,用户可以随便起名字,但是这两个表空间不可以。

如果表空间不使用NNC_DATA01,会出现“表或视图不存在”的问题。

猜测原因:系统建库的时候需要往名称为 NNC_DATA01 和 NNC_INDEX01 的表空间释放数据表,找不到这两个表会报错。

所以,NNC_INDEX01这个表空间我们没用过,但它还是有用的。



2--创建用户:

create user nc611 identified by nc611 default tablespace nnc_data01 temporary tablespace temp;
复制代码
注:

这段代码的主要功能就是:创建用户,设置默认密码,指定默认表空间和临时表空间。临时表空间使用数据库默认的TEMP即可。




3--给用户授权:

grant connect,dba to nc611;
复制代码
注:

这段代码的主要功能就是:给用户授权,connect 和 dba 这两个权限是必须的。

--------------------------------------------------------------------------------------------------------------------------

除了命令,还有其他的方式配置数据库,可以参照《NC6.1 产品安装部署及配置指南.pdf》-2.4创建oracle用户。

我的方法是用 Database Control 来配置数据库,建议大家采用这种方法,能让你对表空间和用户的理解更深刻。


你在配置的过程中看看能否跟命令对应上。


1.用sys登陆,身份为sysdba。






2.创建和配置表空间 NNC_DATA01 和 NNC_INDEX01










3.创建和配置用户







----------------------------------------------------------------------------------------------


2.数据源配置


打开NcSysConfig

UAP配置工具中的帮助文档对数据源配置的描述如下:

数据源配置
1:首先“读取”,可以查看已经配置的数据源信息。
2:选择“添加”或修改数据源,界面处于可编辑状态,编辑数据源信息。
注意:“数据源的OID标识”为大写字母或数字组成的两位数,并且不能以Z开头。
3:修改完成后“确定”,界面不可编辑,可以“测试”修改的数据源连接情况。
4:“测试”成功后“保存”。

好吧,看完之后好像没什么帮助。。。

下面谈谈我的理解


1.【数据源】跟【数据源名称】是对应的,当你在【数据源名称】输入内容的时候,会自动产生对应的【数据源】,只是个名称,用于辨识,没有什么本质的含义。
2.其实偶也不知道这到底是干什么用的,但是感觉跟【数据源】类似,和【数据源】保持一致就好,应该也是用来辨识的,没有什么本质的含义。
3.【数据库类型】注意不要选错了,跟你用的数据库版本对应好,很多童鞋会把这里忽略了。设置错误应该测试通不

过的。
4.【数据库驱动类型】默认就好,应该是跟你选的【数据库类型】有关的。
5.通常也保持默认,跟你选的【数据库类型】有关的。
6.给你的【数据源】起个名字,这个应该是随意的,没有特殊要求,只是个名称,用于辨识,没有什么本质的含义。注意不能含有中文。
7.我们应该都是用的本地地址吧:127.0.0.1
8.【数据库端口】如果你的数据库没有改过,那就保持默认:1521
9.【数据库/ODBC】如果你的数据库没有改过,那就保持默认:orcl
10.【数据源OID标识】大写字母或数字组成的两位数,并且不能以Z开头。不同帐套的【数据源OID标识】不同即可,用于辨识,没有特殊要求。
11.【用户名和密码】是数据库里创建的用户,比如我建的NC61。前面说【数据源】,只是个名称,用于辨识,没有什么本质的含义,但是当【数据源】跟数据库的用户关联起来的时候就有意义了。


本着知其然并知其所以然的精神,我谈谈对【数据源OID标识】的理解:
我把它理解为数据表前缀。当在一个表空间里建立多个帐套的时候,数据表前缀需要不同。
举例:
假设程序建库的时候需要往表空间释放一个名称为DATA的数据表,那么再建立一个帐套的时候,就会再次释放一个名称为DATA的数据表,结果就是要么不能建立多个帐套,要么就会把之前的DATA数据表覆盖。但是加个数据表前缀就不同了,第一次建立帐套使用前缀A1,那么释放的所有数据表都会是A1_DATA这样的形式,第二次建立帐套使用前缀A2,那么释放的所有数据表都会是A2_DATA这样的形式,这样两个帐套的数据表就不会产生冲突。
这也是同一个表空间能建立多个帐套的原因。
很多人不理解多个帐套为什么要建立在同一个表空间里,以为这样会产生混乱,其实不然。




总结:


1.表空间必须有NNC_DATA01和NNC_INDEX01;
2.建立不同帐套只需要在数据库里建立不同的用户名,用户名即帐套;
3.用户的默认表空间必须是NNC_DATA01;
4.帐套和用户名、数据源、数据源OID标识是对应的;
5.所有的帐套都使用相同的表空间NNC_DATA01和NNC_INDEX01。



相关文档
最新文档