Python配置mysql的教程(必看)
下面小编就为大家带来一篇Python配置mysql的教程(推荐)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
Linux系统自带Python,且根据系统自带资源来对python配置mysql;安装需要已配置好正确的yum源;
在python未配置mysql的情形下,直接import 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之前,还需要安装一些依赖项;否则会各种报错缺失
名称 | 来源 | 安装方式 |
python-devel | 系统自带 | yum whatprovides python* 将查询到的符合关键字名称的包逐个安装 |
mysql-server | ||
mysql-devel | ||
setuptools | 系统自带 | http://pypi.python.org/pypi/setuptools 下载,根据python的版本选择对应的setuptools版本或者使用自带包 yum install python-setuptools |
MySQL-python | 网络下载 |
可使用yum whatprovides mysql-devel命令查看是否已安装(旧版本Linux系统下包名称为 mysql-dev,如果mysql-devel提示找不到,则使用dev替代):
如果命令报错,则表示yum源配置有误,或安装光盘与系统不匹配等,具体请参考Linux下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值为installed则表示已经安装;主要观察mysql-devel关键字的包是否已安装;如未安装,则输入yum install mysql-devel命令安装
依次安装mysql-devel、python-devel、python-setuptools,安装过程不报错则继续;
以上依赖项安装完成后,回到MySQL-python解压出的MySQL-python-1.2.3c1/目录;
>> 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 build提示找不到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的安装位置与site.cfg中配置的位置不符,则需要修改site.cfg文件的#mysql_config配置,取消前面的注释,并配置为正确的地址。例如
mysql_config = /usr/bin/mysql_config #(未指定的情形下,mysql_config的位置默认在/usr/bin目录,不同系统存在差异,具体可通过搜索文件获取实际位置)
验证python-Mysql功能
根据需要配置Mysql数据库,并修改好用户名与密码;
查看python-mysql基础语法,链接mysql数据库的mysql库,获取user表信息,代码如下;
#!/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: ('%', 'root', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', '', '', '', '', 0L, 0L, 0L, 0L, <br>'mysql_native_password', '123456', 'Y', datetime.datetime(2017, 9, 14, 14, 40, 2), None, 'N') [root@localhost python]#
至此,Python配置Mysql验证通过!
Atas ialah kandungan terperinci Python配置mysql的教程(必看). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



不同数据库系统添加列的语法为: mysql: alter jadual meja_name tambah column_name data_type; postgresql: alter table table_name tambah lajur column_name data_type; oracle: alter table table_name tambah (column_name data_type);

Sebagai profesional data, anda perlu memproses sejumlah besar data dari pelbagai sumber. Ini boleh menimbulkan cabaran kepada pengurusan data dan analisis. Nasib baik, dua perkhidmatan AWS dapat membantu: AWS Glue dan Amazon Athena.

Tambah lajur dalam alat grafik SQL: Pilih jadual yang mana lajur yang anda mahu tambah. Klik kanan dan pilih "Alter Table" atau pilihan yang serupa. Mentakrifkan sifat lajur baru (nama, jenis data, panjang, atau sama ada kosong). Menentukan nilai lalai untuk lajur baru, jika berkenaan. Pilih jenis data yang sesuai untuk mengelakkan kesilapan data. Gunakan nama lajur yang bermakna. Pertimbangkan kesan prestasi apabila melakukan operasi tambahan lajur pada jadual besar. Sentiasa sandarkan pangkalan data sebelum operasi untuk mengelakkan kehilangan data.

MySQL adalah sistem pengurusan pangkalan data sumber terbuka. 1) Buat Pangkalan Data dan Jadual: Gunakan perintah Createdatabase dan Createtable. 2) Operasi Asas: Masukkan, Kemas kini, Padam dan Pilih. 3) Operasi lanjutan: Sertai, subquery dan pemprosesan transaksi. 4) Kemahiran Debugging: Semak sintaks, jenis data dan keizinan. 5) Cadangan Pengoptimuman: Gunakan indeks, elakkan pilih* dan gunakan transaksi.

Sintaks untuk menambah lajur dalam sistem pangkalan data yang berbeza sangat berbeza, dan berbeza dari pangkalan data ke pangkalan data. Sebagai contoh: MySQL: Pengguna Table ALTER Tambahkan Varchar E -mel Lajur (255); PostgreSQL: Pengguna Table Alter Tambahkan Varchar E -mel Lajur (255) Tidak Null Unik; Oracle: Pengguna Jadual Tambah E -mel Varchar2 (255); SQL Server: Pengguna Jadual Tambah Varch E -mel

Membina pangkalan data SQL melibatkan 10 langkah: memilih DBMS; memasang DBMS; mewujudkan pangkalan data; mewujudkan jadual; memasukkan data; mengambil data; mengemas kini data; memadam data; menguruskan pengguna; Menyandarkan pangkalan data.

SQL (bahasa pertanyaan berstruktur) adalah bahasa pengaturcaraan yang digunakan untuk membuat, mengurus, dan memohon pangkalan data. Fungsi utama termasuk: mewujudkan pangkalan data dan jadual, memasukkan, mengemaskini dan memadam data, menyusun dan menapis hasil, agregat fungsi, menyertai jadual, subqueries, pengendali, fungsi, kata kunci, manipulasi/definisi/bahasa kawalan,

MySQL dan SQL adalah kemahiran penting untuk pemaju. 1.MYSQL adalah sistem pengurusan pangkalan data sumber terbuka, dan SQL adalah bahasa standard yang digunakan untuk mengurus dan mengendalikan pangkalan data. 2.MYSQL menyokong pelbagai enjin penyimpanan melalui penyimpanan data yang cekap dan fungsi pengambilan semula, dan SQL melengkapkan operasi data yang kompleks melalui pernyataan mudah. 3. Contoh penggunaan termasuk pertanyaan asas dan pertanyaan lanjutan, seperti penapisan dan penyortiran mengikut keadaan. 4. Kesilapan umum termasuk kesilapan sintaks dan isu -isu prestasi, yang boleh dioptimumkan dengan memeriksa penyataan SQL dan menggunakan perintah menjelaskan. 5. Teknik pengoptimuman prestasi termasuk menggunakan indeks, mengelakkan pengimbasan jadual penuh, mengoptimumkan operasi menyertai dan meningkatkan kebolehbacaan kod.
