使用Oracle SQL Developer更改密码

时间:2010-06-21 16:10:27

标签: oracle oracle-sqldeveloper

我的许多用户都不使用SQLPlus。我不能给他们改变用户。我们每隔60天就会过期密码。

我无法在SQL开发人员中使用SQLPlus命令“password”。

  1. 当我点击运行时,我收到无效的命令错误
  2. 当我点击运行脚本时,没有任何反应。
  3. 我不想写一个包来更改密码,因为我们有很多数据库。我有更好的选择吗?

15 个答案:

答案 0 :(得分:171)

使用SQL Developer更新密码的正确语法是:

  

更改“new_password”标识的用户 user_name 替换   “old_password”;

您可以在此处查看此命令的更多选项:http://docs.oracle.com/cd/B28359_01/server.111/b28286/statements_4003.htm#i2058207

答案 1 :(得分:93)

在SQL工作表中:

输入“密码”(不含引号) 突出显示,按CTRL + ENTER。 密码更改屏幕出现。

答案 2 :(得分:57)

SQL Developer有一个内置的重置密码选项,可以适用于您的情况。它还需要将Oracle Instant Client添加到工作站。当SQL开发人员启动时,当即时客户端位于路径中时,您将启用以下选项:

SQL Developer: Drop Down menu showing reset password option

Oracle Instant Client不需要管理员权限即可安装,只需写入目录并将该目录添加到用户路径即可。大多数用户都有权执行此操作。

回顾:为了在Oracle SQL Developer上使用重置密码:

  1. 您必须在目录中解压缩Oracle Instant Client
  2. 您必须将Oracle Instant Client目录添加到用户路径
  3. 然后必须重新启动Oracle SQL Developer
  4. 此时,您可以右键单击数据源并重置密码。

    请参阅http://www.thatjeffsmith.com/archive/2012/11/resetting-your-oracle-user-password-with-sql-developer/了解完整的演练

    另请参阅oracle文档中的评论:http://docs.oracle.com/cd/E35137_01/appdev.32/e35117/dialogs.htm#RPTUG41808

    让SQL Developer(在4.0.1版上测试)识别并使用OS X上的Instant Client的另一种配置是:

    1. 在偏好设置中设置Instant Client的路径 - >数据库 - >高级 - > 使用Oracle客户端
    2. 使用配置...验证是否可以成功加载实例客户端 - >在首选项对话框中测试...选项
    3. (OS X)请参阅this question以解决与DYLD_LIBRARY_PATH环境变量相关的问题。我使用以下命令,然后重新启动SQL Developer来获取更改:

      $ launchctl setenv DYLD_LIBRARY_PATH / path / to / oracle / instantclient_11_2

答案 3 :(得分:23)

您的用户仍然可以通过“更改用户 onlyTheirUserName 更新密码”。他们没有ALTER USER权限来更改自己的密码。

答案 4 :(得分:13)

根据管理员设置,您可能必须使用REPLACE选项指定旧密码

alter user <username> identified by <newpassword> replace <oldpassword> 

答案 5 :(得分:10)

要说清楚一点:

如果用户名:abcdef和旧密码:a123b456,新密码:m987n654

更改用户 abcdef 标识为 m987n654 替换 a123b456 ;

答案 6 :(得分:7)

我确认这在SQL Developer 3.0.04中有效。我们的密码必须具有特殊字符,因此在我们的案例中需要双​​引号字符串。当然,这仅在密码尚未过期且您当前已登录时才有效。

ALTER USER MYUSERID
IDENTIFIED BY "new#password"
REPLACE "old#password"

答案 7 :(得分:6)

我意识到答案很多,但我找到了一个可能对某些人有帮助的解决方案。我遇到了同样的问题,我在本地计算机上运行oracle sql develop并且我有一堆用户。我碰巧记得我的一个用户的密码,我用它来重置其他用户的密码。

步骤:

  1. 使用有效的用户和密码连接到数据库,在我的情况下,我的所有用户都已过期,除了“system”,我记得密码

  2. 在树中找到“Other_users”节点,如下图所示

  3. enter image description here

    3.在“Other_users”树中找到您要重置密码的用户并右键单击该笔记并选择“编辑用户”

    enter image description here

    4.在编辑用户对话框中填写新密码,然后单击“应用”。确保您已取消选中“密码已过期(用户必须更改下次登录)”。

    enter image description here

    这对我有用,它不如其他解决方案好,因为您需要能够登录至少一个帐户,但它确实有效。

答案 8 :(得分:2)

内置的重置密码选项可能对用户不起作用。在这种情况下,可以使用以下SQL语句重置密码:

ALTER user "user" identified by "NewPassword" replace "OldPassword";

答案 9 :(得分:1)

您可以在DBA_USERS表中找到用户,如

SELECT profile
FROM dba_users
WHERE username = 'MacsP'

现在转到sys / system(管理员)并使用查询

ALTER USER PRATEEK
IDENTIFIED BY "new_password"
REPLACE "old_password"

验证帐户状态只需通过

SELECT * FROM DBA_USERS.

您可以看到用户的状态。

答案 10 :(得分:1)

您现在可以在SQL Developer 4.1.0.17中执行此操作,不需要PL / SQL,假设您有另一个具有管理权限的帐户:

  1. 使用备用管理用户
  2. 在SQL Developer 4.1.0.17中创建与数据库的连接
  3. 扩展&#34;其他用户&#34;部分连接后,右键单击密码已过期的用户。选择&#34;编辑用户&#34;。
  4. 取消选中&#34;密码已过期...&#34;复选框,为用户键入新密码,然后点击&#34;保存&#34;。
  5. 工作完成了!您可以通过连接密码已过期的用户进行测试,以确认它现在再次有效。

答案 11 :(得分:1)

通过命令提示 重置密码还有另一种方式...

1)转到START MENU中的Oracle数据库文件夹(在我的案例中为Oracle Database 11g Express Edition)。

2)在该文件夹中点击&#34;运行SQL命令行&#34;

Oracle Database Folder image

3)输入&#34; 连接用户名/密码&#34; (您的用户名和没有引号的旧密码)

4)显示的信息是......

错误: ORA-28001:密码已过期

更改hr的密码

- &GT;新密码:

Enter Username, Password image

5)输入新密码

6)重新输入新密码

7)显示的消息是......

密码已更改 连接。

SQL&GT;

8)转到Sql开发人员 - &gt;输入新密码 - &gt;连接

答案 12 :(得分:0)

对于可能没有sysdba或sys设置密码且经常使用第三方客户端的人员的一个注释。 这里有一些关于在没有密码帮助我的情况下登录命令行sqlplus的信息。 我顺便使用fedora 21。

locate sqlplus

就我而言,sqlplus位于:

/u01/app/oracle/product/11.2.0/xe/config/scripts/sqlplus.sh

现在运行

cd /u01/app/oracle/product/11.2.0/xe/config/scripts
./sqlplus.sh / as sysdba

现在您需要使用旧凭据连接到数据库。 您可以在输出中找到Oracle提供的模板:

Use "connect username/password@XE" to connect to the database.

在我的情况下,我有用户&#34; oracle&#34;用密码&#34; oracle&#34;所以我的输入看起来像

connect oracle/oracle@XE

完成。现在输入两次新密码。 然后,如果您不希望密码过期,则可以运行

ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;

答案 13 :(得分:0)

尝试此解决方案如果(SQL Developer)“重置密码”选项无效

步骤1:打开“运行SQL命令行”(从SQL Developer安装软件包随附的开始菜单中)

第2步:运行以下命令:

enter image description here

注意:如果密码已经过期, Public ICommand PickFromThreePageCommand {get; set;} 选项将自动出现。

答案 14 :(得分:0)

我使用版本 21.2.0.187(2021 年 7 月发布)。

有一个重置按钮,可让您将密码重置为新密码,如下图所示。您可以通过在连接上单击鼠标右键来访问它。

我保留密码,然后使用新密码登录。

enter image description here enter image description here