반응형

출처:

http://tibang.tistory.com/entry/%EC%98%A4%EB%9D%BC%ED%81%B4-%EC%A0%91%EC%86%8D-%EB%B0%A9%EB%B2%95

http://mainia.tistory.com/774

http://dkatlf900.tistory.com/61


1년 전에 학원에서 DB 만질 때 이후로 DB는 설치만 하고 건들지 않았는데 

모처럼 한 번 해보기로 했다.

학원과의 차이점은 그 때는 오라클 11g를 사용했는데, 이제는 오라클 12c를 사용한다는 것이다.


처음 접속하는 것부터 까먹었는데 cmd에서 오라클로 접속하기 위해서는 sqlplus를 입력해야 한다.

그런데 나는 새 계정을 만들어야 하기 때문에 

sqlplus / as sysdba 

명령어를 입력하여 

sys 계정으로 접속한다.





그러면 sys 계정에 접속됨고 동시에 sql 명령어를 입력할 수 있게 된다.

계정을 만들기 위해서는 다음과 같은 sql 명령어를 입력한다.


create user 계정이름 identified by 비밀번호;


반드시 마지막에 세미콜론을 붙여야 한다. 

그렇지 않으면 명령어가 끝나지 않은 것으로 인식해서 더 받을려고 하며 

이를 그냥 넘기면 결국 실행되지 않는다.


그런데 여기에 문제가 있었는데 

"ORA-65096: 공통 사용자 또는 롤 이름이 부적합합니다."란 오류가 떴었다.

검색해보니 12g에서는 로컬 사용자가 아닌 공통 사용자 생성시에는 

계정이름 앞에 c##을 붙여줘야 한다고 한다.

이를 붙여주니까 계정이 정상적으로 생성이 되었다.


계정을 생성했다고 해서 바로 쓸 수 있는 것은 아니다.

먼저 계정의 잠금을 풀어줘야 한다.


alter user 계정명 account unlock;


다음으로 계정에 로그인 및 테이블 생성을 할 수 있게 접근 권한 및 자원을 부여한다.


grant connect, resource to 계정명;




계정이 제대로 만들어졌는지 확인하려면 다음 명령어를 입력하여 접속해본다.


conn 계정명/비밀번호


여기에는 세미콜론이 없어다 된다.




여기에서 테이블도 만들고 수정도 되겠지만, 이미 우리에겐 SQL Developer라는 좋은 툴이 있다.

위의 과정도 잘 기억은 안 나지만 Developer에서 더 쉽게 할 수 있을 것이다.


여튼 이제는 Developer를 사용하기 위해 계정을 연결하도록 한다.



1. 접속 이름

접속 시에 사용할 이름


2. 사용자 이름

아까 만들었던 계정 이름


3. 비밀번호

계정 비밀번호


4. 호스트 이름

오라클 시스템의 호스트 이름, 보통 localhost로 되어 있으며 굳이 수정하지 않아도 될 것이다.


5. 포트

오라클이 사용할 포트, 포트 충돌이 일어나지 않는 이상 바꿀 일은 없을 듯.


6. SID

데이터베이스 이름.

기본값은 xe이고, 보통 사용자들은 orcl이라는 이름을 많이 사용한다.

근데 나는 왜 저걸 계정 이름과 같이 해놓았는지 모르겠다.


여튼 이 SID를 잘못 입력하면 ORA-12505 에러가 난다.

정확한 SID 이름을 확인하려면 명령 프롬프트 창에서 다음을 입력한다.


lsnrctl services


이를 입력해보면 밑의 사진처럼 뜨는데 빨간 박스 안의 것처럼 DEDICATED 설정을 가진 서비스의 이름을 SID 이름으로 적으면 된다.





그리고 아까 developer 화면에서 테스트 버튼을 눌러 성공하면 접속을 눌러서 연결하면 된다.


간단히 테이블이나 만들려고 했는데 그건 귀찮으니까 내일 해야겠다.

아 내일이 아니고 오늘 오후 쯤 될 듯.

반응형
Posted by 애콜라이트
l

free counters