흠...일단 oracle 조합만 쓰다보니 rpm으로 쉽게쉽게 설치를 하다가 이번에 mysql에서 사용할일이 있어서 설치를 해보았습니다.
각설하고 결론부터 말씀 드리자면..
mysql 자체가 컴파일이 이상하게 되었다거나, 정확한 옵션을 모를경우에는 아싸리 mysql을 재 설치하는게 좋습니다. (재설치가 정신건강에 이롭습니다)
========== 환경
CentOS 5.5 x64 + python 2.4.3 + Mysql 5.0.51 + MySQL-python-1.2.3
MySQL-python-1.2.3 컴파일 과정
1. 다운로드 받고 (http://sourceforge.net/projects/mysql-python/files/mysql-python/) 압축 푸는 과정은 생략
2. 최초 setuptools가 필요합니다.
python ez_setup.py 를 통해서 간단하게 설치 되어집니다.
3. site.cfg 수정이 필요합니다.
저는 여기서 삽질했습니다. mysql을 static하게 컴파일을 했었더니 라이브러를 못찾는 경우가 발생합니다. 원인을 찾아볼려고 했지만 LD_LIBRARY_PATH 혹은 /etc/ld.so.conf 를 수정해도 원인 불명이였습니다.
mysql 재 컴파일하니 되네요...-_-
[options]
# embedded: link against the embedded server library
# threadsafe: use the threadsafe client
# static: link against a static library (probably required for embedded)
embedded = False #이거 뭘까요? 서버 라이브러리 링크? 링크되어진경우인가?
threadsafe = True #mysql 컴파일시 --enable-thread-safe-client 포함되어져 있을경우 입니다.
static = False #동적 라이브러리로 컴파일할경우에는 False입니다
그리고 mysql_config를 수정합니다.
RPM으로 설치하신분이라면 수정할 필요가 없습니다.
아래 레지스트리키 어쩌구 하는데...이건 windows 사용자용
맞추시고...
export LD_LIBRARY_PATH=/data/mysql/lib/mysql #mysql 라이브러리 경로
해줍니다.
그 후
python setup.py build
python setup.py install 하면 되어집니다.
수행 후 결과
root@localhost MySQL-python-1.2.3]# python
Python 2.4.3 (#1, Sep 3 2009, 15:37:37)
[GCC 4.1.2 20080704 (Red Hat 4.1.2-46)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import MySQLdb
/usr/lib64/python2.4/site-packages/MySQL_python-1.2.3-py2.4-linux-x86_64.egg/_mysql.py:3: UserWarning:
Module _mysql was already imported from /usr/lib64/python2.4/site-packages/MySQL_python-1.2.3-py2.4-l
inux-x86_64.egg/_mysql.pyc, but /root/c/MySQL-python-1.2.3 is being added to sys.path
정상적으로 import가 되어지는군요...근데 저 Warning 메세지는 무엇이란 말인가?
뭐 결론은 mysql에 있었던것 같습니다..ㅠㅠ;
'06. Programming > iii.Python 2.x~3.x' 카테고리의 다른 글
oracle 한글 insert시 문제해결 어찌하나...ㅠㅠ; (0) | 2011.05.27 |
---|---|
cx_Oracle 연동 (python) (0) | 2010.08.10 |
헛 파이썬 홈페이지에 블로그가 등록이 되어지다? (0) | 2010.06.19 |