使用 Vault for MySQL - 使用者「root」@「localhost」的存取被拒絕

使用 Vault for MySQL - 使用者「root」@「localhost」的存取被拒絕

我一直在遵循 Vault 教學和文件來使用 MySQL 設定它,但我遇到了重大障礙。

文件:https://www.vaultproject.io/docs/secrets/databases/mysql-maria.html

我使用 mysql_secure_installation 在 CentOS 7 上安裝並設定了 MySQL(嘗試了 8 和 5.6),但沒有停用遠端登入。即使我的 Vault 伺服器和 MySQL 在同一台伺服器上運行。

當我透過以下方式登入時:mysql -u root -p它讓我登入得很好。但是當我運行這個命令時:

     plugin_name=mysql-database-plugin \
     connection_url="{{username}}:{{password}}@tcp(127.0.0.1:3306)/" \
     allowed_roles="mysqlrole" \
     username="root" \
     password="password-here"

它失敗:


URL: PUT http://127.0.0.1:8200/v1/database/config/my-mysql-database
Code: 400. Errors:

* error creating database object: error verifying connection: Error 1045: Access denied for user 'root'@'localhost' (using password: YES)

我嘗試過類似的事情: GRANT all privileges on *.* to 'root'@'%' identified by 'your-password'

我嘗試過使用mysql -u root -p -P 3306 -h 127.0.0.1(有效)測試記錄

我嘗試過遠端登入並且有效。我嘗試過創建一個非 root 用戶,以防有東西保護 root 並且這也不起作用。除了 Vault 命令之外,一切正常,但我找不到任何可能導致此問題的 Vault 進一步配置的參考。

我是否缺少 Vault 方面的某些內容?

答案1

就我而言,這是 MySql 設定。

我所做的是在 my.cnf 中註解掉“skip_name_resolve”

重新啟動 MySql 就可以了!

相關內容