라즈베리파이 MySQL DB 설치 (Python 연동)

 

MySQL DB 를 라즈베리파이에 설치하는 방법입니다.

 

먼저 mysql-server, mysql-client 를 설치합니다.

$ sudo apt-get install mysql-server mysql-client

설치 과정 중 DB root 비밀번호 설정창이 나오면 입력 (2번)

 

설치 과정이 끝나면 설정 파일을 수정합니다. bind-address 부분을 찾아 주석처리합니다. (앞에 # 붙여주고 저장)

$ sudo nano /etc/mysql/my.cnf
......
# bind-address = 127.0.0.1
......

 

mysql 서비스를 재시작합니다.

$ sudo service mysql restart

 

테스트용 DB 생성을 위해 mysql shell 에 접속합니다. root 유저로 접속합니다.

$ mysql -u root -h localhost -p

 

root 비밀번호 입력 후 쉘이 뜨면 테스트 DB 생성.

mysql> CREATE DATABASE pidb;

 

pi 유저 생성. 마지막 xxxxxxxx 부분에 비번을 입력하세요.

mysql> CREATE USER 'pi'@'localhost' IDENTIFIED BY 'xxxxxxxx';

 

생성한 pi 유저에 pidb 접근권한 설정

GRANT ALL PRIVILEGES ON pidb.* TO 'pi'@'localhost';

 

설정 적용

FLUSH PRIVILEGES;

 

Ctrl + C 키를 눌러 쉘을 빠져 나옵니다. 다시 pi 유저로 pidb에 접속

$ mysql -u pi -h localhost pidb -p

 

이상없이 접속되면 OK

 


 

Python – MySQL 연동 확인을 위해 파이썬 쉘을 실행하고 MySQLdb 모듈을 import 해봅니다.

$ python
>>> import MySQLdb

Traceback (most recent call last):
File "test.py", line 3, in <module>
import MySQLdb
ImportError: No module named MySQLdb

 

이렇게 에러가 나오면 MySQL DB 와 Python이 연동되지 않은 상태입니다.

아래 링크에서 MySQL-python-1.2.3.tar.gz 다운로드 후 라즈베리파이에 업로드 합니다.

http://sourceforge.net/projects/mysql-python/files/mysql-python/1.2.3/

다운로드 받은 디렉토리에서

$ tar xfz MySQL-python-1.2.3.tar.gz
$ cd MySQL-python-1.2.3

 

여기서 필요하다면 edit site.cfg 파일을 자신의 환경에 맞게 수정해줘도 됩니다. (모르니까 그냥 패스;;;)

설치전에 아래 패키지를 업데이트 하니다. 이 과정은 mysql_config 에러를 방지합니다. (참고자료 링크)

$ sudo apt-get install libmysqlclient-dev

 

빌드 후 설치

$ python setup.py build
$ sudo python setup.py install

 

확인을 위해 파이썬 쉘을 실행하고 MySQLdb 모듈을 import 해봅니다.

$ python
>>> import MySQLdb

에러 없이 진행되면 파이썬 쉘 종료. 이제 파이썬에서 MySQL DB를 억세스 할 수 있습니다.

 

 

파이썬에서 MySQL DB를 다루기 위한 기본 예제들이 아래 사이트에 잘 설명되어 있습니다. 예제가 필요하시면 아래 사이트의 예제들을 확인한 후 응용해보세요.

http://www.tutorialspoint.com/python/python_database_access.htm

 

You may also like...