基本上,我希望能够使用R编程语言进行交互
通过phpMyAdmin提供的MySQL数据库。 现在我正试图
确定我尝试连接到该数据库的错误是否
因为我传递了错误的论据或是否只是某些东西
我处理所有事情的方式从根本上错了。
我得到了以下信息以供使用:
一些值得注意的事情:
换句话说,远程数据库似乎都不是问题。
本身,我安装的MariaDB,
或带有R及其包。 [注意:我当前有权访问的数据库
仅代表完整数据库的一小部分,因此请下载所有内容
在本地不是可行的选择]。
现在,我正在尝试找出我在R中使用的变量
建立连接的函数是错误的(如果是这种情况,
我应该使用替代),或者如果我只是去它都错了-也许
因为关于phpMyAdmin的根本区别是
失踪。 如果事实确实如此,我想知道我需要什么
建立连接(例如,我是否需要
MySQL服务器本身是否可以远程连接?)。
为了让您了解我尝试使用的值,下面是一个示例
我尝试过的R代码:
con <- dbConnect(RMariaDB::MariaDB(),
host = 'tempdb.companyname.com/phpMyAdmin',
dbname = 'companyname',
user = 'dbs_guest',
password = 'guestpassword')
temptable <- tbl(con, "temptable")
特别是,我不确定“ host ”的值是否正确,尤其是
因为登录后我登录的服务器名称为“服务器:通过UNIX套接字的Localhost”。
另外,是否需要将“用户”列为“ dbs_guest @ localhost ”(因为当
登录到phpMyAdmin)或“主机”值所暗示的内容。 最后,
我也可以传递“ port ”参数,但我不知道那会是什么
无论如何。 哦,我不确定这是否取决于我目前是否
在运行这些命令时登录phpMyAdmin(例如使用Chrome)。
重申一下,我只是想找出有关phpMyAdmin的信息
这使得我要尝试做的事情变得不可能(而我需要做的事情)
或者如果我刚把变量值弄错了。
谢谢你的耐心。
真诚的
史蒂夫
@SplashDance我很困惑,您知道phpMyAdmin只是一个Web界面,而不是数据库服务器,对吗?
我不明白为什么R与phpMyAdmin有关系?
抄送@ibennetch
cc @mauriciofauth
我是否误解了您的问题?
对。 我得到了phpMyAdmin一个与数据库服务器而非服务器本身进行交互的接口。 或者,至少,我有些模糊的理解,要与服务器交互,我必须通过phpMyAdmin。
但现在我只有phpMyAdmin的地址,工作,和我的想法(和我,这可能是遥远),我将不得不在效果上连接到通过phpmyadmin所述数据库莫名其妙。
我必须通过phpMyAdmin。
我认为不会,据我所知,我们不提供任何与数据库交互的API或方法。
唯一的方法是人与界面的交互
您是否尝试过将R连接到mysql,如http://stla.github.io/stlapblog/posts/RMySQL.html建议?
但是现在我只有phpMyAdmin地址可以使用
也许数据库服务器与数据库位于同一台机器上,这就是为什么只有主机名“ phpmyadmin” /数据库的原因? 服务器
这是否回答了您@SplashDance的问题?
默认情况下,大多数MySQL安装都会阻止传入的网络连接。 为了直接从外部地址(例如本地计算机上运行的应用程序)进行连接,您必须将MySQL端口公开给互联网。 通常,这是一种不良的安全做法。 很多时候,phpMyAdmin与MySQL实例在同一台服务器上运行,因此它要么连接到本地主机地址(127.0.0.1),要么通过UNIX套接字文件(这就是phpMyAdmin所做的)连接。
在phpMyAdmin本身中,我们故意不包含任何直接将传入的连接反射或重定向到MySQL的方法,因为这几乎像暴露MySQL一样,直接将MySQL端口开放到Internet,这也是一个非常糟糕的主意。 这就是为什么将phpMyAdmin URL本身用作连接字符串不起作用的原因。 您正确的是在这里需要服务器IP地址(或主机名)。
通常,您有三个选项可用于连接到远程MySQL / MariaDB实例:
不幸的是,phpMyAdmin不能帮助您解决这些问题。
首先,我要说的是,我真的很感谢您的所有答复(特别是考虑到我最初提出的问题的业余态度),并且我特别感谢以撒的答复-这特别有思想并且非常有帮助。
如果有的话,最终得到一个确定的答案是一种解脱,这样我就不必再浪费时间尝试不同的函数参数组合了,等等。
再次感谢您的宝贵时间。
真诚的
史蒂夫
最有用的评论
默认情况下,大多数MySQL安装都会阻止传入的网络连接。 为了直接从外部地址(例如本地计算机上运行的应用程序)进行连接,您必须将MySQL端口公开给互联网。 通常,这是一种不良的安全做法。 很多时候,phpMyAdmin与MySQL实例在同一台服务器上运行,因此它要么连接到本地主机地址(127.0.0.1),要么通过UNIX套接字文件(这就是phpMyAdmin所做的)连接。
在phpMyAdmin本身中,我们故意不包含任何直接将传入的连接反射或重定向到MySQL的方法,因为这几乎像暴露MySQL一样,直接将MySQL端口开放到Internet,这也是一个非常糟糕的主意。 这就是为什么将phpMyAdmin URL本身用作连接字符串不起作用的原因。 您正确的是在这里需要服务器IP地址(或主机名)。
通常,您有三个选项可用于连接到远程MySQL / MariaDB实例:
不幸的是,phpMyAdmin不能帮助您解决这些问题。