我的老板希望我创建一个带有可通过 Internet 访问的数据库的桌面应用程序。该数据库用于存储从 TCP 服务器获取的信息,但这不是我的问题。
到目前为止,根据我的研究,我发现共享网络托管、VPS、专用托管和 Amazon RDS 都是可能的选择。我唯一感兴趣的是给定包中包含的 MySQL 服务器。
我认为对于一个简单的应用程序来说,常规的共享网络托管就足够了,仅仅因为数据库由 10 个表组成,并且记录不可能超过一千条记录。
但我的问题是,是否可以将 C#
应用程序从 Web 服务器直接连接到 MySQL 实例?如果确实如此,它安全吗?它将存储信用卡号码和成员(member)信息等重要信息,并且需要始终保持运行状态。
最佳答案
只要您的防火墙不阻止数据库服务器上的端口 3306,您就可以轻松地从任何计算机连接到 MySQL 数据库。但是,我强烈建议您不要这样做,因为您会失去对客户的控制。
- 每个客户端都需要将数据库连接存储在某处(或从某种服务器获取)
- 您需要能够更新所有客户端上的 MySql 连接器
- 您对数据访问的控制很少。
相反,我会介绍客户端将使用的某种数据访问层。例如,您可以使用 WCF Data Services或者使用 WCF 构建您自己的非常简单的数据层(让客户端发送 SQL 查询并返回正确的结果) .
这两个选项都允许您使用背后的任何技术(您甚至可以在客户端不注意的情况下切换数据库服务器)。
关于c# - 从网络服务器使用 MySQL 的 Windows 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8788094/