>  기사  >  백엔드 개발  >  Python에서 mysql을 구성하는 방법에 대한 튜토리얼(필독)

Python에서 mysql을 구성하는 방법에 대한 튜토리얼(필독)

黄舟
黄舟원래의
2017-10-13 10:57:582031검색

아래 편집기는 Python에서 mysql을 구성하는 방법에 대한 튜토리얼을 제공합니다(권장). 편집자님이 꽤 좋다고 생각하셔서 지금 공유하고 모두에게 참고용으로 드리도록 하겠습니다.

Linux 시스템은 Python과 함께 제공되며 시스템 자체 리소스에 따라 Python용 mysql을 구성해야 합니다.

Python이 mysql로 ​​구성되지 않은 경우 MySQLdb를 직접 가져오기 위한 팁은 다음과 같습니다


 >>> import MySQLdb
 Traceback (most recent call last):
 File "<stdin>", line 1, in <module>
 ImportError: No module named MySQLdb

Linux 시스템에는 mysql-python의 rpm 설치 패키지가 없습니다. 이 리소스는 인터넷에서 다운로드해야 합니다:

https://sourceforge.net/ projects/mysql-python

현재 주류 응용프로그램인 Python2.6 또는 Python2.7 버전에서 사용하고 있으며, MySQL-python-1.2.3c1.tar.gz

로 다운로드한 후 Linux에 업로드합니다. 기계를 설치하고 중국어가 아닌 디렉토리

tar -xf MySQL -python-1.2.3c1.tar.gz에 넣으십시오. 압축 해제 디렉토리는 다음과 같습니다


[root@localhost home]# cd MySQL-python-1.2.3c1/
[root@localhost MySQL-python-1.2.3c1]# ll
总用量 240
drwxr-xr-x. 5 root root  89 10月 12 12:27 build
-rw-r--r--. 1 tianF enosoft 59580 3月 31 2009 ChangeLog
drwxr-xr-x. 2 root root  57 10月 12 12:27 dist
drwxr-xr-x. 2 tianF enosoft 58 3月 31 2009 doc
-rw-r--r--. 1 tianF enosoft 9716 2月 6 2009 ez_setup.py
-rw-r--r--. 1 tianF enosoft 17989 2月 25 2007 GPL
-rw-r--r--. 1 tianF enosoft 2935 3月 4 2007 HISTORY
-rw-r--r--. 1 tianF enosoft 605 2月 11 2007 MANIFEST
-rw-r--r--. 1 tianF enosoft 272 3月 9 2009 MANIFEST.in
-rw-r--r--. 1 tianF enosoft 2098 3月 31 2009 metadata.cfg
-rw-r--r--. 1 tianF enosoft 75431 3月 31 2009 _mysql.c
drwxr-xr-x. 3 tianF enosoft 211 10月 12 12:28 MySQLdb
-rw-r--r--. 1 tianF enosoft 2306 4月 5 2006 _mysql_exceptions.py
-rw-r--r--. 1 root root  3791 10月 12 12:28 _mysql_exceptions.pyc
drwxr-xr-x. 2 tianF enosoft 90 3月 31 2009 MySQL_python.egg-info
-rw-r--r--. 1 tianF enosoft 1755 3月 31 2009 PKG-INFO
-rw-r--r--. 1 tianF enosoft 3203 4月 5 2006 pymemcompat.h
-rw-r--r--. 1 tianF enosoft 6696 10月 17 2008 README
-rw-r--r--. 1 tianF enosoft 380 3月 31 2009 setup.cfg
-rw-r--r--. 1 tianF enosoft 951 3月 8 2009 setup_common.py
-rw-r--r--. 1 root root  1520 10月 12 12:27 setup_common.pyc
-rw-r--r--. 1 tianF enosoft 2947 3月 8 2009 setup_posix.py
-rw-r--r--. 1 root root  2977 10月 12 12:27 setup_posix.pyc
-rw-r--r--. 1 tianF enosoft 495 10月 18 2008 setup.py
-rw-r--r--. 1 tianF enosoft 1547 3月 4 2007 setup_windows.py
-rw-r--r--. 1 tianF enosoft 592 10月 17 2008 site.cfg
drwxr-xr-x. 2 tianF enosoft 149 3月 31 2009 tests

python을 구성하기 전에- mysql, 일부 종속성을 설치해야 합니다. 그렇지 않으면 다양한 누락 오류가 보고됩니다

Source설치 방법yum은 Python을 제공합니다*mysql-develsetuptoolshttp: / /pypi.python.org/pypi/setuptools명령이 오류를 보고하는 경우 yum 소스 구성이 잘못되었거나 설치 CD가 시스템과 일치하지 않는다는 의미입니다. 자세한 내용은 Linux
python-devel시스템이 함께 제공됩니다.
키워드 이름과 일치하는 쿼리된 패키지를 하나씩 설치합니다. mysql -server

시스템이 함께 제공됩니다
다운로드, Python 버전에 따라 해당 setuptools 버전을 선택하거나 자체 버전을 사용하십시오. yum install python-setuptools MySQL-python온라인 다운로드
yum whatprovides mysql-devel 명령을 사용하여 설치 여부를 확인할 수 있습니다(이전 버전의 Linux에서 패키지 이름은 mysql-dev입니다. mysql-devel에서 찾을 수 없다는 메시지가 표시되면 dev를 사용하세요) 대신):
의 yum 소스 구성 튜토리얼을 참조하세요.

[root@localhost mysql-python]# <strong>yum whatprovides mysql-devel</strong>
Loaded plugins: product-id, refresh-packagekit, security, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
base        | 3.9 kB  00:00 ...
mysql-devel-5.1.66-2.el6_3.x86_64 : Files for development of MySQL applications
Repo  : base
Matched from:
 
mysql-devel-5.1.66-2.el6_3.i686 : Files for development of MySQL applications
Repo  : base
Matched from:
 
mysql-devel-5.1.66-2.el6_3.x86_64 : Files for development of MySQL applications
Repo  : installed
Matched from:
Other  : Provides-match: mysql-devel
 
mysql-devel-5.1.66-2.el6_3.i686 : Files for development of MySQL applications
Repo  : installed
Matched from:
Other  : Provides-match: mysql-devel
위와 같이 Repo 값이 설치되어 있으면 주로 mysql-devel 키워드 패키지가 설치되어 있는지 관찰하고 그렇지 않으면 yum install mysql-devel 명령을 입력하여 설치합니다.

mysql을 -devel, python-devel, python-setuptools 순서로 설치하면 오류가 보고되지 않으면 설치 프로세스가 계속됩니다.


위 종속성 설치가 완료되면 MySQL-python-1.2.3c1로 돌아갑니다. / MySQL-python에 의해 추출된 디렉토리

>> python setup.py build

>> python setup.py install

위 두 명령이 올바르게 실행되면 Python이 mysqldb를 성공적으로 구성했음을 의미합니다. MySQLdb를 가져올 때 오류가 있는지 다시 확인하세요.

[root@localhost mysql-python]#
[root@localhost mysql-python]# python
Python 2.7.5 (default, Aug 4 2017, 00:39:18)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-16)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import MySQLdb
>>>

위는 MySQLdb가 성공적으로 구성되었음을 의미합니다.


일반적인 오류: python setup.py 빌드에서 mysql_config를 찾을 수 없다는 메시지가 표시됩니다. 문제는 mysqldb를 빌드할 때 MySQL-python-1.2.3c1/ 디렉터리의 site.cfg 파일에 구성된 mysql_config가 사용되기 때문입니다.

[root@localhost MySQL-python-1.2.3c1]# ls
build  doc   HISTORY  metadata.cfg _mysql_exceptions.py PKG-INFO  setup.cfg   setup_posix.py setup_windows.py
ChangeLog ez_setup.py MANIFEST  _mysql.c  _mysql_exceptions.pyc pymemcompat.h setup_common.py setup_posix.pyc site.cfg
dist  GPL   MANIFEST.in MySQLdb  MySQL_python.egg-info README   setup_common.pyc setup.py   tests
[root@localhost MySQL-python-1.2.3c1]# more site.cfg
[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
static = False
 
# The path to mysql_config.
# Only use this if mysql_config is not on your PATH, or you have some weird
# setup that requires it.
#mysql_config = /usr/local/bin/mysql_config
 
# The Windows registry key for MySQL.
# This has to be set for Windows builds to work.
# Only change this if you have a different version.
registry_key = SOFTWARE\MySQL AB\MySQL Server 5.0
[root@localhost MySQL-python-1.2.3c1]#
mysql의 설치 위치가 사이트에 구성된 위치와 일치하지 않는 경우 .cfg인 경우 site.cfg 파일의 #mysql_config

구성을 수정하고 이전 주석을 취소한 후 올바른 주소로 구성해야 합니다. 예를 들어


mysql_config = /usr/bin/mysql_config

#(지정하지 않을 경우 mysql_config의 위치는 /usr/bin 디렉터리로 기본 설정된다. 시스템마다 차이가 있다. 실제 위치는 검색을 통해 알 수 있다. 파일) python-Mysql 기능을 확인하세요

Mysql 데이터베이스를 필요에 따라 구성하고 사용자 이름과 비밀번호를 수정하세요. python-mysql의 기본 구문을 보고 mysql의 mysql 라이브러리를 연결하세요.

#!/usr/bin/python
#encoding=utf8
 
import MySQLdb
conn=MySQLdb.connect("127.0.0.1","root","123456","mysql")
cursor=conn.cursor()
cursor.execute("select * from user")
getdata=cursor.fetchone()
print "the user table content is:",getdata
conn.close()
실행 결과는 다음과 같습니다.

[root@localhost python]# python mysql-conn.py
the user table content is: (&#39;%&#39;, &#39;root&#39;, &#39;Y&#39;, &#39;Y&#39;, &#39;Y&#39;, &#39;Y&#39;, &#39;Y&#39;, &#39;Y&#39;, &#39;Y&#39;, &#39;Y&#39;, &#39;Y&#39;, &#39;Y&#39;, &#39;Y&#39;, &#39;Y&#39;, &#39;Y&#39;, &#39;Y&#39;, &#39;Y&#39;, &#39;Y&#39;, &#39;Y&#39;, &#39;Y&#39;, &#39;Y&#39;, &#39;Y&#39;, &#39;Y&#39;, &#39;Y&#39;, &#39;Y&#39;, &#39;Y&#39;, &#39;Y&#39;, &#39;Y&#39;, &#39;Y&#39;, &#39;Y&#39;, &#39;Y&#39;, &#39;&#39;, &#39;&#39;, &#39;&#39;, &#39;&#39;, 0L, 0L, 0L, 0L, <br>&#39;mysql_native_password&#39;, &#39;123456&#39;, &#39;Y&#39;, datetime.datetime(2017, 9, 14, 14, 40, 2), None, &#39;N&#39;)
[root@localhost python]#

이제 Python 구성 Mysql 검증이 통과되었습니다!

위 내용은 Python에서 mysql을 구성하는 방법에 대한 튜토리얼(필독)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.