노트정리/파이썬 Python
Windows 환경에서 SSHFS로 원격 서버의 SQLite 연결
공돌이pooh
2025. 1. 3. 20:21
SQLite3 같은 파일 기반 데이터베이스를 원격 서버에서 다뤄야 할 때, SSHFS를 이용하면 편리하다. 이번엔 터미널 명령어 없이 Windows 탐색기만 사용해서 SSHFS로 원격 디렉토리를 마운트하는 방법을 정리해봤다. 특히 Python에서 SQLite를 바로 연결하는 방법까지도 함께 다뤘다.
필요한 준비물
- WinFsp 설치
WinFsp 다운로드 페이지에서 최신 배포를 받아 설치한다. - SSHFS-Win 설치
SSHFS-Win GitHub 페이지에서 시스템 환경(x86 또는 x64)에 맞는 설치 파일을 다운로드해 설치한다.
탐색기를 사용한 원격 서버 마운트
- 탐색기에서 네트워크 드라이브 연결 찾기
- 내 PC를 열고 탐색기 상단의 점 세 개 버튼을 클릭한다.
- 메뉴에서 네트워크 드라이브 연결을 선택한다.
- 원격 서버 경로 입력
- 원하는 드라이브 문자를 선택한다. (예: Z:)
- 폴더 입력란에 아래 형식대로 경로를 입력한다:예를 들어:
REMUSER
: 원격 서버 사용자 이름 (예:user
)HOST
: 원격 서버 주소 (예:192.168.1.100
)PORT
: SSH 포트 (기본값:22
)ABSOLUTE_PATH
: 루트 경로 기준으로 마운트할 디렉토리 경로 (예:/home/user/...
)
\\sshfs.r\user@192.168.1.100!22\home\user\project\db
\\sshfs.r\REMUSER@192.168.1.100!22\ABSOLUTE_PATH
- 사용자 인증
- 이 사용자로 연결을 체크하고 원격 서버의 사용자 이름과 비밀번호를 입력한다.
- 자주 사용하는 환경이라면, Windows 자격 증명 관리자에 암호를 저장할 수 있다.
- 연결 확인
- 설정이 완료되면 내 PC에 새로운 네트워크 드라이브로 표시된다.
- 이제 이 드라이브를 로컬 디렉토리처럼 사용할 수 있다.
Python에서 SQLite3로 원격 서버 데이터베이스 연결하기
Python으로 원격 서버의 SQLite 데이터베이스를 연결하려면, 먼저 SSHFS로 마운트된 경로를 사용하면 된다.
import sqlite3
# 마운트된 드라이브 경로를 사용해 데이터베이스 파일 연결
db\_path = r"Z:\\my.db" # Z:는 네트워크 드라이브 문자
conn = sqlite3.connect(db\_path)
# SQLite 명령 실행
cursor = conn.cursor()
cursor.execute("SELECT * FROM example_table")
rows = cursor.fetchall()
for row in rows:
print(row)
conn.close()