커맨드창(cmd) 에서 sqlplus 실행
SYSTEM 계정으로 로그인된 상태에서 아래 명령어 순차 실행
SQL> ALTER SESSION SET "_ORACLE_SCRIPT" = TRUE;
-- Oracle 21c XE에서는 보안 정책상 기본적으로 CREATE USER가 제한됨
-- 이 명령어를 통해 사용자 생성을 허용하는 설정을 일시적으로 활성화
SQL> CREATE USER student IDENTIFIED BY 1234;
-- 이름이 student, 비밀번호가 1234인 새 사용자 계정 생성
SQL> GRANT CREATE SESSION TO student;
-- student 계정이 DB에 로그인할 수 있는 최소 권한 부여 (접속 가능하게 함)
SQL> GRANT CONNECT, RESOURCE, DBA TO student;
-- 실습을 위해 추가 권한 부여:
• CONNECT: 기본 접속 권한
• RESOURCE: 테이블/시퀀스 등 생성 가능
• DBA: 데이터베이스 관리자 권한 (교육용으로만 사용)
SQL> ALTER USER student DEFAULT TABLESPACE users QUOTA UNLIMITED ON users;
-- student 계정의 기본 저장소(users tablespace) 설정 및 저장 공간 무제한 할당
SQL> CONN student/1234
SQL> @C:\edu_tables_all.sql
(※ edu_tables_all.sql 파일이 존재하는 경로가 맞는지 확인할 것)
(※ @C:\edu_tables_all_utf8.sql 파일로 했는데 안되면 이 파일로 다시 해볼 것)
(※ 이 부분에서 안되는 사람 중 가장 많았던 에러는 인코딩 설정 오류였음.
성공한 사람은 sql파일을 다른이름으로 저장하여 인코딩을 ANSI 또는 EUC-KR로 설정한 후 저장하였더니 성공 했다고 한다. 정확한 이유를 지금은 잘 모르겠다.)
SQL> COMMIT;
SQL> EXIT;
SQL Developer 실행 (sqldeveloper.exe)
새 연결 클릭 → 수동 연결
다음 정보 입력 후 [테스트] 버튼 클릭:
테스트 성공 시 [연결] 클릭 → SQL Worksheet 접속
아래 쿼리 실행 후 데이터가 출력되면 성공:
SELECT * FROM s_emp;