- 전 포스팅에서 간단하게 오라클 SQL을 설치해보았다.
이번 포스팅에서는 복잡하지만 설정해줄 것들과 SQL을 좀 더 쉽게 다루기 위한
도구를 설치해줄 것이다.
(시작이 반! 하나도 놓치지 말고 차근차근 따라가보자! )
● 오라클에 접속하는 방법 1
C:\User> sqlplus
사용자명 : system
비밀번호 : [비밀번호 입력은 보안상 화면에 보이지 않는다]
● 오라클에 접속하는 방법 2
C:\User> sqlplus system/123456
이 경우에는 비밀번호가 보인다.
오라클을 설치하면 기본적으로 관리자 권한을 가진 sys와 system계정이 생성되어있다.
사용자계정을 생성하거나 권한 등을 부여할때는 항상 관리자 계정으로 접속한 후
진행해야 한다. 이 둘은 비슷해 보이지만 약간의 차이를 가지고 있어 차이점을 알아본다.
● sys
Oracle 시스템의 총 관리자로 SYSDBA 권한을 갖는다.
DB 생성 및 삭제 가능
접속방법
● C:\User> sqlplus sys as sysdba
비밀번호 입력: ⇐ 입력한 비밀번호는 보이지 않는다.
● system
sys와 유사한 권한을 가지고 있지만 DB생성과 삭제는 불가능
운영을 위한 SYSOPER 권한을 갖는다.
접속방법
● C:\User> sqlplus system
비밀번호 입력: ⇐ 입력한 비밀번호는 보이지 않는다.
▶ 연결끊기
SQL> exit; 혹은 quit;
▶ 현재 사용자 보기
SQL> show user;
▶ 해당 사용자의 테이블 목록 보기
SQL> select * from tab;
▶ 테이블 구조 보기
SQL> desc 테이블명;
▶ 로그인 계정 바꾸기
SQL> conn 사용자아이디/암호
혹은
SQL> conn
사용자명 입력:nakja
비밀번호 입력:****
▶ 계정 비밀번호 변경
SQL> alter user 계정명 identified by 변경할비밀번호;
▶ 계정 활성화(11g에만 있음 21c는 없음)
SQL> alter user hr account unlock;
SQL> alter user hr identified by 1234;
▶ ▶생성된 사용자 조회
SQL> select from dba_users;
SQL> select from all_users;
▶ ▶사용자가 소유한 테이블 조회
SQL> select * from user_tables;
- 이제 SQL DB에 계정을 생성하고 관리해보자!
공부용 샘플 계정인 hr 및 scott를 추가할 것이다
여기서 필자가 도저히 이해가 안가는 점이 있다. 21C는 11g에 비해
훨씬 최신 버전임에도 사용하기가 굉장히 번거로운 부분이 있다.
그 이유를 아래에서 알아보자
● Oracle 11g 에서는 기본적으로 hr, scott 계정을 제공한다.
● 하지만 Oracle 21c 에서는 제공되고 있지 않아 번거롭게 추가해줘야 한다.
SQL> create user 계정아이디 identified by 비밀번호;
Oracle 11g에서는 계정 생성하기 명령어 한번으로 정상적으로 실행된다
하지만 12c 이상에서는 다음과 같은 에러가 발생한다.
12c 이후로는 계정 생성시 계정명 앞에 “C##” 을 추가해야 공통 유저를 생성할 수 있다.
너무나 번거로우므로 아래 명령을 통해 기존과 같은 방법으로 계정을 생성할 수
있다. 가장 먼저 입력해야 할 명령어이다.
단, 명령 실행시 sys 혹은 system으로 접속해야 한다.
SQL> alter session set "_ORACLE_SCRIPT"=true
● 공부용 샘플 계정 hr 추가
먼저 스키마를 다운로드 한다.
압축을 해제한 후 다음 경로로 이동한다.오라클이 설치된 위치에 따라 다를 수 있으니 본인의 경로를 확인한 후 진행한다.
OracleXE21c\dbhomeXE\demo\schema\human_resources
위 파일중 hr_main.sql 파일을 에디터로 오픈한다.
메모장이나 Notepad++ 정도면 된다.
스크립트에서 몇가지 수정할 부분이 있다.
수정이 끝나면 저장한 후 CMD를 실행한 후 다음 명령을 실행한다.
SQL> alter session set "_ORACLE_SCRIPT"=true;
SQL> @?/demo/schema/human_resources/hr_main.sq
specify password for HR as parameter 1:
1의 값을 입력하십시오: 1234 ⇐ hr계정의 비밀번호
specify default tablespeace for HR as parameter 2:
2의 값을 입력하십시오: users ⇐ 기본 테이블 스페이스
specify temporary tablespace for HR as parameter 3:
3의 값을 입력하십시오: temp ⇐ 임시 테이블 스페이스
specify password for SYS as parameter 4:
4의 값을 입력하십시오: 123456 ⇐ system 계정의 비밀번호
specify log path as parameter 5:
5의 값을 입력하십시오: ⇐ 로그 저장 디렉토리. 입력하지 않고 Skip해도 됨(엔터)
SP2-0137: DEFINE의 등호 뒤에 값이 필요합니다.
specify connect string as parameter 6:
6의 값을 입력하십시오: ⇐ 접속 문자열을 입력. 입력하지 않고 Skip해도 됨(엔터)
- 스크립트 실행후 다음과 같이 PL/SQL procedure successfully completed.
이 문구가 나온다면 정상적으로 완료된 것이다
오라클 사용을 위한 관리툴이다.
1. https://www.oracle.com/index.html 접속
2. Resources ⇒ Downloads ⇒ Popular Developer Downloads ⇒ SQL Developer
실행한 후 system 계정을 등록한다. + 버튼을 누른다.
새로만들기 창이 뜨면 표시한 부분에 다음과 같이 입력한다.
Name : System 계정
사용자이름 : system
비밀번호 : 123456 입력 후 비밀번호저장 박스 체크 (체크하지 않으면 계속 물어본다)
테스트 ⇒ 저장 ⇒ 접속
입력을 마친 후 테스트를 눌렀을때 상태 부분에 ‘성공’ 뜨는걸 확인하고 저장,
접속을 순서대로 누른다.
접속이 완료되면 좌측 접속창에서 다른 사용자를 열어본다.
앞에서 생성한 HR 계정이 있는지 확인해본다.
확인되었다면 정상적으로 추가된 것이니 계정을 등록한다
등록이 완료되면 좌측 접속창에서 확인할 수 있다.
( 심지어 샘플로 생성되어 있는 테이블 및 데이터도 확인할 수 있다 )
● scott 계정 추가
SQL Developer 에서 system으로 접속한다.
새로운 워크시트가 생성되면 다음과 같이 scott 계정을 생성한다.
BUT] 24번 라인의 명령은 다음과 같은데 실행하면 에러가 발생한다
그대로 SCOTT 계정을 등록해주면 끝이다.
이렇게 설치까지 끝이 났다. 다음 시간은 데이터베이스(DB)의 기본지식을 알아볼 것이다.
다음 포스팅에서 계속..