Mudar a senha com o programador SQL do Oracle

Muitos dos meus utilizadores não utilizam SQLPlus. Não posso dar-lhes outro utilizador. Expomos senhas a cada 60 dias.

não consigo que o comando SQLPlus "password" funcione no programador SQL.

  1. quando carrego no run, recebo um erro de comando inválido
  2. Quando carrego no guião da corrida, não acontece nada.
Não quero escrever-lhes um pacote para mudar as suas senhas, já que temos muitas bases de dados. Tenho uma opção melhor?

Author: Tiago Mussi, 2010-06-21

13 answers

A sintaxe correcta para actualizar a senha usando o programador SQL é:

Alterar o utilizador utilizador identificado por "new_ password" Substituir "old_ password" ;

Pode verificar Mais opções para este comando aqui: http://docs.oracle.com/cd/B28359_01/server.111/b28286/statements_4003.htm#i2058207

 150
Author: Americo Savinon, 2017-01-19 17:12:58

Numa folha de cálculo SQL:

Escreva "senha" (sem as cotações) Realçar, carregar em CTRL+ENTER. Aparece o ecrã de mudança de senha.

 84
Author: Niall, 2015-03-24 15:49:48

O programador SQL tem uma opção de senha incorporada que pode funcionar para a sua situação. Ele requer a adição de Oracle Instant Client para a estação de trabalho também. Quando o cliente instantâneo estiver na localização, quando o programador SQL for lançado, você irá obter a seguinte opção activada:

SQL Developer: Drop Down menu showing reset password option

Oracle Instant Client não precisa de privilégios de administração para instalar, apenas a capacidade de escrever num directório e adicionar esse directório ao caminho dos utilizadores. A maioria dos utilizadores tem os privilégios a fazer presente.

Recap: para usar a senha de Reset no programador SQL da Oracle:

  1. tens de desempacotar o cliente instantâneo da Oracle numa pasta
  2. tem de adicionar o directório do cliente instantâneo Oracle à localização dos utilizadores
  3. você deve então reiniciar o programador SQL da Oracle

Neste ponto, pode carregar com o botão direito numa fonte de dados e repor a sua senha.

Ver http://www.thatjeffsmith.com/archive/2012/11/resetting-your-oracle-user-password-with-sql-developer/{[22]para uma caminhada completa

Veja também o comentário no documento do oráculo: http://docs.oracle.com/cd/E35137_01/appdev.32/e35117/dialogs.htm#RPTUG41808

Uma configuração alternativa para que o programador SQL (testado na versão 4.0.1) reconheça e use o cliente instantâneo no OS X é:

  1. definir a localização do cliente instantâneo nas preferências- > base de dados - > Avancado -> Usar O Oracle Client
  2. verifique se o cliente da instância pode ser carregado com sucesso usando o Configure... -> Teste... opções dentro da janela de preferências
  3. (OS X) remete para esta questão para resolver questões relacionadas com a variável de ambiente DYLD_ LIBRARY_PATH. Usei o seguinte comando e, em seguida, reiniciei o desenvolvedor SQL para pegar a mudança:

    $ launchctl setenv DYLD_ LIBRARY_ path / path / to / oracle / instantclient_11_2

 49
Author: Frobbit, 2017-05-23 10:31:37

Os seus utilizadores podem ainda alterar as suas senhas por "alterar o Utilizador apenas o seu nome de utilizador identificado pela nova palavra". Eles não precisam ter o privilégio de alterar o Usuário para alterar sua própria senha.

 23
Author: dpbradley, 2010-06-21 17:03:51

Dependendo da configuração da Administração, poderá ter de indicar a sua senha antiga com a opção de substituição

alter user <username> identified by <newpassword> replace <oldpassword> 
 13
Author: Gerry Gurevich, 2014-03-25 18:15:48

Para deixar isto um pouco claro:

Se o nome de utilizador: abcdef e a antiga senha : a123b456, nova senha: m987n654

Alterar o utilizador abcdef identificado por m987n654 substituir a123b456;

 10
Author: spazzo, 2014-03-26 17:49:36

Confirmei que isto funciona no programador SQL 3.0.04. As nossas senhas são necessárias para ter um carácter especial, por isso a cadeia de aspas duplas é necessária no nosso caso. Claro que isto só funciona se a senha ainda não tiver expirado e você estiver logado de momento.

ALTER USER MYUSERID
IDENTIFIED BY "new#password"
REPLACE "old#password"
 8
Author: pgs, 2012-11-15 17:24:59
Sei que há muitas respostas, mas encontrei uma solução que pode ser útil para alguns. Eu encontrei o mesmo problema, eu estou executando oracle SQL desenvolvimento em Meu Computador local e eu tenho um monte de usuários. Lembro-me da senha de um dos meus utilizadores e usei-a para repor a senha de outros utilizadores.

Passos:

  1. Conecte-se a uma base de dados usando um usuário válido e senha, no meu caso todos os meus usuários expiraram, exceto "sistema" e eu me lembro que senha

  2. Encontrar o nó de" Outros_ utilizadores " dentro da árvore, à medida que a imagem abaixo mostra

enter image description here

3.na árvore "Outros_ utilizadores", Encontre os seus utilizadores que deseja repor a senha e carregue com o botão direito na nota e seleccione "Editar os utilizadores"

enter image description here

4.preencha a nova senha na janela de edição do utilizador e carregue em "Aplicar". Certifique-se de que a senha "expirou" foi desligada (o utilizador tem de mudar a seguinte sessao)".

enter image description here

E isso funcionou para mim, não é tão bom como outra solução porque você precisa ser capaz de login para pelo menos uma conta, mas funciona.

 4
Author: Saad A, 2017-01-03 15:03:53

A opção de senha de reset incorporada pode não funcionar para o utilizador. Neste caso, a senha pode ser reposta usando a seguinte declaração SQL:

ALTER user "user" identified by "NewPassword" replace "OldPassword";
 1
Author: user2689487, 2013-08-16 13:31:19

Você pode encontrar o utilizador na tabela DBA_USERS como

SELECT profile
FROM dba_users
WHERE username = 'MacsP'

Agora vá para o sistema / Sistema (Administrador) e use a consulta

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

Para verificar o estado da conta, basta passar por

SELECT * FROM DBA_USERS.

E pode ver o estado do seu utilizador.

 1
Author: , 2013-10-03 18:16:09

Pode agora fazer isto em Desenvolvimento de SQL 4.1.0.17 , sem necessidade de PL / SQL, assumindo que tem outra conta com privilégios administrativos:

  1. criar uma ligação à base de dados no programador SQL 4.1.0.17 com um utilizador administrativo alternativo
  2. expanda a secção "outros utilizadores" uma vez ligado, e carregue com o botão direito no utilizador cuja senha expirou. Escolha "Editar O Utilizador".
  3. desligue a senha expirada..."checkbox, digite uma nova senha para a utilizador, e carregue em "Salvar".
  4. Trabalho feito! Você pode testar se conectar com o usuário cuja senha havia expirado, para confirmar que agora é válido novamente.
 1
Author: Fuzzy Analysis, 2015-02-14 09:28:37

Existe outra forma de repor a senha através de comando prompt ...

1) Vá para a pasta da Base de Dados Oracle (no meu caso, a edição do Oracle Database 11g Express) no MENU Iniciar.

2) dentro dessa pasta Carregue em "Executar a linha de comandos SQL"

Imagem da pasta da Base de Dados Oracle

3) Tipo "ligar o utilizador / Senha "(o seu utilizador e senha antiga sem as aspas)

4) a mensagem exibida é ...

Erro: ORA-28001: a senha expirou

Mudar a senha para hr

--> nova senha:

Indique o nome do utilizador, a imagem da senha

5) Digite a nova senha

6) Retype a nova senha

7) a mensagem apresentada é ...

A senha foi alterada Ligado.

SQL>

8) GO TO Sql developer -- > type the new password -- > connected

 0
Author: Suchitra Phadke, 2015-11-22 10:49:22

Uma nota para pessoas que podem não ter a senha definida para o sysdba ou sys e que usam regularmente um cliente de terceiros. Aqui está algumas informações sobre entrar na linha de comando sqlplus sem uma senha que me ajudou. A propósito, estou a usar fedora 21.

locate sqlplus
No meu caso, o sqlplus está localizado aqui.
/u01/app/oracle/product/11.2.0/xe/config/scripts/sqlplus.sh
Agora corre.
cd /u01/app/oracle/product/11.2.0/xe/config/scripts
./sqlplus.sh / as sysdba
Agora precisa de se ligar à base de dados com as suas credenciais antigas. Poderá encontrar o modelo fornecido pela Oracle na sua saída:
Use "connect username/password@XE" to connect to the database.
No meu caso, eu ... ter o utilizador "oracle" com a palavra-passe "oracle" para que a minha entrada pareça com
connect oracle/oracle@XE
Feito. Agora digite sua nova senha duas vezes. Então se você não quiser que a sua senha expire mais você pode executar
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
 0
Author: Sorokin Andrey, 2016-03-28 03:54:44