我知道与此有关的问题已经在Stackoverflow和其他地方被问了无数次,但是,我似乎无法将分辨率归零。
我正在使用运行OS 10.13.6 High Sierra的几乎全新的Macbook 13。
我的目标是使用MAMP创建一个开发环境,这样我就可以创建动态网页,并且希望使用Tableau进行分析以从MySQL提取数据。
我已经成功安装并运行了MAMP-我已经使用phpMyAdmin创建了一个简单的数据库-并且我已成功将Tableau连接到该数据库-效果很好。
有了这个功能,我将注意力转移到尝试从浏览器运行php上。输入“ localhost”产生了“有效!”结果。
到目前为止一切都很好,但是这里事情出轨了:我无法使用以下命令(****** =我的根密码)通过php文件连接到MySQL-文件名:test_connect0.php:>
<?php
$link = mysqli_connect("localhost", "root", "*****");
if (!$link) {
echo "Error: Unable to connect to MySQL." . PHP_EOL ."<br>";
echo "Debugging errno: " . mysqli_connect_errno() . PHP_EOL ."<br>";
echo "Debugging error: " . mysqli_connect_error() . PHP_EOL ."<br>";
exit;
}
echo "Success: A proper connection to MySQL was made! The my_db database is great." . PHP_EOL;
echo "Host information: " . mysqli_get_host_info($link) . PHP_EOL;
mysqli_close($link);
?>
运行Safari或Chrome所返回的结果-没关系-是一个熟悉的问题:2002没有这样的文件或目录。
相信我,我已经在整个互联网上搜索了解决方案,我相信我尝试了每个人都无济于事。
这是我做过的几件事:
观察:在上面的第3项中,我注意到MAMP的phpInfo返回7.2.1作为版本。但是,当我从浏览器运行phpinfo()脚本时,它将返回7.1.16。我无法解释为什么这是一个不同的php版本,而且我什至无法在我的机器上找到7.1.16版本,而且我不确定这是否真的很重要。
总而言之,我有一个功能正常的MAMP和一个与MAMP的MySQL正常的Tableau连接。我不能做的是从浏览器中运行的php文件连接到MySQL-我收到2002错误。
我还可以提供什么其他信息来帮助解决方案?
答案 0 :(得分:0)
我找到了解决方法:
PHP脚本修复: 最初,我在/ Library / WebServer / Documents中有我的test_connect0.php脚本。事实证明,它必须位于/ Applications / MAMP / htdocs中。将文件移动到该位置后,我将以下URL输入浏览器:localhost:8888 / test_connect0.php
这导致成功连接到MAMP的MySQL。
Tableau注释: 如前所述,我能够将Tableau连接到MySQL,但是,它没有连接到MAMP的MySQL。为了转移Tableau以查看MAMP的MySQL,我在Tableau的对话框中输入了以下内容:
服务器:本地主机 港口:8888 用户名:root 密码:******
提前两件事是必需的: