OracleSID及密码问题解决
oracle提示登录密码过期完美解决方法
oracle提⽰登录密码过期完美解决⽅法oracle 提⽰登录密码过期解决1.登录到oracle的服务器2.切换到oracle ⽤户3.设置到当前操作的实例名:export ORACLE_SID=XXX4.连接数据库的命令⾏模式:sqlplus /nolog5.sql: conn /as sysdba;⽤dba的⾝份登录6.修改过期的⽤户密码设置:修改⽤户密码:alter user XXX identified by XXX修改⽤户密码之后,重新使⽤修改的⽤户密码连接数据库就ok了,假如仍然还有锁定⽤户操作,记得执⾏解锁命令:alter user XXX unlock;Oracle使⽤scott⽤户登录提⽰密码过期--------------------------------------------------------------------------------在初次安装oracle的时候,很多⼈在解锁scott⽤户的同时会忘记给scott ⽤户初始化密码,但是oracle会给scott ⽤户设置⼀个默认的密码那就是tiger ,可是在安装成功之后使⽤scott⽤户登录oracle数据库却提⽰密码过期。
出现上述这种情况时,我们可以在cmd⾏中输⼊:sqlplus /nolg ;(使⽤的是⽆⽤户名的⽅式登录)然后在SQL> 命令中输⼊:conn sys/password as sysdba;(此处的sys⽤户的密码是我们给数据库设置的密码)在登录成功之后,会提⽰已连接最后输⼊:alter user scott identified by tiger;(修改scott⽤户的密码)alter user scott account unlock;(对SCOTT解锁)然后我们就可以使⽤scott⽤户登录了。
总结以上所述是⼩编给⼤家介绍的oracle 提⽰登录密码过期完美解决⽅法,希望对⼤家有所帮助,如果⼤家有任何疑问欢迎给我留⾔,⼩编会及时回复⼤家的!。
Oracle数据库例名SID的修改方法步骤
求知若饥,虚心若愚。
Oracle数据库例名SID的修改方法步骤Oracle数据库例名SID的修改方法步骤有时候我们需要修改Oracle数据库的实例名SID,下面是在Centos 6.5下修改ORACLE10.2的实例名的实例教程,感爱好学习的伴侣可以看下。
修改Oracle实例名系统环境:CentOS 6.5ORACLE版本:10.21、检查原来的数据库实例名$ echo $ORACLE_SIDorcl$ sqlplus / as sysdbaselect instance from v$thread;INSTANCE--------------------------------------------------------------------------------orcl2、关闭数据库shutdown immediate;exit;3、修改oracle用户的ORACLE_SID环境变量,如由orcl修改第1页/共3页学而不舍,金石可镂。
为linuxidc$ vi /home/oracle/.bash_profileexport ORACLE_SID=linuxidc$ source /home/oracle/.bash_profile4、修改/etc/oratab文件,将sid名由orcl修改为linuxidc $ vi /etc/oratablinuxidc:/u01/app/oracle/11.2/db_1:Y5、进入到$ORACLE_HOME/dbs名目将全部文件名中包含原来的sid的'修改为对应的新sid的$ cd $ORACLE_HOME/dbs$ mv hc_zf.dat hc_linuxidc.dat$ mv lkZF lklinuxidc$ mv orapwzf orapwlinuxidc$ mv spfilezf.ora spfilelinuxidc.ora6、重建口令文件由于口令文件改名后不能在新实例中使用,所以重建$ orapwd file=$ORACLE_HOME/dbs/orapw$ORACLE_SID password=123456 entries=5 force=y7、启动数据库$ sqlplus / as sysdbastartup8、检查数据库实例名第2页/共3页求知若饥,虚心若愚。
解决ORA-28001 the password has expired
Oracle 10g 以上密码失效问题oracle em无法登录,我自己遇到的问题总结如下:其中有两个用户可能密码失效1、sysman2、dbsnmp首先,以SYS DBA身份进入sqlpuls打开sqlpulsSQL->请输入用户名:sys as sysdbaSQL->密码:登录成功以后查询DBA用户状态SQL->select username,account_status from dba_users;查看其中常用的用户状态是否是EXPIRED 还是LOCKED有的是LOCKED<TIME>如果sysman状态是过期,修改密码方法:1、执行emctl stop dbconsole执行完成后再停止agent:emctl stop agent使用下面的命令来检查是否缺失停止了:emctl status dbconsoleemctl status agent确认停止以后就可以在sqlpuls里改密码了如果提示错误:Environment variable ORACLE_SID not defined. Please define it.执行:setoracle_sid=orcl2、执行下面的命令修改sysman密码:SQL->alter user sysman identified by <你要改的密码>;不过首先你得确认一下sysman是否被锁定,就是执行SQL->select username,account_status from dba_users;看sysman的状态,如果是LOCKED,那么你先得解锁:SQL->alter user sysman account unlock;解锁完成后再修改密码,或者修改后再解锁都行,步骤可以颠倒,但是绝对不能少。
修改完成后SQL->connect sysman/密码如果连接成功就可以进行下一步了。
Oracle常见错误及解决方案
O r a c l e常见错误及解决方案问题1:Oracle服务器进入PL/SQL Developer时报ora-01033:oracle initialization or shutdown in progress 错误提示,应用系统无法连接Oracle服务。
解决方法如下:⑴进入CMD,执行set ORACLE_SID=fbms,确保连接到正确的SID;⑵运行sqlplus "/as sysdba"SQL>shutdown immediate停止服务SQL>startup启动服务,观察启动时有无数据文件加载报错,并记住出错数据文件标号SQL>shutdown immediate再次停止服务SQL>startup mountSQL> recover datafile 2恢复出错的数据文件SQL>shutdown immediate再次停止服务SQL>startup启动服务,此次正常。
⑶进入PL/SQL Developer检查,没有再提示错误。
问题2:Oracle密码忘记了怎么办?解决方法有很多种,这里讲述以下三种:⑴打开cmd,输入sqlplus /nolog,回车;输入“conn / as sysdba”;输入“alter user sys identified by 新密码”。
注意:新密码最好以字母开头,否则可能出现错误Ora-00988。
有了这个方法后,只要自己对oracle 服务器有管理员权限,Oracle密码忘记了也不用着急,可以随意修改密码。
⑵在命令行执行如下命令:sqlplus "/@服务名as sysdba"然后在sqlplus中运行以上命令即可修改密码:alter user sys identified by 新密码;alter user system identified by 新密码;⑶运行到C盘根目录输入:SET ORACLE_SID = 你的SID名称输入:sqlplus/nolog输入:connect/as sysdba输入:alert user sys identified by sys输入:alert user system identified by system完成以上5步,则密码更改完成,密码是Oracle数据库的初始密码。
oracle登录失败处理策略
oracle登录失败处理策略Oracle数据库是目前世界上广泛使用的关系型数据库管理系统之一,它提供了可靠的数据存储和高效的数据管理能力。
然而,在一些情况下,我们可能会遇到Oracle登录失败的问题。
针对这种情况,我们需要制定一些处理策略以确保及时解决问题并保证系统的稳定性和安全性。
1. 检查用户名和密码登录失败的一个常见原因是用户名或密码输入错误。
当用户无法登录时,首先应该检查输入的用户名和密码是否正确。
可以使用管理员账户或其他已知正确的账户登录来验证。
2. 确认数据库是否可用登录失败可能也是由于数据库不可用引起的。
当遇到登录问题时,我们应该确认数据库是否在线或服务是否正常运行。
可以检查数据库监听器的状态来确定数据库是否可用。
3. 检查监听器设置监听器是Oracle数据库和网络之间的桥梁,它负责接收来自客户端的连接请求并将其传递给数据库。
登录失败可能是由于监听器设置不正确引起的。
我们应该检查监听器的配置文件,确保监听器正确监听数据库实例并使用正确的端口。
4. 检查网络连接登录失败还可能是由于网络连接问题引起的。
在网络不稳定或连接中断的情况下,Oracle登录可能会失败。
我们应该检查网络连接是否正常,并确保所使用的网络环境稳定。
5. 检查账户状态Oracle数据库中的账户状态对于成功登录非常重要。
账户可能被锁定或过期,这会导致登录失败。
我们应该检查账户状态,确认账户是否被锁定或过期,并相应地采取解锁或更新密码等操作。
6. 检查日志文件Oracle数据库会生成各种日志文件,这些日志文件中记录了系统各个方面的运行情况。
登录失败时,我们可以查看相关的日志文件,例如"alert.log"和"listener.log",以了解更多详细信息,并找到解决问题的线索。
7. 与管理员联系如果上述方法都无法解决登录失败的问题,我们应该及时与Oracle 数据库管理员或技术支持团队联系。
oracle 11g 用户密码过期 解决办法
2.在命令行执行如下命令:sqlplus “/@服务名 as sysdba”,(sqlplus /@sys as sysdba)
然后在sqlplus中alter user sys identified by 新密码;
alter user system identified by 新密码;
3、将密码有效期由默认的180天修改成“无限制”:
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
4、修改后,还没有被提示ORA-28002警告的用户不会再碰到同样的提示;
已经被提示的用户必须再改一次密码,来自例如下: alter user sys identified by xxx
$sqlplus / as sysdba
sql> alter user atp identified by <原来的密码> ----不用换新密码
oracle11g启动参数resource_limit无论设置为false还是true,密码有效期都是生效的
Oracle sys、system 以及一般用户的密码修改 .
3.运行到C盘根目录
1)输入:SET ORACLE_SID = 你的SID名称
2)输入:sqlplus/nolog
3)输入:connect/as sysdba
4)输入:alert user sys identified by sys
5)输入:alert user system identified by system
这个命令重新生成了数据库的密码文件。密码文件的位置在ORACLE_HOME目录下的\database目录下。
ORACLE 数据库故障解决方案
ORACLE 数据库故障解决方案一、引言ORACLE 数据库是一种常用的关系型数据库管理系统,用于存储和管理大量的结构化数据。
然而,在数据库运行过程中,可能会遇到各种故障,如数据库崩溃、数据丢失、性能下降等。
本文将介绍一些常见的ORACLE数据库故障解决方案,以匡助管理员快速恢复数据库的正常运行。
二、数据库崩溃的解决方案1. 数据库崩溃可能由于硬件故障、软件错误、人为操作等原因引起。
当数据库崩溃时,管理员应采取以下步骤进行故障排查和修复:a. 检查数据库日志文件,查找崩溃前的异常信息;b. 尝试重启数据库实例,使用备份恢复数据;c. 如果无法恢复数据,可以考虑使用数据库恢复工具进行修复。
2. 数据丢失的解决方案数据丢失可能由于误删除、磁盘损坏等原因导致。
为了防止数据丢失,管理员应采取以下预防措施:a. 定期备份数据库,并将备份文件存储在安全的位置;b. 使用数据库的日志文件功能,可以实现数据的增量备份;c. 配置RAID技术,提高数据库的容错能力。
3. 性能下降的解决方案当数据库性能下降时,可能会导致用户访问延迟、查询速度变慢等问题。
管理员可以采取以下措施来提高数据库性能:a. 优化数据库的查询语句,使用索引、视图等技术来加速查询;b. 增加硬件资源,如CPU、内存等,提升数据库的处理能力;c. 定期清理数据库,删除不必要的数据和索引,减少数据库的负载。
4. 数据库安全的解决方案数据库安全是保护数据库免受未经授权的访问和数据泄露的重要任务。
管理员应采取以下安全措施来保护数据库:a. 设置强密码策略,要求用户使用复杂的密码,并定期更换密码;b. 限制数据库用户的权限,只赋予其必要的访问权限;c. 定期更新数据库软件和补丁,以修复已知的安全漏洞;d. 使用防火墙和入侵检测系统,监控数据库的网络访问。
三、总结本文介绍了ORACLE数据库常见故障的解决方案,包括数据库崩溃、数据丢失、性能下降和数据库安全等方面。
oracle account is locked-的解决办法
ORA-28000: the account is locked-的解决办法ORA-28000: the account is locked第一步:使用PL/SQL,登录名为system,数据库名称不变,选择类型的时候把Normal修改为Sysdba; 第二步:选择myjob,查看users;第三步:选择system,右击点击“编辑”;第四步:修改密码,把“帐户被锁住”的勾去掉;第五步:点击“应用”再点击“关闭”;第六步:重新登录就可以通过验证了;第二种ALTER USER username ACCOUNT UNLOCK;第三种在plsql developer中要是以scott/tiger登录时提示ora-28000 the account is locked。
解决办法:新装完Oracle10g后,用scott/tiger测试,会出现以下错误提示:oracle10g the account is lockedoracle10g the password has expired原因:默认Oracle10g的scott不能登陆。
解决:(1)conn sys/sys as sysdba; //以DBA的身份登录(2)alter user scott account unlock;// 然后解锁(3)conn scott/tiger //弹出一个修改密码的对话框,修改一下密码就可以了在运行里面输入cmd在DOS模式下输入sqlplus,以system用户名登录,密码是刚装oracle时自己填写的密码orcl,登录进去以后。
SQL> conn sys/sys as sysdba; (分号是必须的但是我是以system登录的所在这不应该写connsys/sys as sysdba应该写conn system/orcl as sysdba;)Connected.SQL> alter user scott account unlock;User altered.SQL> commit;Commit complete.SQL> conn scott/tiger//请输入新密码,并确认后OKPassword changedConnected.这时再到plsql developer里面以scott/tiger登录就可以了。
oracle10gOEM常规错误(Unknownhostspecified)解决
oracle10gOEM常规错误(Unknownhostspecified)解决重装了笔记本上的oracle,安装完成后,可以正常使⽤OEM控制台,但是注销后重新登录或者重启系统后登录,或者笔记本使⽤⽹络环境发⽣了变化,都有可能遇到问题。
这些遇到问题的解决办法使⽤过,但是很久没折腾就忘记了,今天把这些问题和解决⽅法记录在此。
这个问题的现象是⽆法启动OEM。
使⽤命令⾏如下:复制代码代码如下:C:/Users/Administrator>set ORACLE_SID=TESTC:/Users/Administrator>emctl stop dbconsolOracle Enterprise Manager 10g Database Control Release 10.2.0.1.0Copyright (c) 1996, 2005 Oracle Corporation. All rights reserved.http://IP:1158/em/console/aboutApplication.....这种现象遇到过多次,经常是在你电脑的⽹络环境(IP地址)发⽣变化之后,导致在启动的时候oracle会根据你现在的IP地址构造OEM地址,⽽不是你当初安装的那个IP。
注意上⾯这个地⽅,http://IP:1158/em。
针对这个问题,当初我也根据google搜索到的办法重建OEM,但是这种⽅法还是⽐较繁琐和漫长,⽽且往往会遇到莫名其妙的错误。
我使⽤最简单的解决办法是修改$ORACLE_HOME/BIN/emctl.bat⽂件,打开这个⽂件,在⽂件开头或者合适位置(⽐如我的是在42⾏的setlocal之后)添加如下2⾏代码:复制代码代码如下:set ORACLE_SID=TESTset ORACLE_HOSTNAME=Laidye注意,ORACLE_HOSTNAME要设置成你初始安装时候oracle读取和设置的名称,在没有⽹络环境下安装oem的时候往往就是你的计算机名称,具体可以查看$ORACLE_HOME/HOSTNAME_SID这个⽂件夹。
Oracle常见问题及解决方法(个人遇到问题解决经验)
iSQL*Plus URL:http://10.10.43.137:5560/isqlplusEnteprise Manager 10g Database Control URL:http://information:5500/emOracleDBConsoleorcl不能启动,报错误码2解决策略解决策略一:修改你的主机参数文件修改一下:C:\WINDOWS\system32\drivers\etc下的host文件.如果没有的话就自己加一个IP和你的计算机名对应,如果已有了就把你的IP地址和你的计算机名对应起来.如:# copyright (c) 1993-1999 microsoft corp.## this is a sample hosts file used by microsoft tcp/ip for windows.## this file contains the mappings of ip addresses to host names. each# entry should be kept on an individual line. the ip address should# be placed in the first column followed by the corresponding host name.# the ip address and the host name should be separated by at least one# space.## additionally, comments (such as these) may be inserted on individual# lines or following the machine name denoted by a '#' symbol.## for example:## 102.54.94.97 # source server# 38.25.63.10 # x client host127.0.0.1 localhost10.10.43.137 information解决策略二:启动电脑,到登陆界面,电脑报有个服务启动失败,电脑没有新装软件,周六还没有问题,怎么突然报这个错误?于是到事件查看器中看看什么问题,显示是OracleDBConsoleorcl启动失败,到服务里一看,确实没有启动。
oracle 解除账户锁定规则
标题:Oracle 解除账户锁定规则一、背景介绍Oracle数据库作为一种重要的关系型数据库管理系统,广泛应用于各行各业的信息管理和数据存储中。
在使用Oracle数据库的过程中,经常会碰到账户被锁定的情况,这给数据库管理人员带来了一定的困扰。
为了解决这一问题,Oracle提供了一定的解除账户锁定规则。
二、账户锁定的原因1. 输入错误超过一定次数2. 管理员手动锁定账户3. 其他未知原因导致的账户锁定三、账户锁定的解除规则1. 通过重置密码解除锁定当账户因为密码输入错误次数过多被锁定时,可以通过重置密码解除锁定。
具体操作步骤如下:(1)使用管理员账户登入Oracle数据库;(2)执行ALTER USER username ACCOUNT UNLOCK语句,将被锁定的账户解锁;(3)执行ALTER USER username IDENTIFIED BY new_password语句,重置该账户的密码。
2. 等待一定时间自动解锁当账户被锁定时,可以选择等待一定时间让系统自动解锁账户。
Oracle默认的自动解锁时间为30分钟,当超过这个时间后,系统会自动解锁账户。
3. 通过SYS用户解锁在特殊情况下,可以使用SYS用户来解锁被锁定的账户。
操作步骤如下:(1)使用SYS用户登入Oracle数据库;(2)执行ALTER USER username ACCOUNT UNLOCK语句,将被锁定的账户解锁。
四、账户锁定规则的设置和管理1. 设置账户锁定策略为了保障数据库的安全性,可以设置账户锁定策略,限制密码错误次数并设置账户锁定时间。
可以通过以下SQL语句设置账户锁定策略:ALTER PROFILE profile_name LIMIT F本人LED_LOGIN_ATTEMPTS n;ALTER PROFILE profile_name LIMIT PASSWORD_LOCK_TIME t;2. 监控账户锁定情况数据库管理员应当定期查看和监控数据库中账户的锁定情况,及时发现并处理异常情况,保障数据库的正常运行。
关于Oracle12C默认用户名system密码不正确的解决方案
关于Oracle12C默认⽤户名system密码不正确的解决⽅案如果可以登录任意的⼀个⽤户可以通过⼀下⽅法来知道当前有哪些⽤户。
select distinct owner from all_objects 查看当前⽤户。
如果你在安装的时候没有设置密码的话oracle有三个默认的⽤户名和密码1.⽤户名:sys密码:change_on_install2.⽤户名:system密码:manager3.⽤户名:scott密码:tiger或者可能你在安装的时候设置了符合Oracle校验规则的密码,但是在登录的时候密码不正确,可能是你在安装时的字符集设置的原因解决⽅案:1.使⽤sysdba账号登陆后可以修改其他账号密码运⾏ cmd 按如下输⼊命令 sqlplus / as sysdba ---------以sys登陆超级⽤户(sysdba)2.解除锁定账号alter user ⽤户名 account unlock; --------- 解除锁定(必须带“;”号)以system⽤户名为例,即命令为alter user system account unlock;3.为该账户设置新密码alter user ⽤户名 identified by 密码; -------------修改密码(密码加不加双引号均可,必须带“;”号)以⽤户名system密码dhee为例,即命令为alter user system identified by dhee;然后⽤你改好的密码登陆到此这篇关于关于Oracle12C默认⽤户名system密码不正确的解决⽅案的⽂章就介绍到这了,更多相关Oracle12C默认⽤户名system密码不正确内容请搜索以前的⽂章或继续浏览下⾯的相关⽂章希望⼤家以后多多⽀持!。
Oracle数据库操作常见错误及解决方案
Oracle数据库操作常见错误及解决方案这个错误通常发生在尝试查询一个表或视图但该表或视图不存在时。
解决方案是确保表或视图存在,并且用正确的名称引用它们。
使用DESCRIBE命令或查询SYS.ALL_TABLES视图来验证表或视图是否存在。
另外,确保用户有足够的权限来访问表或视图。
这个错误发生在使用无效的用户名或密码来连接到Oracle数据库时。
解决方案是确保提供了正确的用户名和密码,并且用户在数据库中存在且密码正确。
可以通过使用SQL*Plus或Oracle SQL Developer来验证用户名和密码是否正确。
这个错误通常发生在尝试使用无效的数字进行数值计算时,例如将一个字符串转换为数字时。
解决方案是确保提供的值是有效的数字。
可以使用TO_NUMBER函数将字符串转换为数字,并使用TO_CHAR函数将数字转换为字符串。
这个错误通常发生在尝试向一个非空列插入NULL值时。
解决方案是确保插入的值不为NULL,并与列的数据类型匹配。
如果希望列允许NULL 值,可以修改表定义以允许NULL值。
这个错误通常发生在使用无效的列名或对象名称时。
解决方案是确保引用的列名或对象名称存在且正确。
可以使用DESCRIBE命令或查询SYS.ALL_TAB_COLUMNS视图来验证列名或对象名称是否正确。
这个错误通常发生在使用不存在的函数、过程或包体时。
解决方案是确保引用的函数、过程或包体存在且正确。
可以使用DESCRIBE命令或查询SYS.ALL_PROCEDURES和SYS.ALL_PACKAGES视图来验证对象是否存在。
这个错误通常发生在无法解析TNS服务名称时。
解决方案是确保TNS 服务名称正确,并且TNS配置文件(tnsnames.ora)中包含了正确的服务定义。
可以使用lsnrctl命令来验证TNS服务是否可用。
这个错误通常发生在无法连接到Oracle数据库时。
解决方案是确保Oracle数据库监听程序正在运行,并且可以通过网络访问。
如何修改数据库的sid
如何修改数据库的sid环境: centos 6.2 oracle 11.2如何修改数据库的sid1. ⽣成控制档的脚本sql>alter database backup controlfile to trace as '/u/controlfile.txt';2.如果是spfile[sid].ora启动数据库的,⽣成pfile檔.sql>create pfile='/u/pfile.ora' from spfile;3.关闭数据库sql>shutdown immediate;4.修改参数⽂件中⽤的原有的实例名信息,db_name以及控制⽂件和跟踪⽂件的路径。
5.及新建密码⽂件(或者修改密码⽂件名)。
$ orapwd file=$ORACLE_BASE/product/11.2.0/db_1/dbs/orapwseven password=oracle entries=5 force=y 6.编辑controlfile.txt⾥⾯内容⽐如:CREATE CONTROLFILE SET DATABASE "SEVEN" RESETLOGS NOARCHIVELOGMAXLOGFILES 16MAXLOGMEMBERS 3MAXDATAFILES 100MAXINSTANCES 8MAXLOGHISTORY 292LOGFILEGROUP 1 '/oradata/seven/redo01.log' SIZE 50M,GROUP 2 '/oradata/seven/redo02.log' SIZE 50M,GROUP 3 '/oradata/seven/redo03.log' SIZE 50MDATAFILE'/oradata/seven/system01.dbf','/oradata/seven/undotbs01.dbf','/oradata/seven/sysaux01.dbf','/oradata/seven/users01.dbf'CHARACTER SET ZHT16BIG5;7.修改对应的⽂件名$ORACLE_BASE/ADMIN/seven,以及/oradata/seven8.如果是windows的系列操作系统.oradim -delete -sid ORCLoradim -new -sid SEVEN9.设置环境变量export ORACLE_SID=seven启动数据库到nomount pfile=’’sql>startup nomount pfile='/u/pfile.ora'10.⽤上⾯的脚本新建控制⽂件.删除或改名原来的控制⽂件11.sql>alter database open resetlogs;版权所有,转载请注明作者及原⽂链接,否则追究法律责任!QQ: 584307876作者: Seven邮箱: seven_ginna@。
Oracle修改用户密码错误次数及解锁用户
Oracle修改⽤户密码错误次数及解锁⽤户ORACLE11g错误密码登录默认是10次,10次错误后⽤户将被锁定,如下:SQL> conn test/123456ERROR: ORA-28000: the account is locked1.查看被锁定的⽤户SQL> select LOCK_DATE,username from dba_users where username='GXGAT';LOCK_DATE USERNAME--------- ------------------------------16-JUN-20 TESTLOCK_DATE为空说明没有锁定,⾮空为锁定。
或SELECT ERNAME,DECODE(L.TYPE, 'TM', 'TABLE LOCK', 'TX', 'ROW LOCK', NULL) LOCK_LEVEL,O.OWNER,O.OBJECT_NAME,O.OBJECT_TYPE,S.SID,S.SERIAL#,S.TERMINAL,S.MACHINE,S.PROGRAM,S.OSUSERFROM V$SESSION S, V$LOCK L, DBA_OBJECTS OWHERE S.SID = L.SIDAND O.OBJECT_ID = L.ID1AND ERNAME IS NOT NULL;2.解锁⽤户⽅式:登陆sys⽤户,执⾏解锁命令SQL> alter user test account unlock;User altered.SQL> conn test/passwordConnected.3.现在我们来查看下默认连接错误锁定次数SQL> select * from dba_profiles where resource_name like 'FAILED_LOGIN_ATTEMPTS%';PROFILE RESOURCE_NAME RESOURCE LIMIT-------------------------------------------------------------------------------------------------------------------------------- -------------------------------- -------- ---------------------------------------------------------------------------------------------------------------COM INH IMP--- --- ---DEFAULT FAILED_LOGIN_ATTEMPTS PASSWORD 10NO NO NO4.修改默认的错误登录次数,为不限制(为安全起见,不建议使⽤)SQL> alter profile DEFAULT limit FAILED_LOGIN_ATTEMPTS UNLIMITED; SQL>alter profile default limit failed_login_attempts 20; //修改为20次。
Linux修改数据库的sid和dbname 查看oracle 实例
有时我们需要修改数据库的sid和dbname,除了使用rman进行备份恢复之外,也可以通过手工方式修改,主要由两个主要过程完成:1、修改实例名(SID)2、修改数据库名(dbname)下面演示将数据库sid和dbname由orcl修改为cnhtm的过程:1、修改实例名(sid)1.1、检查原来的数据库实例名(sid)oracle@oracle[/home/oracle]> echo $ORACLE_SIDorcloracle@oracle[/home/oracle]> sqlplus / as sysdbaSQL*Plus: Release 10.2.0.1.0 - Production on Sun Dec 20 11:14:49 2009Copyright (c) 1982, 2005, Oracle. All rights reserved.Connected to:Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - ProductionWith the Partitioning, OLAP and Data Mining optionssys@ORCL> select instance from v$thread;INSTANCE--------------------------------------------------------------------------------orcl1.2、关闭数据库注意不能用shutdown abort,只能是shutdown immediate或shutdown normalsys@ORCL> shutdown immediateDatabase closed.Database dismounted.ORACLE instance shut down.sys@ORCL> exitDisconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - ProductionWith the Partitioning, OLAP and Data Mining options1.3、修改oracle用户的ORACLE_SID环境变量,如由orcl修改为cnhtmoracle@oracle[/home/oracle]> cat ~/.bash_profile|grep -i sidORACLE_SID=cnhtmexport ORACLE_BASE ORACLE_HOME ORACLE_SID PATH1.4、修改/etc/oratab文件,将sid名由旧的修改为新的,如从orcl修改为cnhtm oracle@oracle[/home/oracle]> cat /etc/oratab......cnhtm:/oracle/app/10.1:Y+ASM:/oracle/app/10.1:Y1.5、进入到$ORACLE_HOME/dbs目录将所有文件名中包含原来的sid的修改为对应的新sid的如我对如下文件修改为其后对应的文件hc_orcl.dat->hc_cnhtm.datlkORCL->lkCNHTMorapworcl->orapwcnhtmsnapcf_orcl.f->snapcf_cnhtm.fspfileorcl.ora->spfilecnhtm.ora1.6、使新修改的ORACLE_SID环境变量生效oracle@oracle[/oracle/app/10.1/dbs]> . ~/.bash_profileoracle@oracle[/oracle/app/10.1/dbs]> echo $ORACLE_SIDcnhtm1.7、重建口令文件因为口令文件改名后不能在新实例中使用,所以重建oracle@oracle[/oracle/app/10.1/dbs]> orapwdfile=$ORACLE_HOME/dbs/orapw$ORACLE_SID password=oracle entries=5 force=y oracle@oracle[/oracle/app/10.1/dbs]> ls -lrt orapw*-rw-r----- 1 oracle oinstall 2048 Dec 20 11:27 orapwcnhtm1.8、启动数据库oracle@oracle[/oracle/app/10.1/dbs]> sqlplus / as sysdbaSQL*Plus: Release 10.2.0.1.0 - Production on Sun Dec 20 11:29:53 2009Copyright (c) 1982, 2005, Oracle. All rights reserved.Connected to an idle instance.idle> startupORACLE instance started.Total System Global Area 167772160 bytesFixed Size 1218292 bytesVariable Size 62916876 bytesDatabase Buffers 96468992 bytesRedo Buffers 7168000 bytesDatabase mounted.Database opened.1.9、检查数据库实例名通过如下语句检查数据库实例名,发现实例名已经由orcl变成cnhtmidle> select instance from v$thread;INSTANCE--------------------------------------------------------------------------------cnhtm2、修改数据库名(dbname)虽然已经修改过了实例名(sid),但是数据库的名称(dbname还是原来的名称orcl)idle> conn / as sysdbaConnected.sys@ORCL> show parameter nameNAME TYPE VALUE------------------------------------ ----------- ------------------------------db_file_name_convert stringdb_name string orcldb_unique_name string orclglobal_names boolean FALSEinstance_name string cnhtmlock_name_space stringlog_file_name_convert stringservice_names string orcl可以通过如下步骤修改数据库名(dbname)2.1、首先切换一下在线日志,使数据库做checkpointsys@ORCL> alter system archive log current;System altered.2.2、生成重建控制文件的脚本sys@ORCL> alter database backup controlfile to trace resetlogs;Database altered.2.3、关闭数据库,需要干净关闭,不能shutdown abortsys@ORCL> shutdown immediateDatabase closed.Database dismounted.ORACLE instance shut down.sys@ORCL> exitDisconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - ProductionWith the Partitioning, OLAP and Data Mining options2.4、进入$ORACLE_BASE/admin/<sid>/udump目录中,找到最新生成的trc文件,这就是重建控制文件的脚本oracle@oracle[/oracle/admin/orcl/udump]> ls -lrttotal 2608-rw-r----- 1 oracle oinstall 577 Nov 7 13:37 orcl_ora_12020.trc......-rw-r----- 1 oracle oinstall 4407 Dec 20 11:36 cnhtm_ora_7789.trc2.5、将找到的trc文件复制一份,并命名为ccf.sqloracle@oracle[/oracle/admin/orcl/udump]> cp cnhtm_ora_7789.trc ccf.sql2.6、修改ccf.sql查找STARTUP NOMOUNT语句,将这一行上面的所有行都删除查找所有以--开始的行,把这些行删除查找所有的orcl修改为cnhtm,所有的ORCL修改为CNHTM找到CREATE CONTROLFILE REUSE DATABASE...语句,将其中的REUSE修改为SET 找到RECOVER DATABASE USING BACKUP CONTROLFILE语句,将其用双横线(--)注释掉如果有精力,可以修改这个脚本中的datafile和logfile部分使用新的文件名称,其实这部分不修改也可以,我为了测试的目的进行了修改,修改后要记得去重命名数据文件和log文件,将对应的数据文件和log文件与这里的名称相对应我修改后的ccf.sql文件内容如下STARTUP NOMOUNTCREATE CONTROLFILE set DATABASE "cnhtm" RESETLOGS ARCHIVELOG MAXLOGFILES 16MAXLOGMEMBERS 3MAXDATAFILES 100MAXINSTANCES 8MAXLOGHISTORY 292LOGFILEGROUP 1 '+DATA/cnhtm/onlinelog/group_1.LOG' SIZE 100M,GROUP 2 '+DATA/cnhtm/onlinelog/group_2.LOG' SIZE 100M,GROUP 3 '+DATA/cnhtm/onlinelog/group_3.LOG' SIZE 100M,GROUP 4 '+DATA/cnhtm/onlinelog/group_4.LOG' SIZE 100MDATAFILE'+DATA/cnhtm/datafile/system01.DBF','+DATA/cnhtm/datafile/undotbs101.DBF','+DATA/cnhtm/datafile/sysaux01.DBF','+DATA/cnhtm/datafile/users01.DBF','+DATA/cnhtm/datafile/example01.DBF','+DATA/cnhtm/datafile/tbs_lmt01.DBF','+DATA/cnhtm/datafile/tbs_lmt_201.DBF','+DATA/cnhtm/datafile/tbs_lmt_301.DBF'CHARACTER SET ZHS16GBK;--RECOVER DATABASE USING BACKUP CONTROLFILE;ALTER DATABASE OPEN RESETLOGS;ALTER TABLESPACE TEMP ADD TEMPFILE'+DATA/cnhtm/tempfile/temp.269.705923003'SIZE 104857600 REUSE AUTOEXTEND ON NEXT 104857600 MAXSIZE 32767M;2.7、修改数据文件、在线日志文件名如果上一步修改了ccf.sql文件中的datafile和logfile段的文件名,这里要将这些文件名重命令为与其一致。
oracle11g用户被锁定the account is locked的解决办法
Oracle11g用户被锁定the account is locked的解决办法用SQL Plus登录时输入:conn scott/tiger给出提示:ERROR:ORA-28000: the account is locked解决方法:解决:(1)以DBA的身份登录另一个用户,输入:c:> sqlplus sys/test1234 as sysdba(2)为scott解锁,输入:alter user scott account unlock;给出提示:用户已更改。
SQL> conn scott/tigerERROR:ORA-28001: the password has expired更改scott 的口令新口令:(3)输入新的密码.测试、运行程序时,一般使用服务器上的oracle服务,2010年春节后第一天来上班,服务器整体down掉了,所以只好使用本机的oracle服务,是两年装的,连system的密码都不记得了。
首先,开启本地的oracle服务,开始-->设置-->按制面板-->管理工具-->服务按字母“O”很快找到oracle 相关的九个服务,OracleOraDb10g_home1TNSListener 服务一般是开着的,因为开发人员一般都要在自己的机子上使用客户端连接远程的数据库服务器,如果大家没有开就开一下吧。
OracleServiceORCL 服务,准确的说应该是OracleServiceSID服务,我的SID是的oracle默认的ORCL,所以就是OracleServiceORCL ,也开启,OK了。
其次,在NET Manager 中配置一个服务命名,记得以前在NET Manager中是会自动配置一个本地的服务命名的,好像是叫LOCAL,但是在oracle 10中没有,应该不会是我两年前删除了!那就自己配置吧,就那么几步,很简单了,到了最后测试,默认使用scott /tiger 进行测试,出现ora-280000 the account is locked 提示,换system /manager 也是ora-280000 the account is locked ,账号也锁定,看来得解决这个问题。
查看oracle用户sid的方法-概述说明以及解释
查看oracle用户sid的方法-概述说明以及解释1.引言1.1 概述概述:在Oracle数据库中,每个实例在启动时都会被分配一个唯一的系统标识符(SID)。
这个SID是数据库实例的唯一标识,用于区分不同的数据库实例。
在Oracle数据库中,SID扮演着非常重要的角色。
通过SID,用户可以连接到指定的数据库实例,进行数据操作和管理。
因此,了解如何查看Oracle用户的SID是非常重要的。
本文将介绍什么是Oracle SID、查看Oracle用户SID的方法以及SID 的作用。
通过阅读本文,读者将能够更好地理解Oracle数据库中SID的概念及其应用。
文章结构部分是指整篇文章的组织和安排。
在这篇文章中,我们将按照以下结构来展开讨论:1. 引言1.1 概述:介绍文章所涉及的主题和背景1.2 文章结构:介绍文章的结构和各部分内容安排1.3 目的:说明本文的写作目的和意义2. 正文2.1 什么是Oracle SID:解释Oracle SID的概念和作用2.2 查看Oracle用户SID的方法:详细介绍如何查看Oracle用户的SID2.3 SID的作用:探讨SID在Oracle数据库中的实际作用和重要性3. 结论3.1 总结:总结本文的主要内容和观点3.2 应用:探讨本文内容在实际工作中的应用场景3.3 展望:展望未来关于Oracle SID的研究方向和发展趋势通过以上结构,读者可以清晰地了解文章的逻辑脉络和内容安排,帮助他们更快速地获取所需信息。
1.3 目的在本文中,我们的目的是介绍如何查看Oracle用户的SID。
SID是Oracle中的重要概念,它代表一个唯一的系统标识符,用于标识和连接到数据库实例。
了解如何查看用户的SID对于管理员和开发人员来说非常重要,因为它可以帮助他们更好地管理和调试数据库连接问题。
通过本文的介绍,读者将能够了解到不同方法来查看Oracle用户的SID,并且能够更有效地处理与SID相关的任务。
Oracle企业管理器错误解决方法
输入以下信息:
数据库 SID: orcl
已为数据库 orcl 配置了 Database Control
您已选择配置 Database Control, 以便管理数据库 orcl
此操作将移去现有配置和默认设置, 并重新执行配置
1.4.解决方法
复制OC4J_DBConsole _localhost_orcl文件夹,并且改名为OC4J_DBConsole _kingdom-437fe9d_orcl即可。
==================================
1.描述:
Enterprise Manager 无法连接到数据库实例。
但是在之后(系统环境发生了变化)可能就会出现无法打开网页控制台的情况。
本质:IP环境变化
在cmd命令控制台输入:
C:\Documents and Settings\Administrator>set oracle_sid=orcl
C:\Documents and Settings\joe>emctl start dbconsole
加密密钥已放置在文件 C:\app\whtai\product\11.1.0\db_1\192.168.11.74_orcl\sysman\
config\emkey.ora 中。请务必备份此文件, 因为如果此文件丢失, 则**********************************
现象:无论怎么输入用户名和密码都报错。
原因:操作系统用户权限问题
解决方法:oracle10g要进行主机身份验证
1、从开始——进入设置——控制面板——管理工具 找到本地安全策略
重装Oracle时出现SID已存在问题的解决办法
方法如下:
1、开始->设置->控制面板->管理工具->服务 停止所有Oracle服务。
2、 开始->程序->Oracle - OraHome81->Oracle Installation Products-> Universal Installer 卸装所有Oracle产品,但Universal Installer本身不能被删除
5、 运行regedit,选择HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE,按del键删除这个入口。
6、 运行regedit,选择HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services,滚动 这个列表,删除所有Oracle入口。
7、 运行refedit, HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog\Application, 删除所有Oracle入口。
8、 开始->设置->控制面板->系统->高级->环境变量 删除环境变量CLASSPATH和PATH中有关Oracle的设定
9、 从桌面上、STARTUP(启动)组、程序菜单中,删除所有有关Oracle的组和图标
10、 删除\Program Files\Oracle目录
11、 重新启动计算机,重起后才能完全删除Oracle所在目录(到这基本可以安装 ) 12、 删除与Oracle有关的文件,选择Oracle所在的缺省目录C:\Oracle,删除这个入 口目录及所有子目录,并从Windows 2000目录(一般为C:\WINNT)下删除以下文 件ORACLE.INI、oradim73.INI、oradim80.INI、oraodbc.ini等等。 13、 WIN.INI文件中若有[ORACLE]的标记段,删除该段
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.Oracle卸载后再次安装,设置的SID相同出现“指定的SID在本机上已经存在。
请指定一个不同的SID。
”SID简介SID也就是安全标识符(Security Identifiers),是标识用户、组和计算机帐户的唯一的号码。
在第一次创建该帐户时,将给网络上的每一个帐户发布一个唯一的 SID。
Windows 2000 中的内部进程将引用帐户的 SID 而不是帐户的用户或组名。
如果创建帐户,再删除帐户,然后使用相同的用户名创建另一个帐户,则新帐户将不具有授权给前一个帐户的权力或权限,原因是该帐户具有不同的 SID 号。
安全标识符也被称为安全 ID 或 SID。
SID的作用用户通过验证后,登陆进程会给用户一个访问令牌,该令牌相当于用户访问系统资源的票证,当用户试图访问系统资源时,将访问令牌提供给 Windows NT,然后Windows NT 检查用户试图访问对象上的访问控制列表。
如果用户被允许访问该对象,Windows NT将会分配给用户适当的访问权限。
访问令牌是用户在通过验证的时候有登陆进程所提供的,所以改变用户的权限需要注销后重新登陆,重新获取访问令牌。
SID号码的组成如果存在两个同样SID的用户,这两个帐户将被鉴别为同一个帐户,原理上如果帐户无限制增加的时候,会产生同样的SID,在通常的情况下SID是唯一的,他由计算机名、当前时间、当前用户态线程的CPU耗费时间的总和三个参数决定以保证它的唯一性。
一个完整的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。
然后表示一系列的子颁发机构,前面几项是标志域的,最后一个标志着域内的帐户和组。
SID的获得开始-运行-regedit32-HKEY_LOCAL_MACHINESAMSAMDomainsBuiltinAliasesMembers,找到本地的域的代码,展开后,得到的就是本地帐号的所有SID列表。
其中很多值都是固定的,比如第一个000001F4(16进制),换算成十进制是500,说明是系统建立的内置管理员帐号administrator,000001F5换算成10进制是501,也就是GUEST帐号了,详细的参照后面的列表。
这一项默认是system可以完全控制,这也就是为什么要获得这个需要一个System的Cmd的Shell的原因了,当然如果权限足够的话你可以把你要添加的帐号添加进去。
或者使用Support Tools的Reg工具:reg query HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionProfileList还有一种方法可以获得SID和用户名称的对应关系:1. Regedit32HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersion ProfileList2. 这个时候可以在左侧的窗口看到SID的值,可以在右侧的窗口中ProfileImagePath看到不同的SID关联的用户名,比如%SystemDrive%Documents and SettingsAdministrator.momo这个对应的就是本地机器的管理员SID%SystemDrive%Documents and SettingsAdministrator.domain这个就是对应域的管理员的帐户另外微软的ResourceKit里面也提供了工具getsid,sysinternals的工具包里面也有Psgetsid,其实感觉原理都是读取注册表的值罢了,就是省了一些事情。
Oracle SID重复解决方案Oracle卸载后再次安装,设置的SID相同出现“指定的SID在本机上已经存在。
请指定一个不同的SID。
”实现方法:1、开始->设置->控制面板->管理工具->服务停止所有Oracle服务。
2、开始->程序->Oracle - OraHome81->Oracle Installation Products-> Universal Installer 卸装所有Oracle产品,但Universal Installer本身不能被删除5、运行regedit,选择HKEY_LOCAL_MACHINE SOFTWARE ORACLE,按del键删除这个入口。
6、运行regedit,选择HKEY_LOCAL_MACHINE SYSTEM CurrentControlSet Services,滚动这个列表,删除所有Oracle入口。
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所在的缺省目录COracle,删除这个入口目录及所有子目录,并从Windows 2000目录(一般为CWINNT)下删除以下文件ORACLE.INI、oradim73.INI、oradim80.INI、 oraodbc.ini等等。
13、 WIN.INI文件中若有[ORACLE]的标记段,删除该段14、如有必要,删除所有Oracle相关的ODBC的DSN15、到事件查看器中,删除Oracle相关的日志说明:其中,6、7两条为重点删除对象,通常删除时我们易删除5,但不易发现6、7. 如果有个别DLL文件无法删除的情况,则不用理会,重新启动,开始新的安装,安装时,选择一个新的目录,则,安装完毕并重新启动后,老的目录及文件就可以删除掉了。
2.Oracle 默认密码及修改密码2010年03月22日星期一 10:30 P.M.默认密码:用户名:sys 密码:change_on_install用户名:system 密码:manager用户名:internal 密码:oracle用户名:scott 密码:tiger遗失密码后修改密码一个修改Oracle用户密码的小诀窍数据库版本:9.2.0.5有时候我们可能不知道一个用户的密码,但是又需要以这个用户做一些操作,又不能去修改掉这个用户的密码,这个时候,就可以利用一些小窍门,来完成操作。
unix 的话,需要转到oracle用户环境变量下,前提是采用操作系统验证。
具体操作过程如下:SQL*Plus: Release 9.2.0.5.0 - Production on 星期日 11月 21 13:32:34 2004 Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved. SQL> connect sys/oracle as sysdba已连接。
SQL> select username,password from dba_users;USERNAME PASSWORD------------------------------ ------------------------------SYS 8A8F025737A 9097ASYSTEM 2D594E86F93B17A1DBSNMP E066D214D5421C CCTOAD A1BA01CF0DD8 2695OUTLN 4A3BA55E08595 C81WMSYS 7C9BA362F8314 299已选择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 8A8F025737A 9097ASYSTEM D4DF7931AB130E 37DBSNMP E066D214D5421C CCTOAD A1BA01CF0DD8 2695OUTLN 4A3BA55E08595 C81WMSYS 7C9BA362F8314 299已选择6行。
SQL> connect system/manager已连接。
然后此时可以做想要做的任何操作了SQL> connect sys/oracle as sysdba已连接。
修改用户system密码为以前的值SQL> alter user system identified by values '2D594E86F93B17A1';用户已更改。
SQL> connect system/oracle已连接。
SQL> connect sys/oracle as sysdba已连接。
SQL> connect system/managerERROR:ORA-01017: invalid username/password; logon denied警告: 您不再连接到 ORACLE.又或者删除旧的密码文件,然后新建一个,如orapwd file=d:\oracle\database\pwdetalker.ora password=newpass entries=10 force=y;可知使用OS验证登录后修改密码新建密码文件转贴(借花献佛)概要:Oracle关系数据库系统以其卓越的性能获得了广泛的应用,而保证数据库的安全性是数据库管理工作的重要内容。
本文是笔者在总结Oracle数据库安全管理工作的基础上,对Oracle数据库系统密码文件的创建、使用和维护作了详细的介绍,供大家参考。