重庆分公司,新征程启航

为企业提供网站建设、域名注册、服务器等服务

oracle9i怎么用 oracle9i支持系统

如何使用精简的Oracle客户端

大型项目开发中,常用的数据库,当属Oracle。但Oracle

成都创新互联长期为上千家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为武城企业提供专业的成都做网站、网站建设,武城网站改版等技术服务。拥有十载丰富建站经验和众多成功案例,为您定制开发。

客户端安装就要一张光盘,体积很大。而且安装后,基本上就用2个功能:TNS配置服务名,SqlPlus。在开发过程中,大量使用Toad和PL/SQL

Developer。因此,Oracle客户端安装盘,仅仅是被作为一个驱动而需要,根本没必要装那么大的空间。因此,本文给出了如何使用精简的Oracle客户端。

我使用两种精简的Oracle客户端,大家可以任选其一:

一、Oracle 9i (版本: 9.0.1.0.1)精简客户端 绿色版

占用35M空间, 带SqlPlus工具。绿色版,超级推荐!!!

使用方法:

1. 确定OracleHome目录:比如我准备把Oracle 客户端放在 d:\program files\Oracle 下

2. 把ora90目录复制到d:\program files\Oracle 目录下

3. 如果你的OracleHome目录与我的不同,请用计事本打开install_oracle9i.reg 文件,替换d:\\progra~1\\Oracle,保存。

4. 双击install_oracle9i.reg, 导入注册表。

5.

用计事本打开D:\Program Files\Oracle\ora90\network\ADMIN\tnsnames.ora

文件,增加一个自己的数据库别名配置,保存。 可以复制其中的一个,然后进行修改,主要改=前面的别名,Host为IP地址,

SERVICE_NAME为数据库服务器的实例名。

6. 然后运行D:\Program Files\Oracle\ora90\BIN\sqlplusw.exe,输入用户名/密码@别名,即可。

卸载方法:

1. 双击uninstall_oracle9i.reg, 导入注册表。

2. 删除d:\program files\Oracle 目录。

请问oracle9i中如何建立和使用全文索引

(2)Oracle9i默认情况下会把ctxsys用户锁定,请以DBA身份登陆Oracle,把用户ctxsys解锁,并修改其密码为ctxsys,以便于我们后面登陆Text Manager

(3)进入Oracle的text manager,点程序-Oracle-OracleHome92-Enterprise Manager Console。选独立启动,然后选工具栏最下面的应用程序-text Manager,这时会要求您输入用户名和密码,用户名ctxsys,密码ctxsys

(4)选择首选项——〉语言指定器——〉CTXSYS,选一个点类似创建,输入指示器的名字如chinese_lexer,选择lexer下的chinese_vgrnm_lexer 。

(5)建立索引,在索引上点右键,然后选创建CONTEXT索引,这里要注意方案要选择您自己的表空间,如我有个表SZPOI在表空间SUZHOU中,现在我要对该表的UNITNAME字段建立全文索引,那么方案选suzhou,表选szpoi,字段选unitname,首选项中选择chinese_lexer 。

这样全文检索就建好了,并用chinese_vgram_lexer作为分析器。

SELECT score(1),t.unitname,t.objectid,t.eminx,t.eminy,t.mpfullname,t.dianhua FROM szpoi t WHERE contains (unitname, '规划局,吴中分局', 1) 0 order by score(1) desc

这个语句的意思是在表szpoi中查询unitname包含规划局和吴中分局两个关键字的记录,并按匹配度从高到低排序。

大功告成了吗?没有!

Oracle9i密码策略--密码重用规则

Oracle通过PROFILE中的PASSWORD_REUSE_TIME和PASSWORD_REUSE_MAX来确定密码是否可以重用以及密码重用的限制

但是 经过测试 发现Oracle的ADMINISTRATOR GUIDE里面的描述是错误的 我查阅了一下METALINK METALINK上的一篇文章虽然对这两个参数进行了比较详细的说明 但是仍然有一部分描述是错误

PASSWORD_REUSE_TIME是重用密码的最小时间间隔 单位是天 可以给出整数或分数 如 / 表示 分钟(出于效率的考虑 oracle不会每分钟都去进行检查 一般来说 有 分钟左右的误差 因此如果这个数小于 / 则没有多大的意义)

PASSWORD_REUSE_MAX是重用密码前更换密码的最小次数 这两项本身没有任何异议 关键是两项如何配合使用 可以分为 种情况进行描述

一 PASSWORD_REUSE_MAX和PASSWORD_REUSE_TIME都为UNLIMITED

这时密码可以任意重用 没有限制这也是DEFAULT profile的默认值 当这两项都为UNLIMITED时 认为这两个参数没有使用 因此 密码重用没有任何限制

SQL create profile prof_test limit password_reuse_max unlimited password_reuse_time unlimited; 配置文件已创建 SQL create user test identified by test profile prof_test; 用户已创建 SQL alter user test identified by test; 用户已更改 SQL alter user test identified by test; 用户已更改

二 PASSWORD_REUSE_MAX和PASSWORD_REUSE_TIME中有一个为UNLIMITED 另一个为其他值

这个时候你的密码将永远无法重用

看看administrator guide上是怎么说的

Use the CREATE PROFILE statement to specify a time interval during which users cannot reuse a password In the following statement a profile is defined where the PASSWORD_REUSE_TIME clause specifies that the user cannot reuse the password for days CREATE PROFILE prof LIMIT PASSWORD_REUSE_TIME PASSWORD_REUSE_MAX UNLIMITED; In the next statement the PASSWORD_REUSE_MAX clause specifies that the number of password changes the user must make before the current password can be used again is three CREATE PROFILE prof LIMIT PASSWORD_REUSE_MAX PASSWORD_REUSE_TIME UNLIMITED; Note: If you specify PASSWORD_REUSE_TIME or PASSWORD_REUSE_MAX you must set the other to UNLIMITED or not specify it at all

文档告诉我们 只使用其中一个 把另外一个设置为UNLIMITED 但是这是不正确的 这样会导致你的密码永远无法重用

SQL alter profile prof_test limit password_reuse_max ; 配置文件已更改 SQL select resource_name limit from dba_profiles where profile = PROF_TEST and resource_type = PASSWORD ; RESOURCE_NAMELIMIT FAILED_LOGIN_ATTEMPTSDEFAULT PASSWORD_LIFE_TIMEDEFAULT PASSWORD_REUSE_TIMEUNLIMITED PASSWORD_REUSE_MAX PASSWORD_VERIFY_FUNCTIONDEFAULT PASSWORD_LOCK_TIMEDEFAULT PASSWORD_GRACE_TIMEDEFAULT 已选择 行 SQL alter user test identified by test; 用户已更改 SQL alter user test identified by test; alter user test identified by test * ERROR 位于第 行: ORA : 无法重新使用口令 SQL alter user test identified by t ; 用户已更改 SQL alter user test identified by t ; 用户已更改 SQL alter user test identified by t ; 用户已更改 SQL alter user test identified by test; alter user test identified by test * ERROR 位于第 行: ORA : 无法重新使用口令

修改profile后 只对test用户的后续操作有效 第一次可以修改密码为test是因为oracle没有记录初始密码 而第二次修改就会失败 因为密码已经不能重用了

根据文档 我们只需要修改密码三次 就可以重用 但是测试的结果确是密码无法在重用

SQL alter profile prof_test limit password_reuse_max unlimited; 配置文件已更改 SQL alter user test identified by test; 用户已更改 SQL alter profile prof_test limit password_reuse_time / ; 配置文件已更改 SQL select resource_name limit from dba_profiles where profile = PROF_TEST and resource_type = PASSWORD ; RESOURCE_NAMELIMIT FAILED_LOGIN_ATTEMPTSDEFAULT PASSWORD_LIFE_TIMEDEFAULT PASSWORD_REUSE_TIME PASSWORD_REUSE_MAXUNLIMITED PASSWORD_VERIFY_FUNCTIONDEFAULT PASSWORD_LOCK_TIMEDEFAULT PASSWORD_GRACE_TIMEDEFAULT 已选择 行 SQL set time on : : SQL alter user test identified by test; alter user test identified by test * ERROR 位于第 行: ORA : 无法重新使用口令 : : SQL : : SQL : : SQL alter user test identified by test; alter user test identified by test * ERROR 位于第 行: ORA : 无法重新使用口令 : : SQL : : SQL alter user test identified by test; alter user test identified by test * ERROR 位于第 行: ORA : 无法重新使用口令 : : SQL set time off

修改PASSWORD_REUSE_TIME为 / 也就是说大概 分钟的时间 考虑的oracle的误差 我们在 分钟和 分钟后分别进行测试 结果发现密码仍然无法重用

三 PASSWORD_REUSE_MAX和PASSWORD_REUSE_TIME都不为UNLIMITED

这时只需满足任意一个条件就可以重用密码

Metalink上的文章在这里描述有误 密码重用不需要同时满足两个条件 只要满足一个既可

SQL alter profile prof_test limit password_reuse_time unlimited; 配置文件已更改 SQL alter user test identified by test; 用户已更改 SQL alter profile prof_test limit password_reuse_max password_reuse_time / ; 配置文件已更改 SQL set time on : : SQL alter user test identified by test; 用户已更改 : : SQL alter user test identified by test; alter user test identified by test * ERROR 位于第 行: ORA : 无法重新使用口令 : : SQL alter user test identified by t ; 用户已更改 : : SQL alter user test identified by t ; 用户已更改 : : SQL alter user test identified by t ; 用户已更改 : : SQL alter user test identified by test; 用户已更改 : : SQL : : SQL alter user test identified by test; alter user test identified by test * ERROR 位于第 行: ORA : 无法重新使用口令 : : SQL : : SQL : : SQL alter user test identified by test; 用户已更改

lishixinzhi/Article/program/Oracle/201311/18309


标题名称:oracle9i怎么用 oracle9i支持系统
链接分享:http://cqcxhl.com/article/hhosih.html

其他资讯

在线咨询
服务热线
服务热线:028-86922220
TOP