将.NET数据库迁移到共享主机

时间:2012-07-17 23:02:28

标签: asp.net-mvc database asp.net-mvc-3 entity-framework c#-4.0

使用EF代码优先数据库在本地构建应用程序 - 不确定如何将其上传到GoDaddy等共享托管环境。因为在共享主机上你的代码不能只是创建一个数据库,这是有道理的,但另一方面,我找不到任何东西来复制CREATE sql并在服务器上创建它就像你一样MySQL的

感觉有点傻,因为我已经使用.NET超过一年了,但在工作中数据库已经建立,我们可以完全控制我们的环境。

2 个答案:

答案 0 :(得分:1)

如果数据库没有您需要保留的数据,最简单的方法就是在新主机上安装应用程序,并将连接字符串设置为主机上的新数据库。在第一次尝试加载访问数据库的页面时,将自动创建数据库(请注意,您需要加载一个命中数据库的页面 - 有时主页是不够的)。 这种方法比生成SQL然后在生产数据库上执行它要简单得多。

如果您需要保留数据,那么最好的方法是备份并在主机上安装备份。在SSMS中,只需右键单击左窗格中的数据库,然后单击工具>备份...要在服务器上恢复连接到SSMS中的服务器并右键单击左侧面板中的“数据库”节点,然后选择“恢复数据库...”我不确定主机是否提供直接连接SSMS但它们至少应该具有恢复.bak文件的机制。

展望未来,您应该确保可以在数据库上执行SQL,因为部署EF迁移的一种非常方便的方法是在开发服务器上生成SQL更新脚本,然后通过在生产中执行它来进行部署。

答案 1 :(得分:0)

您可以恢复数据库,具体取决于您的网络托管服务商。如果这是一个选项,只需在本地计算机上备份数据库,然后通过管理控制台在服务器上恢复它。

您可以使用SQL Server管理控制台备份本地数据库。这对于较大的数据库也很有效,因为您可以直接恢复所有数据,架构等。

到目前为止,我已经有过三种不同主机的经验,并且所有主机都有这个选项。您通常会在网站的“数据库”选项卡下找到此信息。其余部分取决于你,因为它在不同的主机上通常是不同的。