簡體   English   中英

ProgrammingError: 1698 (28000): 在 python 中使用 mysql.connector 時,用戶 'root'@'localhost 的訪問被拒絕

[英]ProgrammingError: 1698 (28000): Access denied for user 'root'@'localhost when using mysql.connector in python

在我的 linux mint 20 cinnamon 上,我使用sudo apt install mariadb 當我想在終端中連接到 mysql 時,我只需運行sudo ystemctl start mariadb並使用sudo mysql -u root進行連接,無需密碼,一切正常。 但是當我嘗試在 vscode 中使用這個 python 腳本進行連接時,我得到了標題中提到的錯誤:

import mysql.connector

cnx = mysql.connector.connect(user='root', password='',
                              host='127.0.0.1',
                              database='test')
cnx.close()

我沒有為任何東西設置任何密碼。 為什么現在不給我訪問權限? 相信我,當我說我沒有做過任何錯誤的事情時!我實際上只是安裝了 mariadb 而我所做的唯一一件事就是創建測試數據庫和表 people

  1. https://www.digitalocean.com/community/tutorials/how-to-create-a-new-user-and-grant-permissions-in-mysql

使用此鏈接並創建一個用戶,然后您可以嘗試在此腳本中設置用戶名和密碼,您將能夠連接它。

  1. 對於 root 用戶,您必須通過 ALter 用戶角色設置密碼並在腳本中設置相同的密碼,您將能夠連接 mysql。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM