OracleSID及密码问题解决_第1页
OracleSID及密码问题解决_第2页
OracleSID及密码问题解决_第3页
OracleSID及密码问题解决_第4页
OracleSID及密码问题解决_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1.Oracle卸载后再次安装,设置的SID相同出现“指定的SID在本机上已经存在。请指定一个不同的SID。” SID简介 SID也就是安全标识符(Security Identifiers),是标识用户、组和计算机帐户的唯一的号码。在第一次创建该帐户时,将给网络上的每一个帐户发布一个唯一的 SID。Windows 2000 中的内部进程将引用帐户的 SID 而不是帐户的用户或组名。如果创建帐户,再删除帐户,然后使用相同的用户名创建另一个帐户,则新帐户将不具有授权给前一个帐户的权力或权限,原因是该帐户 具有不同的 SID 号。安全标识符也被称为安全 ID 或 SID。SID的作用 用户通过验证后

2、,登陆进程会给用户一个访问令牌,该令牌相当于用户访问系统资源的票证,当用户试图访问系统资源时,将访问令牌提供给 Windows NT,然后 Windows NT 检查用户试图访问对象上的访问控制列表。如果用户被允许访问该对象,Windows NT将会分配给用户适当的访问权限。 访问令牌是用户在通过验证的时候有登陆进程所提供的,所以改变用户的权限需要注销后重新登陆,重新获取访问令牌。SID号码的组成如果存在两个同样SID的用户,这两个帐户将被鉴别为同一个帐户,原理上如果帐户无限制增加的时候,会产生同样的SID,在通常的情况下SID是唯一的,他由计算机名、当前时间、当前用户态线程的CPU耗费时间的

3、总和三个参数决定以保证它的唯一性。 一个完整的SID包括: ? 用户和组的安全描述 ? 48-bit的ID authority ? 修订版本 ? 可变的验证值Variable sub-authority values 例:S-1-5-21-31044058 8- 2 500 36847- 5 803 895 05-500 我们来先分析这个重要的SID。第一项S表示该字符串是SID;第二项是SID的版本号,对于 2000来说,这个就是1;然后是标志符的颁发机构(identifier authority),对于2000内的帐户,颁发机构就是NT,值是5。然后表示一系列的子颁发机构,前面几项是标志域

4、的,最后一个标志着域内的帐户和 组。SID的获得开始运行regedit32HKEY_LOCAL_MACHINESAMSAMDomainsBuiltinAliasesMembers,找到本地的域的代码,展开后,得到的就是本地帐号的所有SID列表。 其中很多值都是固定的,比如第一个000001F4(16进制),换算成十进制是500,说明是系统建立的内置管理员帐号administrator,000001F5换算成10进制是501,也就是GUEST帐号了,详细的参照后面的列表。 这一项默认是system可以完全控制,这也就是为什么要获得这个需要一个System的Cmd的Shell的原因了,当然如果权限

5、足够的话你可以把你要添加的帐号添加进去。 或者使用Support Tools的Reg工具: reg query HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionProfileList 还有一种方法可以获得SID和用户名称的对应关系: 1. Regedit32 HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersion ProfileList 2. 这个时候可以在左侧的窗口看到SID的值,可以在右侧的窗口中ProfileImagePath看到不同的SID关联的用户名,

6、 比如%SystemDrive%Documents and SettingsAdministrator.momo这个对应的就是本地机器的管理员SID %SystemDrive%Documents and SettingsAdministrator.domain这个就是对应域的管理员的帐户 另外微软的ResourceKit里面也提供了工具getsid,sysinternals的工具包里面也有Psgetsid,其实感觉原理都是读取注册表的值罢了,就是省了一些事情。Oracle SID重复解决方案Oracle卸载后再次安装,设置的SID相同出现“指定的SID在本机上已经存在。请指定一个不同的SID。

7、”实现方法: 1、 开始设置控制面板管理工具服务 停止所有Oracle服务。 2、 开始程序Oracle - OraHome81Oracle Installation Products Universal Installer 卸装所有Oracle产品,但Universal Installer本身不能被删除 5、 运行regedit,选择HKEY_LOCAL_MACHINE SOFTWARE ORACLE,按del键删除这个入口。 6、 运行regedit,选择HKEY_LOCAL_MACHINE SYSTEM CurrentControlSet Services,滚动这个列表,删除所有Orac

8、le入口。7、 运行regedit,HKEY_LOCAL_MACHINE SYSTEM CurrentControlSet Services Eventlog Application,删除所有Oracle入口。8、 开始设置控制面板系统高级环境变量 删除环境变量CLASSPATH和PATH中有关Oracle的设定 9、 从桌面上、STARTUP(启动)组、程序菜单中,删除所有有关Oracle的组和图标 10、 删除Program FilesOracle目录 11、 重新启动计算机,重起后才能完全删除Oracle所在目录 12、 删除与Oracle有关的文件,选择Oracle所在的缺省目录COr

9、acle,删除这个入口目录及所有子目录,并从Windows 2000目录(一般为CWINNT)下删除以下文件ORACLE.INI、oradim73.INI、oradim80.INI、 oraodbc.ini等等。13、 WIN.INI文件中若有ORACLE的标记段,删除该段14、 如有必要,删除所有Oracle相关的ODBC的DSN 15、 到事件查看器中,删除Oracle相关的日志说明:其中,6、7两条为重点删除对象,通常删除时我们易删除5,但不易发现6、7. 如果有个别DLL文件无法删除的情况,则不用理会,重新启动,开始新的安装, 安装时,选择一个新的目录,则,安装完毕并重新启动后,老的目

10、录及文件就可以删除掉了。2.Oracle 默认密码及修改密码2010年03月22日 星期一 10:30 P.M.默认密码:用户名:sys 密码:change_on_install 用户名:system 密码:manager 用户名:internal 密码:oracle 用户名:scott 密码:tiger遗失密码后修改密码一个修改Oracle用户密码的小诀窍数据库版本:有时候我们可能不知道一个用户的密码,但是又需要以这个用户做一些操作,又不能去修改掉这个用户的密码,这个时候,就可以利用一些小窍门,来完成操作。unix 的话,需要转到oracle用户环境变量下,前提是采用操作系统验证。具体操作过

11、程如下:SQL*Plus: Release 9.2.0.5.0 - Production on 星期日 11月 21 13:32:34 2004Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.SQL connect sys/oracle as sysdba已连接。SQL select username,password from dba_users;USERNAME PASSWORD- -SYS 8A8F025737A9097ASYSTEM 2D594E86F93B17A1DBSNMP E066D214D542

12、1CCCTOAD A1BA01CF0DD82695OUTLN 4A3BA55E08595C81WMSYS 7C9BA362F8314299已选择6行。SQL connect system/oracle已连接。SQL connect sys/oracle as sysdba已连接。修改用户system密码为managerSQL alter user system identified by manager;用户已更改。SQL select username,password from dba_users;USERNAME PASSWORD- -SYS 8A8F025737A9097ASYSTEM

13、 D4DF7931AB130E37DBSNMP E066D214D5421CCCTOAD A1BA01CF0DD82695OUTLN 4A3BA55E08595C81WMSYS 7C9BA362F8314299已选择6行。SQL connect system/manager已连接。然后此时可以做想要做的任何操作了SQL connect sys/oracle as sysdba已连接。修改用户system密码为以前的值SQL alter user system identified by values 2D594E86F93B17A1;用户已更改。SQL connect system/oracl

14、e已连接。SQL connect sys/oracle as sysdba已连接。SQL connect system/managerERROR:ORA-01017: invalid username/password; logon denied警告: 您不再连接到 ORACLE.又或者删除旧的密码文件,然后新建一个,如orapwd file=d:oracledatabasepwdetalker.ora password=newpass entries=10 force=y;可知使用OS验证登录后修改密码新建密码文件转贴(借花献佛) 概要:Oracle关系数据库系统以其卓越的性能获得了广泛的应

15、用,而保证数据库的安全性是数据库管理工作的重要内容。本文是笔者在总结Oracle数据库安全管理工作的基础上,对Oracle数据库系统密码文件的创建、使用和维护作了详细的介绍,供大家参考。 关键词:Oracle数据库密码文件 在Oracle数据库系统中,用户如果要以特权用户身份(INTERNALSYSDBASYSOPER)登录Oracle数据库可以有两种身份验证的方法:即使用与操作系统集成的身份验证或使用Oracle数据库的密码文件进行身份验证。因此,管理好密码文件,对于控制授权用户从远端或本机登录Oracle数据库系统,执行数据库管理工作,具有重要的意义。 Oracle数据库的密码文件存放有超

16、级用户INTERNALSYS的口令及其他特权用户的用户名口令,它一般存放在ORACLE_HOMEDATABASE目录下。 一、 密码文件的创建: 在使用Oracle Instance Manager创建一数据库实例的时侯,在ORACLE_HOMEDATABASE目录下还自动创建了一个与之对应的密码文件,文件名为PWDSID.ORA,其中SID代表相应的Oracle数据库系统标识符。此密码文件是进行初始数据库管理工作的基础。在此之后,管理员也可以根据需要,使用工具ORAPWD.EXE手工创建密码文件,命令格式如下: C: ;ORAPWDFILE= FILENAME PASSWORD = PASS

17、WORD ENTRIES=; 各命令参数的含义为: - FILENAME:密码文件名; - PASSWORD:设置INTERNALSYS帐号的口令; - MAX_USERS:密码文件中可以存放的最大用户数,对应于允许以SYSDBASYSOPER权限登录数据库的最大用户数。由于在以后的维护中,若用户数超出了此限制,则需要重建密码文件,所以此参数可以根据需要设置得大一些。 有了密码文件之后,需要设置初始化参数REMOTE_LOGIN_PASSWORDFILE来控制密码文件的使用状态。 二、 设置初始化参数REMOTE_LOGIN_PASSWORDFILE: 在Oracle数据库实例的初始化参数文件

18、中,此参数控制着密码文件的使用及其状态。它可以有以下几个选项: NONE:指示Oracle系统不使用密码文件,特权用户的登录通过操作系统进行身份验证; EXCLUSIVE:指示只有一个数据库实例可以使用此密码文件。只有在此设置下的密码文件可以包含有除INTERNALSYS以外的用户信息,即允许将系统权限SYSOPERSYSDBA授予除INTERNALSYS以外的其他用户。 SHARED:指示可有多个数据库实例可以使用此密码文件。在此设置下只有INTERNALSYS帐号能被密码文件识别,即使文件中存有其他用户的信息,也不允许他们以SYSOPERSYSDBA的权限登录。此设置为缺省值。 在REMO

19、TE_LOGIN_PASSWORDFILE参数设置为EXCLUSIVE、SHARED情况下,Oracle系统搜索密码文件的次序为:在系统注册库中查找ORA_SID_PWFILE参数值(它为密码文件的全路径名);若未找到,则查找ORA_PWFILE参数值;若仍未找到,则使用缺省值ORACLE_HOMEDATABASEPWDSID.ORA;其中的SID代表相应的Oracle数据库系统标识符。 三、 向密码文件中增加、删除用户: 当初始化参数REMOTE_LOGIN_PASSWORDFILE设置为EXCLUSIVE时,系统允许除INTERNALSYS以外的其他用户以管理员身份从远端或本机登录到Ora

20、cle数据库系统,执行数据库管理工作;这些用户名必须存在于密码文件中,系统才能识别他们。由于不管是在创建数据库实例时自动创建的密码文件,还是使用工具ORAPWD.EXE手工创建的密码文件,都只包含INTERNALSYS用户的信息;为此,在实际操作中,可能需要向密码文件添加或删除其他用户帐号。 由于仅被授予SYSOPERSYSDBA系统权限的用户才存在于密码文件中,所以当向某一用户授予或收回SYSOPERSYSDBA系统权限时,他们的帐号也将相应地被加入到密码文件或从密码文件中删除。由此,向密码文件中增加或删除某一用户,实际上也就是对某一用户授予或收回SYSOPERSYSDBA系统权限。 要进行

21、此项授权操作,需使用SYSDBA权限(或INTERNAL帐号)连入数据库,且初始化参数REMOTE_LOGIN_PASSWORDFILE的设置必须为EXCLUSIVE。具体操作步骤如下: 创建相应的密码文件; 设置初始化参数REMOTE_LOGIN_PASSWORDFILEEXCLUSIVE; 使用SYSDBA权限登录: CONNECTSYSinternal_user_passswordASSYSDBA; 启动数据库实例并打开数据库; 创建相应用户帐号,对其授权(包括SYSOPER和SYSDBA): 授予权限:GRANTSYSDBATOuser_name; 收回权限:REVOKESYSDBAF

22、ROMuser_name; 现在这些用户可以以管理员身份登录数据库系统了; 四、 使用密码文件登录: 有了密码文件后,用户就可以使用密码文件以SYSOPERSYSDBA权限登录Oracle数据库实例了,注意初始化参数REMOTE_LOGIN_PASSWORDFILE应设置为EXCLUSIVE或SHARED。任何用户以SYSOPERSYSDBA的权限登录后,将位于SYS用户的Schema之下,以下为两个登录的例子: 1. 以管理员身份登录: 假设用户scott已被授予SYSDBA权限,则他可以使用以下命令登录: CONNECTscotttigerASSYSDBA 2. 以INTERNAL身份登录

23、: CONNECTINTERNALINTERNAL_PASSWORD 五、 密码文件的维护: 1. 查看密码文件中的成员: 可以通过查询视图V$PWFILE_USERS来获取拥有SYSOPERSYSDBA系统权限的用户的信息,表中SYSOPERSYSDBA列的取值TRUEFALSE表示此用户是否拥有相应的权限。这些用户也就是相应地存在于密码文件中的成员。 2. 扩展密码文件的用户数量: 当向密码文件添加的帐号数目超过创建密码文件时所定的限制(即ORAPWD.EXE工具的MAX_USERS参数)时,为扩展密码文件的用户数限制,需重建密码文件,具体步骤如下: a 查询视图V$PWFILE_USER

24、S,记录下拥有SYSOPERSYSDBA系统权限的用户信息; b 关闭数据库; c 删除密码文件; d 用ORAPWD.EXE新建一密码文件; e 将步骤a中获取的用户添加到密码文件中。 3. 修改密码文件的状态: 密码文件的状态信息存放于此文件中,当它被创建时,它的缺省状态为SHARED。可以通过改变初始化参数REMOTE_LOGIN_PASSWORDFILE的设置改变密码文件的状态。当启动数据库事例时,Oracle系统从初始化参数文件中读取REMOTE_LOGIN_PASSWORDFILE参数的设置;当加载数据库时,系统将此参数与口令文件的状态进行比较,如果不同,则更新密码文件的状态。若计

25、划允许从多台客户机上启动数据库实例,由于各客户机上必须有初始化参数文件,所以应确保各客户机上的初始化参数文件的一致性,以避免意外地改变了密码文件的状态,造成数据库登陆的失败。 4. 修改密码文件的存储位置: 密码文件的存放位置可以根据需要进行移动,但作此修改后,应相应修改系统注册库有关指向密码文件存放位置的参数或环境变量的设置。 5. 删除密码文件: 在删除密码文件前,应确保当前运行的各数据库实例的初始化参数REMOTE_LOGIN_PASSWORDFILE皆设置为NONE。在删除密码文件后,若想要以管理员身份连入数据库的话,则必须使用操作系统验证的方法进行登录。重新设置ORACLE管理员密码在DOS下,必须是以ADMINISTRATOR登陆set oracoe_sid = 服务名sqlplus /nologconn /as sysdbaalter user system identified by *;更改之后重新启动机器和实例放可生效-怎样使用orapwd新建口令文件orapwd是oracle提供的创建口令文件的命令,如果口令文件不见了可以用这个命令重新创建。下面是orapwd命令的一些解释。D:oracleora92dat

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论