mysql - R 使用 RMariaDB 无法连接 .mylogin.cnf
问题描述
我正在 RStudio 中开发一个脚本,它使用 R 包 RMariaDB 连接到本地 MySQL 服务器(不是 RMySQL - 出于其他原因,尽管结果是相同的)。
我可以通过将密码存储在脚本中来进行连接,例如:
localuserpassword <- "password"
all_projectsDb <- dbConnect(RMariaDB::MariaDB(), user='user', password=localuserpassword, dbname='projects', host='localhost')
或通过 .my.cnf 使用凭据:
[client]
[mygroup]
host=127.0.0.1
user=user
password=password
port=3306
database=projects
和R代码为
settingsfile = '/Users/oscar_w/.my.cnf'
all_projectsDb <- dbConnect(RMariaDB::MariaDB(), default.file = settingsfile, group="mygroup", dbname = 'projects')
上面的工作很好,但是如果我想连接在 mysql_config_editor 中创建的 .mylogin.cnf 并且看起来像
[client]
[mygroup]
user = user
password = *****
host = 127.0.0.1
port = 3306
使用 R 脚本代码,例如
# define location of config file
settingsfile = '/Users/oscar_w/.mylogin.cnf'
all_projectsDb <- dbConnect(RMariaDB::MariaDB(), default.file = settingsfile, group="mygroup", dbname = 'projects', password = NULL, user = NULL)
我得到错误
Error: Failed to connect: Access denied for user 'root'@'localhost' (using password: NO)
我尝试了各种表达 null 或其他参数的参数组合。并使用带有双引号的 mysql_config_editor 输入了我的密码。在https://cran.r-project.org/web/packages/RMariaDB/RMariaDB.pdf它指定使用 .mylogin.cnf 但我找不到让它工作的方法。有谁知道这个问题的解决方案或有同样的问题?谢谢
解决方案
推荐阅读
- reactjs - 如何在 AWS API(graphQL) 中创建连接
- reporting-services - SSRS 如何按外部组行摘要划分行结果
- java - 处理 EntityNotFoundException
- pdf - Ghostscript - 从 pdf 创建 png 时指定输出大小
- vue.js - 如何在 nextcloud/vue 中获取文件路径
- vaadin - 如何防止 Vaadin Flow 中的选项卡选择更改
- javascript - 无法在函数外访问从 axios 返回的数据
- javascript - 将 HTML 表单的克隆附加到文档正文尊重 ID
- php - 如何在 jetwoobuilder woocommerce 中添加查询“自定义分类”
- qt - 如何测试一个值是否对 QFlags 有效