19c ora-01017 사용자명/비밀번호가 부적합 로그온할 수 없습니다 - 19c ora-01017 sayongjamyeong/bimilbeonhoga bujeoghab logeuonhal su eobs-seubnida

오늘같은 삽질을 안하려면...

1. 처음 데이터베이스에 접속하려면 사용자명에 sys as sysdba 입력후 접속한다.

2. 혹시 db가 꺼져있으면 startup 한다.

3. user를 만들어야 하는데 오라클 12c부터는 대소문자 구분을 해야하므로 명령어를 넣는다.

4. 사용자만들고 권한을 준다.

오늘의 삽질 순서 기록...

오류발생 --->  ORA-01034: ORACLE not available

* 참고한 블로그 : doracle.tistory.com/44

db가 꺼져있는 상태에서 다른 계정으로 들어가려고 할때 생기는 에러라고함. 따라해봄.

C:\Users\sangn>sqlplus /nolog SQL*Plus: Release 12.2.0.1.0 Production on 목 10월 22 19:38:05 2020 Copyright (c) 1982, 2016, Oracle. All rights reserved. SQL> conn sys/ as sysdba 비밀번호 입력: 휴지 인스턴스에 접속되었습니다. SQL> startup ORA-32004: obsolete or deprecated parameter(s) specified for RDBMS instance ORACLE 인스턴스가 시작되었습니다. Total System Global Area 1694498816 bytes Fixed Size 8919680 bytes Variable Size 1325401472 bytes Database Buffers 352321536 bytes Redo Buffers 7856128 bytes 데이터베이스가 마운트되었습니다. 데이터베이스가 열렸습니다. SQL> conn scott/tiger ERROR: ORA-01017: 사용자명/비밀번호가 부적합, 로그온할 수 없습니다. 경고: 이제는 ORACLE에 연결되어 있지 않습니다.

왜 나는 연결안되고 또 에러가 생기는가...

사용자명에 "sys"만 넣으면 안되고 "sys as sysdba"라고 해야한단다

C:\Users\sangn>sqlplus SQL*Plus: Release 12.2.0.1.0 Production on 목 10월 22 19:43:05 2020 Copyright (c) 1982, 2016, Oracle. All rights reserved. 사용자명 입력: sys as sysdba 비밀번호 입력: 다음에 접속됨: Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production

접속성공함.

테이블을 만들어보자.

SQL> create user c##scott identified by tiger; create user c##scott identified by tiger * 1행에 오류: ORA-01920: 사용자명 'C##SCOTT'(이)가 다른 사용자나 롤 이름과 상충됩니다

언제 만들어놓은 거야...

계정이 잠겨서 그런거란다... 잠금해제하자.

참고블로그 : byhou.tistory.com/420

SQL> ALTER USER c##scott ACCOUNT UNLOCK; 사용자가 변경되었습니다. SQL> alter user scott identified by tiger; alter user scott identified by tiger * 1행에 오류: ORA-01918: 사용자 'SCOTT'(이)가 존재하지 않습니다 SQL> alter user c##scott identified by tiger; 사용자가 변경되었습니다. SQL> grant dba to c##scott; 권한이 부여되었습니다. SQL> select * from all_users; USERNAME -------------------------------------------------------------------------------- USER_ID CREATED COMMON OR INHERI ---------- -------- ------ -- ------ DEFAULT_COLLATION -------------------------------------------------------------------------------- IMPLIC ALL_SH ------ ------ C##SCOTT 106 20/10/22 YES N NO USING_NLS_COMP NO NO

새로만든 아이디(scott)로 다시 접속해보자.

C:\Users\sangn>sqlplus SQL*Plus: Release 12.2.0.1.0 Production on 목 10월 22 20:12:16 2020 Copyright (c) 1982, 2016, Oracle. All rights reserved. 사용자명 입력: scott 비밀번호 입력: ERROR: ORA-01017: 사용자명/비밀번호가 부적합, 로그온할 수 없습니다.

또 에러가 난다.

참고 블로그 : m.blog.naver.com/PostView.nhn?blogId=harusaring&logNo=221489528223&proxyReferer=%2F%2Fwww.google.com%2F

에러발생 시 아래 경로에 있는 sqlnet.ora 파일에 해당 옵션을 추가해 주면 된다고 한다. ​ C:\app\oracle\product\12.2.0\dbhome_1\network\admin\sqlnet.ora ​ SQLNET.ALLOWED_LOGON_VERSION_SERVER=11

참고 블로그 : m.blog.naver.com/PostView.nhn?blogId=firstpcb&logNo=220319407686&proxyReferer=%2F%2Fwww.google.com%2F

대소문자 구분도 해주었다.

그래도 에러가 남

왜인지 모르지만 순서를 바꾸니까 접속이 된다.... why??

참고 블로그 : nirsa.tistory.com/5

1. sqlplus sysdba로 접속후 계정생성전에 아래의 명령어 사용

SQL> ALTER SESSION SET "_ORACLE_SCRIPT"=true;

 : 오라클이 12c로 넘어가면서 계정 생성을 할 때, 계정명 앞에 C##을 붙여줘야 공통 사용자 생성이 가능해짐에 따라, 계정 생성할때마다 C##을 붙여주기 귀찮으니 위의 명령어를 사용하는 것임.

2. 사용자 생성하기

SQL> create user scott[사용자명] identified by tiger[비밀번호];

3. 권한부여하기

SQL> grant connect, resource to scott;

4. 접속해보기

SQL*Plus: Release 12.2.0.1.0 Production on 목 10월 22 20:55:34 2020 Copyright (c) 1982, 2016, Oracle. All rights reserved. 사용자명 입력: scott 비밀번호 입력: 마지막 성공한 로그인 시간: 목 10월 22 2020 20:48:37 +09:00 다음에 접속됨: Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production

4시간만에 접속성공......

728x90

SMALL

우선 service.msc에서 oracle관련된 것이 실행중인지 보기

필요한 추가 입력 부분

출처 : //m.blog.naver.com/PostView.nhn?blogId=harusaring&logNo=221489528223&proxyReferer=%2F%2Fwww.google.com%2F

// 해당 폴더에 들어가기 C:\app\oracle\product\12.2.0\dbhome[어쩌구저쩌구]\network\admin\sqlnet.ora // sqlnet.ora에 구문 추가 SQLNET.ALLOWED_LOGON_VERSION_SERVER=11

추가 후 아래 블로그에서 다음 부분부터 실행하기

출처 : //jmkang1984.tistory.com/78

SQL> ALTER SESSION SET "_ORACLE_SCRIPT"=true; SQL> create user [사용자명] identified by [비밀번호]; SQL> grant connect, resource to [사용자명];
  • 그런다음 시작 -> Oracle -Ora~ -> SQL Plus에 접속한다.
사용자명 입력: [사용자명] 비밀번호 입력: [비밀번호]
  • 접속이 되는지 확인한다.

728x90

LIST

저작자표시

'자바' 카테고리의 다른 글

[생활코딩] JAVA1 - 11.2. 입력과 출력  (0) [생활코딩] JAVA1 - 11.1. 입력과 출력  (0) [생활코딩] JAVA1 - 10. 디버거  (0) [생활코딩] JAVA1 - 8.3. 데이터 타입의 변환 (casting)  (0) [생활코딩] JAVA1 - 8.2. 변수의 효용  (0)
2021.04.13
2021.04.12
2021.04.09
2021.04.05
2021.04.02

Toplist

최신 우편물

태그