개발환경 : window 7 32bit, Oracle 11g |
이제 거의 반자동으로 이루어진 설치과정을 뒤로하고 사용자 계정을 만들어 보기로 한다.
계정을 만들기 위해서는 오라클이 실행 되어있어야 한다. 물론 설치가 끝나면 바로 실행이
되어있는 상태이겠지만 아닌 경우가 있다. 그럴때는 오라클과 리스너를 실행시켜줘야 한다.
그걸 실행시키는 과정은 다음과 같다..
1. 콘솔창을 연다 |
C:> cmd
2. DBA 접속 |
C:> sqlplus / as sysdba
3. 오라클을 시작한다. 시작 : startup, 종료 : shutdown immediate |
C:> SQL > startup
4. 리스너를 시작한다. |
리스너는 서버와 별도로 움직이므로 먼저 실행해도 상관없다
C:> lsnrctl start
5. 오라클 관리자로 접속한다 |
콘솔창에서 C:> sqlplus / as sysdba 를 실행한다.
계정과 패스워드가 없어도 sys 관리자로 접속이 가능하다. 관리자로
접속한 이유는 계정을 만들기 위함이다.
6. 계정에 해당하는 tablespace 를 만든다. |
tablespace 를 만들기 위해 파일들이 어디에 저장되는지 알아봐야 한다.
그럴려면 기존에 만들어진 tablespace 의 정보를 알아보자
SQL> SELECT tablespace_name, bytes, file_name FROM dba_data_files;
저장된 곳을 확인했으면 그곳에 200M 정도의 gon 테이블 스페이스를 만든다
SQL> CREATE TABLESPACE gon
2 DATAFILE ‘C:\APP\ORA11\ORADATA\ORCL\gon01.dbf’ size 200M;
7. 계정 생성 |
SQL> CREATE USER gon // 계정 생성
2 IDENTIFIED BY gon // 패스워드 생성
3 DEFAULT TABLESPACE gon // 위에서 생성한 테이블스페이스 명
4 QUOTA UNLIMITED ON gon; // 테이블 스페이스의 제한량 무한대
8. 권한 부여 |
접속과 기타 기능을 사용할수 있도록 GRANT 를 이용해 할당한다.
권한은 rool 개념으로 관리하는데 connect, resource 롤을 할당한다. 이것으로
왠만한 기능은 다 된다.
SQL> GRANT connect, resource TO gon;
CREATE USER "계정명" PROFILE "DEFAULT" IDENTIFIED BY "비밀번호" DEFAULT
?TABLESPACE "테이블스페이스명" ACCOUNT UNLOCK
GRANT "CONNECT" TO "계정명"
GRANT "DBA" TO "계정명"
뷰 권한
grant create view to 계정명
9. 네트워크 식별자 TNS 명 지정하기 |
오라클에 접속하기 위해서 TNS 라는 식별자를 설정해야한다. 그 속에
접속에 필요한 호스트 아이피, 포트, SID 를 설정한다. 그걸 담은 문자열
변수가 TNS 명이 되며 계정 아이디와 패스워드, TNS 명만 있으면
접속이 가능하다.
그 TNS 명을 설정하기 위해서 tnsnames.ora 파일을 찾아야 한다.
그 위치는 C:\app\ora11\product\11.2.0\dbhome_1\network\admin\tnsnames.ora 에 있다.
10. 접속확인 |
C:> sqlplus gon/gon@ORCL 를 통해 접속을 확인해보자
다음은 Toad for Oracle 툴로 확인해본다
접속을 위해 계정을 입력하고 TNS 탭에서 Database 란에 ORCL 를 선택한다.
접속된 것을 볼수 있다
http://mainia.tistory.com/637
=====================================================================
ORACLE을 설치하고 사용하려면, 먼저 USER를 생성하고 DBA의 권한을 부여해야 한다.
오라클을 설치 완료했다면, RUN SQL Command Lind 프롬프트를 실행해 보자.
(1) sysdba 접속
sysdba 계정으로 먼저 로그인한다. 비밀번호는 오라클 설치시에 입력한 관리 비밀번호이다.
SQL> conn sys as sysdba
비밀번호가 정상적으로 입력되면, Connected 가 출력된다.
(2) 유저 생성
이제 새로운 유저를 생성해 보자.
일반적으로 학습용 DBA의 아이디 비밀번호는 SCOTT / TIGER 를 설정한다.
우리는 scott / nontiger01 로 설정해보겠다.
SQL> create user scott identified by nontiger01
2 default tablespace users
3 temporary tablespace temp;
* identified by : 비밀번호 설정
(3) 권한 부여
이제 SCOTT을 DBA로 쓰려면, 권한을 부여해줘야 한다.
grant 명령어로 권한을 부여한다.
SQL> grant connect, resource, plustrace, alter session to scott;
scott 유저에 권한을 부여했다. 이제 scott 으로 접속하여, DBA 권한을 획득할 수 있다.
(4) 유저 접속
이제 DBA인 scott 으로 접속해보자. sys 계정 접속과 동일하다.
SQL> conn scott
(5) 비밀번호 변경
비밀번호를 변경할 때는 alter user를 사용한다. nontiger01 을 tiger 로 변경해보겠다.
SQL> alter user scott identified by tiger
================================================================
오라클 - 사용자(User) 및 권한(Role)
사용자 및 권한 설정을 위해서는 최고 관리자(DBA)로 접속 해야 한다.
SQL> conn system/orcl;
사용자/암호 만들기
SQL> Create User User01 Identified By User01;
접속 권한 부여 (Session - login 할 수 있는 권한 )
SQL> Grant Create Session To User01;
SQL> conn User01/User01;
SQL> show user; * 현재 접속 user 확인
테이블 생성 권한 부여 및 할당량 부여
SQL> Grant Create Table To User01;
SQL> Alter User User01 Quota 10M On Users;
SQL> Create Table Memos ( Num Number(2) Primary Key ); -- 성공
권한이 없는 다른 사용자의 테이블 조회
SQL> Grant Select On scott.emp To User01;
SQL> select empno, ename from scott.emp; * 다른 사용자 테이블 조회 가능
암호변경
SQL> Alter User User01 Identified By User02;
새 사용자 생성 후 권한 부여
SQL> Create User User02 Identified By User02;
SQL> Grant Create Session, Create Table, Create View To User02;
역할(Role)을 통해서 한꺼번에 권한 부여
DBA, Connect, Resource, …
기존 사용자와 동일한 권한을 한번에 부여 (Connect : Create Session, Create Table, Create View )
Grant Connect To User02; ** Connect 자리에 역할 이름이 들어온다.
Grnat ~ To ~ : 사용자에게 최고 권한 부여
SQL> conn system/orcl; // 관리자 권한으로 설정
SQL> Create User User03 Identified By User03;
SQL> Grant Connect To User03; // 일반 권한
SQL> Grant DBA To User03; // 최고 권한
SQL> conn User03/User03;
SQL> Select empno, ename From scott.emp; // 모든 테이블에 접근가능 ( DBA 는 모든 권한을 갖는다. )
Revoke : 권한 제거 ( 역할을 제거)
SQL> Revoke DBA From User03;
SQL> Revoke Connect From User03;
Drop User ~ : 사용자 제거
SQL> Drop User User01;
댓글 ( 5)
댓글 남기기