php - 我想测试与本地托管的 MySQL 数据库的连接 - 远程
问题描述
我有一个使用 WAMP 在本地托管的 mySQL 数据库,我完成了远程访问它的所有过程,并且似乎已经成功地将 IP 地址放入我的手机中,查看 WAMP 并访问 phpmyAdmin 等。
我的问题是我想使用我网站上的以下脚本测试数据库连接(最终我想使用 WP 插件从数据库中获取信息然后关闭它)。
但是我不完全确定参数是什么。
Apache 服务器在端口 80 上,mysql 在端口 3306 上。我在这些端口上设置了端口转发并使用http://www.canyouseeme.org/对其进行了测试
因此,我的主机将是 myIP(使用什么是 myIP):80 或 3306。
我都试过了,但都失败了。我的用户名是 root 还是 Root@Host
就像我说的最终我想测试这个,连接到数据库,然后使用 WordPress 插件中的参数将数据从本地托管的数据库复制到我的站点数据库。
请指教。
谢谢你。
<?php
# Fill our vars and run on cli
# $ php -f db-connect-test.php
$dbname = 'name';
$dbuser = 'user';
$dbpass = 'pass';
$dbhost = 'host';
$connect = mysql_connect($dbhost, $dbuser, $dbpass) or die("Unable to Connect to '$dbhost'");
mysql_select_db($dbname) or die("Could not open the db '$dbname'");
$test_query = "SHOW TABLES FROM $dbname";
$result = mysql_query($test_query);
$tblCnt = 0;
while($tbl = mysql_fetch_array($result)) {
$tblCnt++;
#echo $tbl[0]."<br />\n";
}
if (!$tblCnt) {
echo "There are no tables<br />\n";
} else {
echo "There are $tblCnt tables<br />\n";
}
解决方案
确保您的路由器允许端口转发。如果(IP 地址)xxx.xxx.xxx.xxx:80 没有显示任何内容,则端口未正确转发。以下是您可以进行的一些检查,以了解问题出在哪里:
看看它是否在 127.0.0.1 的本地机器上工作(很可能它会在你的情况下工作)。
检查网络上的其他设备,例如使用智能手机访问您机器的本地 IP 地址,看看是否有效。
如果上述两种方法都有效,那么您需要确保您的路由器端口转发正确的 IP 地址和端口。
推荐阅读
- spring - hibernate.globally_quoted_identifiers=true 打破与 H2 内存数据库的集成测试。找不到表
- angular - 在Angular中绑定图标时字体真棒不起作用
- android - 如何使用 pendingIntent Kotlin 从 Activity 传递到 BroadcastReceiver()
- python - Discord 嵌入标题和描述不起作用
- android - 如何在另一个应用程序上显示自定义对话
- vue.js - Vue组合api - 组件在开始使用reactive()时不呈现
- c# - 为什么 CMake 不能成功设置 COMMON_LANGUAGE_RUNTIME
- ios - ios 14,webp 动画在 safari 和 chrome 中以白色背景闪烁
- java - Dropwizard DropwizardAppRule 测试分段文件上传
- mysql - 在 SQL 表中查找重复值并在列中添加唯一值