如何使用C#连接远程数据库

时间:2015-02-19 23:16:13

标签: c# mysql database

我想用C#创建一个桌面应用程序,并用PHP创建一个网站。两者都将使用相同的DB。您将从网站创建一个帐户并从应用程序登录。用app记笔记,发送到db等等。

但我的(很多明星)托管公司不允许我使用远程mysql。他们说“从cPanel添加IP地址”。给我所有的世界IP地址,以便我可以添加。 MEH ..

所以在这种情况下,我可以用mysql替换什么?简介:我需要创建一个C#应用程序和一个网站。两者都将使用远程数据库。我该怎么办?

3 个答案:

答案 0 :(得分:0)

托管公司真的不喜欢从整个互联网访问他们的MySQL服务器。您与其他客户共享该服务器,如果他们能够访问它,网络犯罪分子很容易破解或对MySQL进行拒绝服务攻击。被认为是有害的。

某些托管公司(包括您的托管公司)会例外,因此您可以将一个或几个特定的​​IP地址列入白名单,以便通过网络远程连接到MySQL。显然这个解决方案不适合你。

但是,允许从整个互联网访问他们将是疯了。如果您拥有MySQL服务器(或Oracle,postgreSQL,MS SQL Server或DB2服务器),您也将疯狂地允许从整个互联网访问。

通过公共互联网访问远程数据库的桌面应用程序非常罕见,正是出于安全原因。这种应用程序开发方法更常用于企业防火墙内部。

如果您必须部署桌面应用程序,您的未来似乎正在开发Web服务。好消息是有很多好的和安全的方法可以做到这一点。

Dotnet为其WCF(Windows Communication Foundation)子系统中的Web服务开发提供了一个很好的,如果复杂的基础架构。 Web服务基本上是一个网站,旨在由程序而不是人类通过浏览器访问。 Web服务体系结构的两个通用术语是REST和SOAP。

使用网络资源的桌面程序(如在线游戏)通常设置为一个或多个Web服务的客户端。

答案 1 :(得分:0)

你可以做到。你需要允许远程mysql连接,我需要关于hostgator。但我的建议不直接与数据库连接。它更好地制作一个宁静的应用程序&在服务器之间交换数据。

答案 2 :(得分:0)

您可以通过以下方式进行操作 1.首先登录hostgator cpanel,然后启用远程连接添加%符号 2.现在可以轻松连接数据库如下所示使用pocoorm

<?xml version=”1.0″?>
<configuration>
<connectionStrings>
<add name=”mysql” connectionString=”server=**yourdomain.com;database=test;user id=database_url;password=databse_password;**” providerName=”MySql.Data.MySqlClient”/>
</connectionStrings>

<startup>
<supportedRuntime version=”v4.0″ sku=”.NETFramework,Version=v4.0″/>
</startup>
</configuration>

但是你知道C#是易碎的,我的意思是你的代码可以随时解码。因此,最好将数据库与restful api连接。