mysql数据库和MySQLdb环境配置

Posted on Sep 07, 2018 By Keyu Zhao

安装Mysql

Windows环境下安装数据库,
网址:https://dev.mysql.com/downloads/installer/
选取MSI Installer

image.png

这个安装包文件傻瓜式,主要在安装过程中记住自己设置的权限密码就行了.

安装完毕后,配置环境变量.

在win10系统下,步骤如下
1.找到此电脑,右键属性
2.点击高级系统设置
3.点击环境变量
4.在系统的path下编辑,新添mysql serve主目录下的bin文件夹地址即可

最后打开cmd命令,输入 mysql -u root -p
mysql启动成功

为python增加MySQLdb模块

打开python,输入

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

说明还没有安装 官网下载安装包,
网址:https://pypi.org/project/MySQL-python/1.2.5/

选择合适的版本,不然安装包识别不到python,直接安装即可.

安装完毕后,打开python,输入

>>>import MySQLdb
>>>

这时没有报错,模块安装成功

python操作mysql

事先记得打开mysql serve,
编辑testdb.py文件

# -*- coding:utf-8 -*-
import MySQLdb

if __name__ == "__main__":
    test= MySQLdb.connect("localhost","root","root","mysql" )
    cur = test.cursor()
    cur.execute('show tables;')
    for data in cur.fetchall():
        print data
python testdb.py 

报错: [ERROR]1251--Client does not support authentication protocol requested by server

查找原因:

mysql服务器要求的认证插件版本与客户端不一致造成的。
打开mysql命令行输入如下命令查看,系统用户对应的认证插件:
可以看到root用户使用的plugin是caching_sha2_password,mysql官方网站有如下说明:
意思是说caching_sha2_password是8.0默认的认证插件,必须使用支持此插件的客户端版本。

解决办法:

用管理员身份打开cmd mysql -uroot -p(输入密码) 进入mysql执行下面三个命令
use mysql;
ALTER USER ‘root’@’localhost’ IDENTIFIED WITH mysql_native_password BY ‘你的密码’;
FLUSH PRIVILEGES;

解决后,再次执行testdb.py文件
image.png

环境配置成功,已经可以用python来操作mysql数据库

你可能感兴趣的:(mysql数据库和MySQLdb环境配置)