本文记录:在PyCharm2016.3.3 中基于Anaconda3 Python3.6版本安装Python for Mysql驱动。尝试了安装Mysql-Connector成功,但是连接数据库时驱动有bug而失败;尝试安装MySQLdb,因Python版本兼容问题 失败。最终安装PyMysql成功。现将详细安装过程记录如下。

若不想折腾,且系统环境与我的一致,建议直接就安装PyMysql吧。

一,系统环境

windows10 64位,安装了Anaconda3 和PyCharm2016.3.3。此外,windows10下还自己安装了Python3.4版本(已配置好环境变量),如下图:

PyCharm中配置的Python解释器为Anaconda3自带的Python环境,如下图:

安装的Mysql版本如下:

mysql  Ver 14.14 Distrib 5.5.53, for debian-linux-gnu (x86_64) using readline 6.2

二,Python for Mysql driver 介绍

对于Python而言,有很多访问Mysql的驱动,主要是Mysqldb、mysqlconnector 和 pymysql(参考这篇文章)

MySQL-python: This package contains the MySQLdb module, which is written in C.It is one of the most commonly used Python packages for MySQL.
mysql-connector-python: This package contains the mysql.connector module, which is written entirely in Python.
PyMySQL: This package contains the pymysql module, which is written entirely in Python. It is designed to be a drop-in replacement for the MySQL-python package.

三,本地环境安装MySQL Connector/Python

在MySQL Connector/Python官网下载:mysql-connector-python-2.1.7-py3.4-windows-x86-64bit.msi 双击安装成功。

cmd命令行下执行 import mysql.connector 成功,如下图:

但是,我想使用Anaconda3下自带的Python环境,而不想使用本地的Python3.4环境。因为Anaconda3中已经帮我们自带了很多第三方的依赖包,比如Python中的ORM框架:SQLAlchemy 。而下面也将 通过 “from sqlalchemy import create_engine”来测试Mysql数据库连接

于是,打开Anaconda Prompt,执行命令:

conda install -c anaconda mysql-connector-python 

安装 mysql-connector-python 成功。参考:how do i get mysql to work with python 3.6 in anaconda ide (spyder)?

于是,开始欢喜满满地去测试是否能成功地连接数据库。

打开PyCharm,在菜单栏“Tools”--->“Python console”打开Python Console:

执行如下命令:

from sqlalchemy import create_engine
engine = create_engine('mysql+mysqlconnector://username:password.@HOST_IP:PORT/db_name?charset=utf8')
conn = engine.connect()

报错如下:

sqlalchemy.exc.InterfaceError: (mysql.connector.errors.InterfaceError) Failed parsing handshake; end byte not present in buffer

网上搜了一下,说是Bug,错误无法解决,参考这里。如能解决,请留言告知,感激不尽。

于是,尝试安装MySQLdb。参考了这篇文章,执行:conda install mysql-python,结果报错:The following specifications were found to be in conflict

说是MySQLdb不支持Python3.6版本。具体可参考这篇文章,于是又只得放弃。

The mysql-python conda package hasn't been built for python 3 . You can try creating a python 2.7 environment and install mysql-python into that.

再尝试:PyMysql,PyMysql项目的目标是替换MySQLdb

This package contains a pure-Python MySQL client library. The goal of PyMySQL is to be a drop-in replacement for MySQLdb and work on CPython, PyPy and IronPython.

在Anaconda Prompt中执行:conda install -c anaconda pymysql ,参考:这里

安装成功后,在PyCharm中,Ctrl+Alt+S 搜索“python”,打开project 解释器,可看到已成功安装 pymysql

于是可以使用PyMySQL 来测试连接Mysql数据库了。执行如下命令成功。(注意替换成你自己的数据库名)。至此,在PyCharm中基于 Anaconda3的Python3.6 终于可以访问Mysql数据库了。

from sqlalchemy import create_engine
engine=create_engine('mysql+pymysql://username:password.@HOST_IP:PORT/db_name?charset=utf8')
conn = engine.connect()
r = conn.execute('SELECT field1,field2 FROM DB_NMAE limit 1 ')

另外,顺便说一下,对于不同的驱动,连接Mysql的语句是不同的:具体可参考 sqlalchemy 官方文档。

#MySQL-Python
mysql+mysqldb://<user>:<password>@<host>[:<port>]/<dbname>#pymysql
mysql+pymysql://<username>:<password>@<host>/<dbname>[?<options>]#mysqlconnector
mysql+mysqlconnector://<user>:<password>@<host>[:<port>]/<dbname>

另外,还可以在Python Console中使用 %run 直接运行编写好的 .py 文件:如下图所示,在 audit包下,新建了一个my_file.py测试文件

#audit/my_file.py
s = "Hello World"
print(s)

原文:http://www.cnblogs.com/hapjin/p/7800959.html

转载于:https://www.cnblogs.com/hapjin/p/7800959.html

windows10 下使用Pycharm2016 基于Anaconda3 Python3.6 安装Mysql驱动总结相关推荐

  1. Centos 7下TP-LINK tg 3269e/RTL8168网络唤醒与安装网卡驱动中出现的错误

    Centos 7下TP-LINK tg 3269e/RTL8168网络唤醒与安装网卡驱动中出现的错误 参考文章:centos7.8降级网卡驱动r8168 以下内容都是回忆内容,折腾了好几天驱动已装好就 ...

  2. Windows10下QT6(C++)+OpenCV4环境配置及安装

    文章目录 1. 安装Qt 2. 安装Cmake 3. 下载并编译OpenCV4 4. Qt6配置OpenCV 5. 资源 参考博主文章 Windows10下QT6.0(C++)+OpenCV4环境配置 ...

  3. ruby mysql 驱动_windows下Rails安装MySql驱动的配置

    1.安装ruby 这我就不废话了,安装很简单,网上资料也很多. 安装完后再环境变量path里加入D:ruby\bin(视你的安装路径了) 安装完后在命令行输入ruby -v, 会显示版本号,表示安装成 ...

  4. Centos7系统下使用Docker部署SpringBoot项目及安装Mysql

    1.编译项目war包或jar包 在pom.xml中搜索packaging ,修改成war或者jar 右侧maven,先clean,再点package.完成后输出路径会打印在控制台 2.安装及部署doc ...

  5. Windows下Anaconda2(Python2)和Anaconda3(Python3)的共存

    前言 Anaconda是一个Python的科学计算发行版,包含了超过300个流行的用于科学.数学.工程和数据分析的python Packages.由于Python有2和3两个版本,因此Anaconda ...

  6. ubuntu16.04+anaconda3+python3.6安装OpenCV3.1.0

    一.首先要安装anaconda3 1.下载anaconda3 for python3.6,下载地址:anaconda3 下载你需要的版本,这里我是下载的Anaconda3-5.2.0-Linux-x8 ...

  7. Anaconda3 python3.7安装Django稀里糊涂终于successful法

    pip install django 安装Django(我的是3.2版本) 低版本(1.11.22)报错ImportError: cannot import name 'path' from 'dja ...

  8. Windows10下Latex缺少sty文件时的安装方法

    问题描述 使用texstudio写论文,想添加一个附录,需要导入\usepackage{appendix},但是texstudio一直报错: LaTeX Error: File `appendix.s ...

  9. Windows10 下卸载 Microsoft office 2010后 无法安装

    推荐使用一个工具,在360软件管家里面搜"Windows Installer Clean Up"的工具,安装完后,在卸载列表里面选择 Microsoft office 2010 后 ...

最新文章

  1. Spring Boot + MyBatis + Druid + PageHelper 实现多数据源并分页
  2. JQuery实现倒计划按钮
  3. 优化网站性能的35条规则
  4. jsp动作元素include学习
  5. Docker查看应用的实际内存
  6. 浅析 EF Core 5 中的 DbContextFactory
  7. AUTOSAR从入门到精通100讲(四十八)-Lin通信协议栈分析两步走-LinTrcvLIN Driver
  8. ACM中关于计算几何(浮点数)的精度问题
  9. Win10下Tensorflow(GPU版)安装趟坑实录,成功了。
  10. URAL1018 Binary Apple Tree
  11. java第二季_Java入门第二季
  12. 基于slate构建文档编辑器
  13. AutoCAD LT 2020 for Mac在升级了MacOS 11后打不开了怎么处理?那么教程来了哦
  14. Python之猜数字游戏
  15. ImageAI:几行代码跑深度学习
  16. MySQL 从入门到实践,万字详解!
  17. 腾讯恢复微信个人号注册
  18. python中复数的实部和虚部都是浮点数_Python学习笔记:从入门到放弃(2)基本语法...
  19. 解决markdown-it-prism未能正确加载Languages的BUG
  20. Ubuntu安装运行YOLOV3 解决opencv报错 No package ‘opencv‘ found

热门文章

  1. 关于python的垃圾回收机制_Python中的垃圾回收机制
  2. rabbitmq如何清空queue队列数据
  3. Android开发笔记(一百六十九)利用BottomNavigationView实现底部标签栏
  4. 利用VMware Infrastructure SDK编程控制虚拟机集群(2)
  5. gulp安装流程、使用方法及cmd常用命令导览
  6. 05SpringMvc_映射器SimpleUrlHanderMapping
  7. 卸掉包袱,诺基亚将走得更远
  8. Oracle 10g Data Guard
  9. Lucene分词初探---LetterTokenizer
  10. java中怎样将字符串转化为date_java如何将string类型转为date类型?怎样转?