관리 메뉴

nkdk의 세상

오라클 DB 설계 및 활용 10일째 2번 내용 본문

My Programing/DataBase

오라클 DB 설계 및 활용 10일째 2번 내용

nkdk 2008. 3. 7. 20:40
자 롤에 대해서 계속 설명해 나가겠습니다.

CREATE ROLE YOUNGUP;
(YOUNGUP 이라는 롤을 만들었습니다.)
GRANT CREATE SESSION TO YOUNGUP;
GRANT CREATE TABLE TO YOUNGUP;

GRANT SELECT ON SAWON TO INSA -- ROLL 에 권한 부여
GRANT SELECT, INSERT, UPDATE ON SAWON TO YOUNGUP;

CREATE USER HANKUKIN IDENTIFIED BY HAN123
CREATE USER JIKUIN IDENTIFIED BY JI123;
GRANT YOUNGUP TO HANKUKIN, JIKUIN

SELECT * FROM ROLE_SYS_PRIVS WHERE ROLE='YOUNGUP'
(YOUNGUP의 ROLE 권한이 어떤 것이 부여 되었는지 확인한다.)
SELECT * FROM ROLE_TAB_PRIVS WHERE ROLE='YOUNGUP'

SELECT * FROM SCOTT.SAWON;

* SYSTEM 으로 변경
-- 동의어 : 다른 데이터베이스 객체에 대한 별명을 부여한다.
[계정명.테이블명]의 불편함을 덜기 위해 사용. 또한 계정명이 노출되기 때문에 계정명을 노출 시키지 않기 위해 사용하는 측면도 있다.
GRANT CREATE SYNONYM TO YOUNGUP;
(계정에다가도 줄 수 있지만, 이건 ROLL 에다가 권한을 주었습니다.)
GRANT CREATE PUBLIC SYNONYM TO YOUNGUP;

* HANKUKIN 계정으로 들어간다.

-- SYSTEM 에서 별명을 지정해 준다.
CREATE SYNONYM SAW FOR SCOTT.SAWON; -- 비공개 동의어
CREATE PUBLIC SYNONYM SAW2 FOR SCOTT.SAWON; -- 공개 동의어
-- 공개 동의어는 SYSTEM 계정에서만 지울 수 있다.

SELECT * FROM SAW;
SELECT * FROM SAW2;

DROP SYNONYM SAW; -- 비공개 동의어 이기 때문에 해당계정에서 삭제하는 것이 가능하다.

DROP PUBLIC SYNONYM SAW2; -- 공개 동의어 이기 때문에 SYSTEM 계정으로만 삭제가 가능하다.

*** 간단한 백업과 복구
EXP와 IMP라는 오라클 외부 명령어 이용하여 백업 및 복구를 시행 할 것입니다.

테스트를 위해 JAVA20 이라는 계정을 만듭니다.
CREATE USER JAVA20 IDENTIFIED BY LION DEFAULT TABLESPACE USERS
TEMPORARY TABLESPACE TEMP QUOTA UNLIMITED ON USERS;

GRANT CONNECT, RESOURCE TO JAVA20;
그리고 뷰에 대한 권한도 부여 한다. 그렇지 않으면 아래에서 하는 실행에 에러가 난다.
( 권한 부여 )

그리고 CMD 창으로 나갑니다.

EXP SCOTT/TIGER OWNER=SCOTT FILE=SCOTT.DMP

JAVA20에 백업 내용을 넣는다.
IMP JAVA20/LION FROMUSER=SCOTT TOUSER=JAVA20 FILE=SCOTT.DMP

--------------
MYSQL로 갑니다.
-------------
MYSQL 5.0 을 설치 합니다.
설치를 완료 할 때 EXCUTE 가 완료 안 되면 문제를 해결한다.

접속을 한다.
SHOW DATABASES; 테이블이 뭐가 있는지를 본다
USE TEST; TEST 테이블을 사용한다.

CREATE DATABASE KOREAN; --> KOREAN 데이타베이스를 만든다.
DROP DATABASE KOREAN; --> KOREAN 데이타베이스를 삭제한다.

USE TEST;
SHOW TABLES; -> KOREAN 에 테이블을 본다

CREATE TABLE USER1(ID INT PRIMARY KEY, NAME VARCHAR(20));

INSERT INTO USER1 VALUES(10, '한송이');
INSERT INTO USER1 VALUES(20, 'TOM');

CREATE TABLE USER2(BUN INT PRIMARY KEY AUTO_INCREMENT, IRUM VARCHAR(10));

INSERT INTO USER2 VALUES(NULL, 'TOM');
INSERT INTO USER2 VALUES(NULL, 'BILE');

SHOW TABLES;

---
자 그럼 SQL SERVER 2000 인 MSSQL2000 을 설치해 볼까요?

설치를 다 하시고 일단 계정 사용자를 ADMINISTARATOR 를 접속하기
위해 비밀번호가 설정되어 있어야 합니다. 임의상 123으로 하였습니다.

설치를 잘 합시다 화이팅~! ^^