• python连接数据库出现pymysql pymysql.err.OperationalError 1045 Access denied错误的解决办法


    工具:python3.6+mysql8.0+pymysql

    注意:python2.7以后的版本不再支持 MySQLdb这个模块。需要用pymysql,在命令行下安装的方法 输入pip install pymysql。

    import pymysql

    conn = pymysql.Connect(
    host='127.0.0.1',
    port=3306,
    user='root',
    passwd='root',
    db='imooc',
    charset='utf8'
    )

    cursor = conn.cursor()
    sql = 'select * from students'
    # print(cursor)
    cursor.execute(sql)
    print(cursor.fetchall())

    cursor.close()
    conn.close()

    执行这段代码出错 : pymysql.err.OperationalError: (1045, u"Access denied for user 'root'@'localhost' (using password: No)")

    新版mysql使用的caching_sha2_password认证方式,换成mysql_native_password就可以。

    步骤是在cmd命令行连接mysql, 

    然后输入ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';

  • 相关阅读:
    Win10 蓝屏
    XE Button Color
    IOS 屏幕尺寸
    Delphi 转圈 原型进度条 AniIndicator 及线程配合使用
    Delphi 询问框 汉化
    Delphi Android 询问框
    Delphi BLE 控件
    浮点高低位赋值
    delphi 蓝牙 TBluetoothLE
    16进制字节转换
  • 原文地址:https://www.cnblogs.com/Abelte/p/9138121.html
Copyright © 2020-2023  润新知