当外部访问未启用且我无法启用它时,有没有办法使用C#访问MySQL数据库?某种PHP接口或类似的东西可能? 在此先感谢。Mysql外部访问
2
A
回答
1
你可以写在HTTP之上,(或SOAP之上,在HTTP上)自己的协议,但你需要确保你不这样做破坏了安全....
<?php
$shared_secret = 'shhhh_s3cr3t!';
$qry=$_GET['qry'];
$remote_ip=_SERVER["REMOTE_ADDR"];
if (sha1($shared_secret . $qry , $remote_ip)!=$_GET['auth']) {
header("HTTP/1.1 401 Unauthorized");
print "not authorized!";
exit;
} else {
$dbh=mysql_connect($db_host, $db_user, $db_pass);
if ($dbh===false) error_reply();
$r=mysql_query($_GET['qry'], $dbh);
if ($r===false) error_reply();
$result=array();
while ($result[]=mysql_fetch_assoc($r));
print serialize($result);
exit;
}
function error_reply()
{
header("HTTP/1.1 503 Internal Server Error");
print mysql_error();
}
0
对MySQL数据库的访问取决于数据库是否配置为侦听来自远程IP地址的端口,以及网络是否允许该端口上的流量。数据库和防火墙/网络都需要配置。除非这两者都配置为允许外部访问,否则无法使用任何东西远程访问数据库。
如果这些设置和配置正确,那么您应该可以使用客户端库以某种方式远程访问数据库。我不知道C#是否对连接远程数据库有其自己的限制,如果是的话,那么你需要找到另一种可以被C#包装的连接方式。
+0
我认为* OP正在寻找类似于phpMyAdmin的东西,但是作为一组Web服务,它们可以从C#应用程序中使用,这意味着不需要“外部世界”能够*直接*连接到MySql服务器 – Rob 2011-01-31 11:03:00
相关问题
- 1. Mysql无法访问外部
- 2. 访问外部
- 3. Docker容器访问外部MySQL主机
- 4. XML - 外部访问
- 5. 外部访问kubernetes
- 6. 访问外部类
- 7. 访问外部源
- 8. 访问外部JavaScript
- 9. 如何从Vagrant内部访问外部MySQL?
- 10. 无法访问外部onCreateView()
- 11. Android访问外部存储
- 12. 不能访问外部svn
- 13. 外部访问文件架
- 14. 访问外部文件Java
- 15. 访问外部示波器
- 16. 从外部访问OlExchangeStoreType Outlook
- 17. 从外部类访问TextView
- 18. 防止外部访问,mongodb
- 19. 访问外部类属性
- 20. Django网站外部访问
- 21. 从WebUI外部访问Sharepoint
- 22. 访问外部文件
- 23. 访问外部对象
- 24. 访问外部模块
- 25. 从外部访问xampp/htdocs
- 26. 访问外部服务
- 27. 外部json访问javascript
- 28. 访问外部模块
- 29. wp-config.php外部访问
- 30. 从Joomla外部访问$ _SESSION
thx为您的答复,但我决定写我自己的php接口。 – 2011-02-04 19:12:27