오라클 클라우드 데이터베이스 파이썬 연동

지수·2021년 7월 19일
0
post-thumbnail

오라클 클라우드 데이터베이스 생성 및 접속에 이어, 생성한 클라우드 데이터베이스를 파이썬에 연동하는 방법에 대해 알아보겠다.

1. anaconda prompt install

오라클 클라우드 데이터베이스와 파이썬을 연동하기 위해 별도의 install 필요

  • anaconda prompt관리자 권한으로 실행
  • conda install -c https://conda.anaconda.org/anaconda cx_oracle 입력
  • Proceed ([y]/n)?가 나오면 y 입력
  • Preparing transaction: done
    Verifying transaction: done
    Executing transaction: done 이 뜨면 완료

2. 경로 설정

  • C드라이브 oracle 폴더 안에 instantclient_19_11 압축 해제
  • oracle 폴더 안에 network\admin 폴더 생성
  • admin 폴더 안에 연결하고 싶은 클라우드 데이터베이스 전자지갑 압축 해제
  • tnsnames.ora 파일을 메모장으로 열어 맨 윗 줄 dsn 값 확인


3. 파이썬 IDE에서 연동

  • 파이썬 IDE를 열어 오라클 클라우드 데이터베이스 연동 및 커서 생성
    1) 오라클 클라이언트 lib_dir을 instantclient_19_11 폴더 위치로 설정
    2) 오라클 데이터베이스 연동을 위해 user, password(클라우드 데이터베이스 생성 시 기입한 db 접속 비밀번호), 이전 단계(2)에서 확인한 dsn 값 입력
    3) 오라클 데이터베이스 connection이 완료되었다면 커서 생성
    *혹시 db 접속 비밀번호를 잊어버렸다면..? 클릭!


4. DB 연동 확인(sqldeveloper)

  • 파이썬 IDE에서 cursor.execute로 sql문 실행
  • 실행한 sql 트랜잭션 결과가 데이터베이스에 반영되도록 connection.commit()
  • 파이썬-db 연동 작업이 끝나면, 커서와 커넥션을 모두 close() 해줌
  • sqldeveloper에서 파이썬에서 실행한 sql 트랜잭션이 수행되었는지 확인
    1) sqldeveloper에서 클라우드 데이터베이스 접속 [오라클 클라우드 데이터베이스 생성 및 접속 - 6번 참고]
    2) select * from tab, select * from (생성한 테이블명) 해서 파이썬 IDE에서 작성한 create문, insert문이 commit 되었는지 확인 (이미지에서 pytab 외 테이블은 따로 추가해둔 것이라 무시하셔도 됩니다.)
profile
사부작 사부작

2개의 댓글

comment-user-thumbnail
2024년 3월 1일

안녕하세요. 혼자서 지금 오라클 클라우드로 서비스를 만들어보려는 취준생입니다. 일단 이 글을 적어주셔서 너무 감사합니다. 덕분에 sqldeveloper로 데이터베이스를 연결하는 것까진 했습니다! 그런데 이 글을 보면서 궁금증들이 조금 생겼습니다. 저는 현재 streamlit으로 서비스를 만들어보려고 하고 있습니다. 여기서 id/pw, 그리고 user_info가 담긴 데이터베이스를 오라클 클라우드 db에 만들어놓고, 사용자가 필요할 때마다 로그인/로그아웃을 하며 서비스를 사용하게 만들고 싶어요.

일단 위의 lib_dir에서 로컬 디렉토리를 써주는 것이 있는데, 그렇게 하면 해당 컴퓨터를 켜서 사용할 때만 클라우드 서버 접근이 되는건가요? 아니면 해당 코드가 들어있는 코드로 작동되는 웹페이지를 다른 기기에서 접근했을 때에도 클라우드 서버 접근이 되나요?

1개의 답글