我正在使用rapache和brew开发一个Web应用程序。在R代码中,我想使用RMySQL包查询MySQL数据库,但我怀疑从R脚本内部访问数据库的登录详细信息的最佳方法。
根据类似问题的一些PHP建议,一个想法是在交互式会话中执行以下操作,将连接详细信息保存到
根据类似问题的一些PHP建议,一个想法是在交互式会话中执行以下操作,将连接详细信息保存到
/var/www
外的文件中:con <- dbConnect(MySQL(), dbname = "mydb", user = "myuser", pass = "mypass")
save(con, file = "/home/myuser/sqlconnect.rda")
然后在由rapache/brew运行的脚本中,加载.rda
文件:
<%
load("/home/myuser/sqlconnect.rda")
query <- "MY QUERY"
result <- dbGetQuery(con, query)
%>
我还没有尝试过这种方法。我甚至不确定我的sqlconnect.rda
文件是否包含所有连接所需的信息。
有没有更安全的方法来设置dbConnect()
语句?
更新
将dbConnect()
输出保存到文件中不起作用,因为连接已超时。然而,从我的用户目录中的.R
文件中source
可以实现连接。
library(RMySQL)
con <- dbConnect(MySQL(), dbname = "mydb", user = "myuser", pass = "mypass")
这种方法确实可行。
然而,我不知道这种方法的安全性如何。