Python 강의 day 1

주세환·2023년 6월 15일
0

Python

목록 보기
1/7

설치

anaconda

anaconda 사이트에서 anaconda를 다운받은 후 실행한다.

동의하고

사용자 지정

설치 경로를 지정

몰?루

모르면 next

설치 완료

정상적으로 추가되었다.

anaconda를 사용하는 이유는 python 버전을 새로 받지 않고 변경할 수 있기 때문이다.


python 버전 추가 및 변경

Anaconda Prompt를 실행

python --version으로 파이썬의 버전을 확인할 수 있다.

현재 3.10.9 버전이다.

환경 확인

conda create --name py38 python=3.8 을 입력하여 3.8 버전을 설치한다

뭐라고 물어보면 y 눌러서 진행

설치된 리스트를 확인

conda active py38을 입력하여 py38로 변경 가능하다.

conda deactivate를 입력하면 다시 3.10.9 버전으로 변경된다.

conda 명령어를 검색하면 더 많은 명령어를 알 수 있다.

jupyter notebook

jupyter notebook을 입력하면

크롬창이 하나 열린다.

여기거 jupyter notebook이다.

Ctrl+C를 눌러 중지한 후 jupyter lab을 입력하여 lab으로 사용하자

jupyter lab이다

eclipse-workspace에 폴더를 생성해보자.

Notebook Python3를 눌러 위 파일을 생성하자.

  • 프롬프트를 종료하면 안됨

Ctrl + Enter : 실행
Shift + Enter : 실행 후 새 줄 추가
B : 새 줄 추가
DD : 줄 삭제


사용

DB 연동

! pip install JayDeBeApi 를 입력하여 Api를 설치한다.

jar파일을 설치해야 한다.

maven 다운

jar파일을 다운받고

jar 파일을 같은 폴더에 위치시킨다.

refresh를 한 후

이렇게 실행한다.


SQL문 작성

# h2 db 연동하기
import jaydebeapi

connection = jaydebeapi.connect(
    "org.h2.Driver",
    "jdbc:h2:tcp://1.234.5.158:31521/ds201;Mode=Oracle",
    ["sa",""],
    "./h2-2.1.214.jar")

print(connection)

cursor = connection.cursor(); # 커서 생성
sql = "select * from address" # sql문 작성
cursor.execute(sql) # sql문 실행
result = cursor.fetchall(); # 결과받기
print(result); # 출력하기 [(),(),...] 으로 반환됨

이렇게 작성하고 출력해보면

db에 저장된 정보들이 불러와진다.

sql = ~~ 을 이용하여 원하는 sql문을 작성할 수 있다.


# h2 db 연동하기
import jaydebeapi

connection = jaydebeapi.connect(
    "org.h2.Driver",
    "jdbc:h2:tcp://1.234.5.158:31521/ds201;Mode=Oracle",
    ["sa",""],
    "./h2-2.1.214.jar")

cursor = connection.cursor(); # 커서 생성
sql = "INSERT INTO member1 VALUES('a1222', 22, '이름1', 'pw1', CURRENT_TIMESTAMP)" # sql문 작성
cursor.execute(sql) # sql문 실행

INSERT 하는 sql문을 작성해보자.

방금 INSERT 한 값도 출력되는 모습을 볼 수 있다.

물론 DB에도 동시에 추가되었다.


AWS 연결

VMware 서버를 돌리고 MobaXTerm을 실행한다.

아이디 ubuntu, 암호 1234를 입력

sudo apt install net-tools -y 를 입력하여 net-tools를 설치한다

ifconfig를 입력하여 ip를 확인할 수 있다.

docker

-- 도커 설치전 준비 프로그램
$ sudo apt install -y apt-transport-https build-essential ca-certificates g++ curl git libtool make unzip

-- Docker 설치 이미지 리포지토리 키 가져오기
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
    
OK가 표시됨.
    
-- 리포지토리 추가하는 부분
$ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
   
-- docker설치   
$ sudo apt install -y docker-ce docker-ce-cli containerd.io

-- 도커 버전 확인
$ docker version
    Client: Docker Engine - Community
     Version:           24.0.2
     API version:       1.43
     Go version:        go1.20.4
     Git commit:        cb74dfc
     Built:             Thu May 25 21:52:22 2023
     OS/Arch:           linux/amd64
     Context:           default
    permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get "http://%2Fvar%2Frun%2Fdocker.sock/v1.24/version": dial unix /var/run/docker.sock: connect: permission denied

-- ubuntu사용자가 docker를 사용할 수 있게 그룹추가
$ sudo usermod -aG docker ubuntu

-- 재부팅
$ sudo reboot

복사하여 우클릭을 누르면 붙여넣기가 된다. 하나씩 다 설치하자.


재부팅을 한 후에 다시 로그인

docker search oscar

이걸 사용 중이다.

docker

MobaXTerm에서 docker pull oscarfonts/h2:2.1.214 를 입력하여 설치하자.

docker images를 입력하여 image를 불러온다.

docker pull mongo 를 입력하여 mongo를 가져온다.

하나가 더 추가되었다.

pwd로 경로를 확인한 후 h2_data라는 폴더를 생성한다.

docker run -d -p 31521:1521 -v /home/ubuntu/h2_data:/opt/h2-data -e H2_OPTIONS=-ifNotExists --name=MyH2Instance oscarfonts/h2:2.1.214 를 입력하여 이미지를 적용시킨다.

docker ps 로 컨테이너 확인

데이터베이스를 연결한다.


  • 정리
참고: https://github.com/oscarfonts/docker-h2


-- 설치 이미지 받기
$ docker pull oscarfonst/h2:2.1.214

-- 받은 이미지 확인
$ docker images


1. 이미지 받기(h2 데이터베이스)
oscharfonst/h2:2.1.214
-- 1521, 81(포트2개사용했음)
-- 데이터 보관 /opt/h2-data


2. 이미지를 이용해서 설치하기
-d 백그라운드로 24시간 구동
-p 31521:1521   (외부접속포트:만든사람의포트 연결)
-v /home/ubuntu/h2_data:/opt/h2-data (내가보관할폴더:만든사람의데이터폴더 연결 )
-e h2db의 환경설정값
이미지명

-- 컨테이너 생성
$ docker run -d -p 31521:1521 -v /home/ubuntu/h2_data:/opt/h2-data -e H2_OPTIONS=-ifNotExists --name=MyH2Instance oscarfonts/h2:2.1.214

3.  컨테이너 확인
$ docker ps

4. 컨테이너 중지
$ docker stop MyH2Instance

5. 컨테이너 구동
$ docker start MyH2Instance

0개의 댓글