首页 > 解决方案 > pymysql.err.OperationalError: (1045, "Access denied for user 'admin'@'xx.153.63.4' (using password: YES)")

问题描述

我是 MySQL 新手。我还检查了与这个我无法解决的问题相关的其他问题。

这是我的命令:

C:\Users\username\temp\Excercise\RDSQuery>python handler.py

这是我得到的结果:

Traceback (most recent call last):
  File "handler.py", line 20, in <module>
    connection = pymysql.connect(endpoint, user=username,
  File "C:\Users\username\temp\Excercise\RDSQuery\pymysql\__init__.py", line 94, in Connect
    return Connection(*args, **kwargs)
  File "C:\Users\username\temp\Excercise\RDSQuery\pymysql\connections.py", line 327, in __init__
    self.connect()
  File "C:\Users\username\temp\Excercise\RDSQuery\pymysql\connections.py", line 588, in connect
    self._request_authentication()
  File "C:\Users\username\temp\Excercise\RDSQuery\pymysql\connections.py", line 853, in _request_authentication
    auth_packet = self._read_packet()
  File "C:\Users\username\temp\Excercise\RDSQuery\pymysql\connections.py", line 676, in _read_packet
    packet.raise_for_error()
  File "C:\Users\username\temp\Excercise\RDSQuery\pymysql\protocol.py", line 223, in raise_for_error
    err.raise_mysql_exception(self._data)
  File "C:C:\Users\username\temp\Excercise\RDSQuery\pymysql\err.py", line 107, in raise_mysql_exception
    raise errorclass(errno, errval)
pymysql.err.OperationalError: (1045, "Access denied for user 'admin'@'xx.153.63.4' (using password: YES)")

这是我的python代码:

import pymysql
endpoint = 'myauroradb-instance-1.xxxxxxxxx.eu-central-1.rds.amazonaws.com'
username = 'admin'
password = '123456'
database_name = 'Transactions_Prod'

#Connection
connection = pymysql.connect(endpoint, user=username,
    passwd=password, db=database_name)

def handler():
    cursor = connection.cursor()
    cursor.execute('SELECT * from Transactions')

    rows = cursor.fetchall()

    for row in rows:
        print("{0} {1} {2}".format(row[0], row[1], row[2]))
        
handler()

我在 MySQL Workbrench 中尝试了这个解决方案:

CREATE USER 'admin'@'xx.153.63.4' IDENTIFIED BY '123456';
drop user 'admin'@'xx.153.63.4';
flush privileges;
create user 'admin'@'xx.153.63.4' identified by '123456';
GRANT all privileges on Transactions_Prod.* to 'admin'@'xx.153.63.4' IDENTIFIED BY '123456' WITH GRANT OPTION;
SHOW GRANTS FOR 'admin'@'xx.153.63.4';

但是当我在 cmd 中运行文件时,我仍然遇到同样的错误。

SHOW GRANTS FOR 'admin'@'xx.153.63.4';我看到这个之后:

'GRANT USAGE ON *.* TO \'admin\'@\'xx.153.63.4\' IDENTIFIED BY PASSWORD'

我知道在这个平台上被问了很多,但我自己无法解决,请帮助我..

非常感谢!

标签: mysqlmysql-workbenchmysql-pythonmysql-error-1045amazon-aurora

解决方案


推荐阅读