오라클 sys, system암호 까먹었을때
명령 프롬프트에서 다음을 실행합니다.
C:>sqlplus "/as sysdba"
SQL> show user
USER is "SYS"
암호를 원하는 대로 설정합니다.
SQL> alter user sys identified by 암호;
SQL> alter user system identified by 암호;
접속
SQL> connect sys/암호 as sysdba
SQL> connect systemp/암호
===================
◈ TABLE 구조 보기
SQL>DESC TABLE_NAME
◈ 테이블 존재 여부 알아보기
SQL>SELECT TABLE_NAME
FROM USER_TABLES
WHERE TABLE_NAME = '찾을 테이블 이름'
-->찾을 테이블 이름은 대문자여야 됩니다.
◈ 모든 유저 보기
SQL>SELECT username FROM ALL_USERS;
-모든 테이블 보기
SELECT TABLE_NAME FROM USER_TABLES;
◈ 테이블 제약조건의 확인
SQL>SELECT table_name, constraint_name, constraint_type
FROM USER_CONSTRAINTS
WHERE TABLE_NAME ='STORM_CONTENT';
◈ 잠시 host상태로 나가고 싶을 때.
SQL>host
다시 sqlplus로 들어오려면 exit명령어로 들어오시면 됩니다.
◈ 테이블에 새로운 컬럼의 추가
SQL>ALTER TABLE table_name ADD ( column_name DATATYPE );
ex)SQL>ALTER TABLE storm_board ADD(ip_addr VARCAHR2(15) not null)
◈ 테이블 컬럼의 삭제
SQL>ALTER TABLE table_name DROP COLUMN column_name
ex)SQL>ALTER TABLE storm_board DROP COLUMN ip_addr
-->컬럼의 삭제는 오라클 8i버전부터 되는것으로 알고 있습니다.
◈ SQLPLUS에서 SQL문의 실행 속도 알아보기
SQL>SET TIMING ON
을 한 후 SELECT문을 수행하면 경과 시간이 나옵니다.
SQL> SELECT COUNT(name) FROM storm_board;
COUNT(NAME)
-----------
286
경 과: 00:00:00.10
◈ SQLPLUS에서 SELECT문 사용시 데이타만 출력되고 HEADER는 안나오게 하는 방법
SQL>SET HEADING OFF
한후 SELECT문을 수행하면 아래와 같은 결과가 나옵니다.
SQL> SELECT empno, ename, mgr
FROM emp
WHERE rownum < 6;
7369 SMITH 7902
7499 ALLEN 7698
7521 WARD 7698
7566 JONES 7839
7654 MARTIN 7698
=======================
오라클을 설치하면 기본 ID:scott PW:tiger 접속이 가능하게 될것이다.
기본 계정에 테이블을 생성하게 될경우 속도가 저하되고 퍼포먼스가 나질 않기
때문에 새로 계정을 생성하여 테이블을 관리해주는게 좋은데 그때 새계정을
생성하는 방법을 적고자한다. 오라클환경은 9.2.0.1에서 하였음.
계정 생성법
SQL>conn as sysdba;
SQL>사용자명 입력: sys
SQL>암호 입력: manager
SQL>create tablespace 관리하고자하는 dbf파일명 ex)dreamhl_tbs
datafile 'c:\oracle\oradata\O9i\dreamhl_tbs.dbf' size 100m ←경로중요함 틀리면 뷁
default storage
(initial 10k
next 10k
minextents 2
maxextents 50
pctincrease 50
);
SQL> create user testman
identified by testman
default tablespace dreamhl_tbs
temporary tablespace temp;
사용자가 생성되었습니다.
SQL> grant connect, resource to testman; (일반적인 권한으로 접속할수 있게 하고 resource는 pl/sql을 사용하게 함)
권한이 부여되었습니다.
conn testman/testman;
위에서 datafile에서 O9i경로 빼먹거나 잘못 넣었을때 대처법
SQL> show user;
USER은 "TESTMAN"입니다
SQL> conn as sysdba
사용자명 입력: sys
암호 입력: *******
연결되었습니다.
SQL> shutdown immediate;
데이터베이스가 닫혔습니다.
데이터베이스가 마운트 해제되었습니다.
ORACLE 인스턴스가 종료되었습니다.
파일을 맞는 경로(c:\oracle\oradata\O9i\)에 옮긴후.
SQL> startup mount;
ORACLE 인스턴스가 시작되었습니다.
Total System Global Area 135338868 bytes
Fixed Size 453492 bytes
Variable Size 109051904 bytes
Database Buffers 25165824 bytes
Redo Buffers 667648 bytes
데이터베이스가 마운트되었습니다.
SQL>
SQL>
SQL>
SQL> ALTER DATABASE RENAME FILE
'c:\oracle\oradata\dreamhl_tbs.dbf' to
'c:\oracle\oradata\O9i\dreamhl_tbs.dbf';
데이타베이스가 변경되었습니다.
SQL>alter database open;
데이타베이스가 변경되었습니다.
'IT > ORACLE' 카테고리의 다른 글
사용자 생성 (0) | 2018.12.27 |
---|---|
sql developer (0) | 2018.12.27 |
오라클 계정 풀기(연습을 위한 hr 계정) (0) | 2018.12.27 |
오라클 모든 테이블 이름 컬럼명 목록 조회 (0) | 2018.12.27 |
오라클 가로를 세로로 바꾸기. 가로가 세로 (0) | 2018.12.27 |