Secret Poten

#12. SQL을 편리하게 사용하기 위한 툴 [SQL Developer 편] 본문

오라클 데이터베이스[11gR2](#1~

#12. SQL을 편리하게 사용하기 위한 툴 [SQL Developer 편]

potentail 2017. 11. 9. 21:10

#11포스팅에서는 터미널창에서 SQL plus를 사용하여 접속하여 보았습니다.

이번 포스팅은 다른 툴을 사용하여 데이터베이스에 접속하여 쿼리를 날려볼려고합니다.


한번써본결과 터미널창에서 날리는 명령어처럼 다먹긴하지만

유저변경이나 몇몇명령어는 안먹히는게 있었습니다.


※툴을 사용하여 SQL을 사용하는것보다 SQL plus를 권장합니다.

※사진은 클릭하시면 확대 가능합니다.



1.  SQL Developer 설치

현재 가장 많이 쓰이는 SQL툴이 아닐까 싶습니다.


사실은 SQL관련한 툴말고도 데이터베이스 관리도구를 알아보았으나

거의 기업용으로 나온것이라 따로 테스트가 되지않았습니다.

(관리툴은 가격도 기업용이라 비싼데다가 무료로 풀린것이 없더군요.)

데이터베이스 관리도구는 Enerprise Manager (EM)을 사용하는수밖에 없을 것 같습니다.


물론 EM자체도 굉장히 라이센스비가 비싸기 때문에 실무에서는 많이 사용이 안된다고 들었습니다.

즉 sql plus 나 sql developer를 사용하여 데이터베이스를 관리해야 한다는 뜻인데요

명령어에 익숙하지 않으면 굉장히 힘들어 지겠죠...


물론 돈많은 회사가서 관리도구 사달라, CPU사달라해서 시스템 빵빵하게 구축해놓고

마우스 하나로 DB를 관리할 수 도 있습니다만... 우리는 그런것이 아니기 때문에 하나씩 공부를 해야하죠.




http://www.oracle.com/technetwork/developer-tools/sql-developer/overview/index.html


위 사이트에 접속하시면 오라클사이트에서 SQL Developer를 무료로 받으실 수 있습니다.


Download를 누르시면..



Accept License Agreement를 클릭.


그후 윈도우나 리눅스에 맞는것을 받아줍니다.


※TIP

리눅스에 설치한 데이터베이스 일지라도 외부로 통신이 된다면 윈도우 창에서 SQL Developer로도 접속이 가능함.

즉 가상머신(리눅스)에 SQL Developer를 설치할려면 따로 RPM패키지를 받아서 리눅스에 넣고 설치,

윈도우 사용자라면 윈도우 버젼만 받아서 리눅스 데이터베이스에 커넥션연결을 맺으면 됨.


저는 윈도우 버젼을 받았습니다.



압축을 풀고...



sqldeveloper.exe를 실행하면 위와같이 JDK의 HOME을 입력하라는 창이뜹니다.

만약 자바가 설치되어있지 않다면



http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html


위 사이트에 들어가면 자바를 받을수 잇습니다.

동그라미친것을 클릭하면 JAVA SE Development Kit을 받을수 있습니다.

현재 포스팅글을 작성하는 시간대의 최신버젼은

jdk-9.0.1입니다. 하지만 SQL Developer를 지원하지 않는다는 말이 뜨므로 8버젼을 설치해줍니다.


Accept License Agreement 를 클릭후

자신의 운영체제에 맞는 JDK를 받아서 설치해줍시다.

(JDK설치할때는 기본경로에 설치하는것을 추천드립니다)


2016/10/10 - [JAVA(자바)] - (1)JDK설치와 이클립스 설치 & 환경변수 설정하기


환경변수 설정하는것은 예전에 썻던 위글을 참조하시면 될것같습니다.



설치를 진행하기위해 sqldeveloper.exe 파일을 실행하면 위처럼 JDK의 홈을 지정하라는게 뜹니다.


그러면 JDK가 설치되었던 기본경로인


C:\Program Files\Java\jdk[버젼]의 폴더를 선택해줍니다.



기껏 설정했는데 오류가 뜨는경우가 있습니다.

바로 저같은 경우이죠.


사실상 매우 황당했습니다만... 그래도 해결법은 찾았습니다.


되시는분은 설치를 계속 진행하시고

안되시는분은 종료를 누른후 SQL Developer를 C드라이브 아무경로에 넣어줍시다.

자주 사용할꺼니 그냥 바탕화면에...



그후 다시 JDK 경로를 잡아주시고 실행하시면


?? 내가 언제그랬다고 라는 식으로 엄청나게 태연하게 실행됩니다.

무슨 이유인지 모르겠지만 뭐 안되는건 안되나봅니다...

(아마도 JDK가 설치된 드라이브에 같이 있어야 하나봅니다)


아니오 누르시면 쓱쓱 다되고 설치가 끝납니다.



Oracle로 자동화된 사용 보고 보내기 허용을 꺼주시고 확인


그러면 연결을 시작해보죠...


2. SQL Developer로 데이터베이스 연결

가장먼저 데이터베이스가 켜져있어야 하기때문에 리눅스 버추얼 머신을 시작후

oracle유저로 로그인합니다.


  • /sbin/ifconfig


현재 할당되있는 아이피를 확인합니다.

설치할때 저와같은 환경으로 구성하였다면 IP는 192.168.0.201입니다.


그리고 sss 를 쳐서 데이터베이스가 셧다운상태인지 오픈상태인지 확인합니다.


  • sss


이명령어도 저와 같이 설치할때 구현하였다면 sss로 쉽게 데이터베이스에 접속이 가능합니다.


sss는 alias로 구현했기때문에 원래라면 " sqlplus / as sysdba " 라고 명령어를 쳐줬어야 하죠.


일단 데이터베이스에 접속하면 Connected to: .... Testing options 라고 뜹니다.

이렇게 뜨면 데이터베이스가 정상적으로 시작이 되어있다는 겁니다.


idle instance라고 뜨면 데이터베이스가 종료 상태이므로 조금 기다려줍니다.

(grid infrastructure를 설치하여서 오라클 리스타트도 같이 설치가 되어있어서 DB및 ASM이 자동으로 시작됩니다)

exit로 sql plus를 나갔다가 잠시후 다시 sss로 들어가보고 그대로 idle instance라면

startup 을 쳐주시면 됩니다.


※TIP

grid infrastructure에 한 기능인 오토리스타트는 비정상적으로 종료된 프로세서들을 자동으로 재시작 시킵니다.

리눅스를 킬때 자동으로 DB및 프로세스들을 시작시켜주며 종료할때도 순차적으로 하나씩 정상종료를 시켜서 시스템을 끄게 해줍니다.

이기능은 파라미터를 설정하여 껏다 켰다 가능합니다.

만약 사용자가 명시적으로 Shutdown명령어로 종료하였다면 자동적으로 재시작이 되지 않습니다.


(리스너와 인스턴스에 관한 설명등은 뒤에가서 재 설명하도록 하겠습니다)


만약 grid를 설치 하지 않았다면 리눅스를 켠다음

lsnrctl start 로 listener 프로세스를 띄우고 sqlplus / as sysdba로 데이터베이스에 접속해서

startup 이란 명령어로 데이터베이스를 시작시켜야 하죠.


또한 종료할땐 켰던것과 반대로 데이터베이스에 sqlplus / as sysdba로 접속해서 shutdown immediate로 데이터베이스를 종료후 리눅스 명령어로 lsnrctl stop으로 리스너를 종료후 시스템을 꺼야했죠.


grid를 설치하면 시스템을 켤때와 끌때 자동으로 시작,종료를 해주기때문에 실습의 편의성이 높아진것도 있습니다.


데이터베이스가 시작된것을 확인하였다면 SQL Developer를 켭니다.



왼쪽위 +사인 기호를 누르면 새접속을 추가합니다.



접속이름 : orcl_sys

사용자이름 : sys   

비밀번호 : oracle_4U (만약 sys비밀번호를 다르게 주었다면 그에 맞춰서 기입)

비밀번호 저장 체크 or non체크 선택 (편의를 위해 체크하는게 좋음)

접속 유형 : 기본

롤 : sysdba

호스트이름 : 192.168.0.201 (만약 로컬인 상황이면 로컬도메인을 적어도 무방)

포트 : 1521

SID : orcl

위처럼 기입하고 나시면 아랫쪽버튼에 테스트 클릭



왼쪽 아랫쪽 상태:성공 이라는 메세지가 보이면 성공한겁니다.


저장을 클릭후 접속.



여기서 쿼리문을 작성하고 실행 할 수 있습니다.


간단한 쿼리를 작성해봅시다.


  • SELECT * FROM tab;


쿼리를 실행할려면 오른쪽위 재생버튼을 클릭하거나

단축키인 { Ctrl + 엔터 } 를 누릅니다.



그러면 아랫쪽에 쿼리 결과문이 나옵니다.

12c부터는 SQL Developer로 거의 모든게 가능해졌다는데 나중에 12c를 배우고나서 처음부터 다시 진행해보도록 하겠습니다.

일단은 상용화가된 11g부터 돌파하도록 하죠!


만약 다른계정을 사용할려면 +사인기호를 다시 눌러서 다른계정의 접속정보를 만들어 줘야합니다.



이와같이 conn명령어가 먹질 않습니다.....



글꼴및 크기변경은

도구->환경설정->코드 편집기->글꼴 클릭후 편집


다음 #13포스팅은 SQL Developer를 좀 더 둘러보기로 하죠.

(Youtube) Secret Poten : http://goo.gl/ENeBOR

(Youtube) Secret Poten AE : http://goo.gl/qasbWH


그외 궁금한점은

공지사항을 잘보시고 오픈채팅으로 물어봐주시면 감사하겠습니다

공지사항 바로가기


-HardWare SetUp-

CPU : Intel i7-6700k(OC)

RAM : Samsung DDR4 8GB X 4 (32GB)

HDD : Seagate 1TB X 3 (3TB HDD), Seagate 4TB =Total 7TB

SSD : SanDisk SSD 256GB

VGA : Asus GTX1080 8GB(OC)

MB : Asus Z170-A STCOM

Case : Thermaltake Core X9

PSU : Micronics Performance II HV 850W Bronze

ODD : LG BH16NS55 (Blu-ray ODD)

Other : PSIONIC Custom Water Cooler (CPU set), LED Cooler (EA 8), Scarlett 6i6, MXL990






Comments