qq_40594061
qq_40594061
采纳率66.7%
2018-05-11 13:49 阅读 945

Python mysql 连接的问题

5

我是在 Python3 的环境下,使用 pycharm IDE,

代码如下:
import pymysql

conn = pymysql.connect('localhost', 'wubin', 'wude@990102', 'mysql')

密码,用户名都是对的,直接在mysql 的图形化界面中是可以登录的
但是一用python,
就会出现如下的错误:
图片说明

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

10条回答 默认 最新

  • 已采纳
    tenson888 tenson888 2018-05-12 13:54

    这个是权限的问题,可以修改mysql的user表里面,把host字段改成%试试。

    点赞 评论 复制链接分享
  • weixin_38963816 凯风与海 2018-05-11 13:53

    试试这个,是不是没有授权
    $mysql>GRANT ALL PRIVILEGES ON . TO 'root'@'192.168.0.104' IDENTIFIED BY 'root' WITH GRANT OPTION

    点赞 评论 复制链接分享
  • songqiang892246139 宋时强 2018-05-11 13:53

    提示很清楚了啊,没有使用密码
    pymysql.connect(host='127.0.0.1', port=3306, user='root', passwd='', db='tkq1', charset='utf8')
    建议这样试试

    点赞 评论 复制链接分享
  • liliang0849 liliang0849 2018-05-11 14:29

    MySQLdb是用于Python链接Mysql数据库的接口,它实现了Python 数据库API规范V2.0,基于MySQL C API上建立的。

    安装
    直接使用pip进行安装,在此之前需要安装一些系统依赖包。

    CentOS
    yum install gcc python-devel mysql-devel zlib-devel openssl-devel
    Ubuntu
    sudo apt-get install libmysqlclient-dev libmysqld-dev python-dev python-setuptools

    点赞 评论 复制链接分享
  • JimbG92ZW 堇花开了吗 2018-05-11 14:47

    最好不要('localhost', 'wubin', 'wude@990102', 'mysql')这样子打吧,加上host=, port=, passwd=最好,你试一下

    点赞 评论 复制链接分享
  • zhoubenwen82 zhoubenwen82 2018-05-12 01:15

    mysql 中没有为这个用户附权限 wubin

    点赞 评论 复制链接分享
  • sinat_38230425 Garb_v2 2018-05-12 01:39

    授权问题,查看哈辅权命令

    点赞 评论 复制链接分享
  • ochars chars 2018-05-12 03:43

    检查一下数据库中这个账号的host设置是localhost还是127.0.0.1

    点赞 评论 复制链接分享
  • perfectionhello perfectionhello 2018-05-12 15:21

    可以先看看user报的Host是不是'%',第二个可以看看授权的时候是不是'%'

    点赞 评论 复制链接分享
  • qq_40594061 qq_40594061 2018-05-15 11:57

    以上各位,这个问题我刚刚已经解决了,并不是授权的问题,也不会密码的问题,而是因为 mysql 8.0 的安全模式默认是不允许Python连接的,所以解决的方法是在安装的时候的一个anthourity之类的显示受权的界面里面改选另外一个选项(就是mysql 5.7 默认的那个),还是很感谢各位大神帮忙,也很感谢那些写出了技术贴的大神

    点赞 评论 复制链接分享

相关推荐