2009-04-13 43 views
0

我制作了一个ASP.NET 2.0网站,它使用了两个数据库,分别是aspnetdb和my_db.I运行了aspnet_regsql.exe -E -S localhost -A mr工具,并且获得了aspnetdb .mdf在我的项目中。我用它来为我的网站提供登录功能。现在我想将该网站发布到我已购买的远程托管服务器。他们向我提供了我必须连接的服务器的详细信息,并且我成功地做到了这一点。现在的情况是这样的: -将SQL 2005数据库发布到远程主机

1)我的网站支持单个MS SQL Server数据库,我使用两个数据库。我怎样才能将这两个数据库合并为一个,并且在访问相应的数据库时更新所有发生更改的页面,然后将其发布。

2)我想将aspnetdb重命名为其他名称,因为当我将名为aspnetdb的数据库发布到服务器时出现错误(它表示数据库已存在,但我无法找到它)。那么我怎样才能有效地重命名它。

3)如何正确地将合并数据库发布到远程位置,我是否也需要考虑连接字符串?到目前为止,因为我是本地用户,所以我没有提供任何用户名和密码,但是在该网站上我会为SQL服务器创建一个用户。那么我怎样才能将它安全地整合到我的项目中。

希望我已经正确解释了我的问题,等待一些解决方案。

感谢

回答

1

人,最好的工具,它改变了我的生活,这是展鹏数据比较。 它会检查两个数据库并同步它们中的任何内容,另外它还会为您提供SQL脚本。

希望这有助于。

2

在这里有几个问题,所以我会分解他们。

1)我怎么能这两个数据库合并到一个

Devmania提及红门数据比较,所以我会提到Quest Toad for SQL Server,这也做同样的事情。免责声明 - 但我为Quest工作。您可以下载v4.5测试版,该版本现在免费,它具有数据&架构比较功能。

并且还更新访问相应数据库时发生更改的所有页面,然后发布它。

不幸的是,没有人的工具会改变你的代码。

2)我想将aspnetdb重命名为其他名称,因为我在将数据库名称为aspnetdb发布到服务器时发生错误(它表示数据库已存在,但我无法使用找到它)。那么我怎样才能有效地重命名它。

进入SQL Server Management Studio,连接到数据库服务器,右键单击数据库名称,然后单击重命名。

3)如何正确地将合并的数据库发布到远程位置,我是否也必须考虑连接字符串?

请与您的托管服务提供商联系,因为不是所有人都可以远程访问SSMS。如果他们这样做,那么你需要脚本化你的数据库,然后将其应用到远程数据库。 Toad包括脚本化数据库中的模式和数据的能力。

到目前为止,由于我是本地用户,我没有提供任何用户名和密码,但在网站上我想为SQL服务器创建一个用户。那么我怎样才能将它安全地整合到我的项目中。

在SQL Server Management Studio中,进入数据库Security,Logins。您可以右键单击那里,创建一个新的登录名并使用SQL身份验证。指定用户名和密码,您可以为登录提供您想要的权限。我将为您的Web应用程序使用一个单独的应用程序,该应用程序只有db_datareader和db_datawriter,而不是db_owner。所有者有能力更改架构,并且您的应用程序不应该这样做。万一你被黑客窃取并且有人窃取了用户名/密码,至少他们不会改变你的模式。

相关问题