【问题标题】:Experience with SQLExpress for a multi-user commercial application?使用 SQLExpress 进行多用户商业应用程序的经验?
【发布时间】:2008-09-18 21:08:41
【问题描述】:

我继承了我们多年来开发和销售的 VB6/Access 应用程序。我们将使用 SQL Server 2005 Express Edition 和 .Net。

应用程序可以是多用户的。目前,客户的设置很简单——导航到文件夹以在首次启动时创建数据库;第二个用户浏览到同一个文件。

如果我们使用 SQLExpress,我相信我们的应用程序需要更多的参与才能在服务器上配置 SQLExpress。但我认为我们将获得更好的安全性,并且(无需更改代码)为大客户提供 SQL 版本。

如何从安装和技术支持的角度打造最佳客户体验?你遇到了哪些问题?哪些安装程序有效?

您是否为服务器/客户端设置了单独的安装,或者只是提供了良好的说明?客户在第一次尝试时会犯什么错误?

【问题讨论】:

    标签: .net sql-server installation user-experience


    【解决方案1】:

    Visual Studio 中的部署项目可让您轻松安装 SQL Server Express 实例。

    我们的应用程序具有相同的场景,这意味着您确实需要单独安装客户端和服务器。

    我们的服务器安装处理安装新的 SQL Server 或在必要时升级现有安装的架构。客户端安装只是将客户端所需的文件打包。您必须考虑升级数据库架构并确保客户端具有适用于新架构的更新客户端版本的场景。我们通过以下简单方式实现这一目标:

    在数据库中存储版本 ID,例如1.0.1 更新客户端应用程序的 AssemblyInfo.cs 并确保程序集版本与存储在数据库中的版本匹配。如果没有,它会提示用户安装新版本。

    为了获得最佳用户体验,您希望能够安装新的服务器版本并让所有客户端自动更新。我们有一种方法可以做到这一点,如果需要,我可以为您提供更多详细信息。

    【讨论】:

    • 感谢您的详细信息!客户端如何在第一次安装时“找到”服务器?我听说一家公司要求您将 S: 驱动器映射到服务器上的安装文件夹,然后他们获取了 db 设置。或者您可以导出一个配置文件,然后导入到客户端?
    【解决方案2】:

    我建议使用 SQL Express 路线并将其包含在安装包中。安装程序有大量命令行选项,您可以使用 SQL 脚本对数据库进行任何安装后配置(即启用/禁用 CLR 集成、OpenRowset 和其他功能)。

    此外,它比旧的 MSDE 2000 安装稳定得多;我做噩梦支持这一点。我还发现 100 次中有 99 次设置默认的数据库安装参数会让人开心。

    SQL Express Weblog

    How to install SQL 2008 From the command prompt

    【讨论】:

    • 很好地调用默认参数和链接。 MSDE 是我们坚持使用 Access 这么长时间的原因。我很高兴 SQLExpress 没有那么麻烦。
    【解决方案3】:

    有多少用户和多少数据?

    我不知道对于 SQL Express 2005 有多少用户是“太多”的一般准则,但硬数据限制为 4GB。我的猜测是,您不会因为 Access 传统而达到这一点,但知道这将是一件好事。

    您可以自动安装 SQL Express。我已经看到它完成了,因为我妻子安装的东西做到了,而且她是我怀疑安装它的最后一个人。

    还有SQL Server Compact Edition 我相信它针对.NET 3.5 以及Windows Mobile。我相信它更类似于 Access 中的“单文件数据库”位。

    【讨论】:

    • SQL Server 2005 Express 的最大数据库大小实际上是 4GB。
    • 数据太多,我们会使用 SQL Server Standard。
    【解决方案4】:

    SQL Express 在功能和可靠性方面将比 Access 迈出一大步。它不需要更多配置,只要您知道自己在做什么,只需采用不同的方法即可。

    【讨论】:

    • 那么就让他们安装 SQL Express,并给出在应用程序中输入连接字符串的良好说明?
    【解决方案5】:

    在我的公司,我们经常使用它。在较慢的机器上出现启动时间慢的问题。

    外装体验并不完美 - 有一个实用程序可以恢复应用程序用作数据库模板的数据库。

    【讨论】:

      【解决方案6】:

      由于您仍在考虑使用 SQLExpress,您的团队是否考虑过SQLite?您仍然可以拥有所需的数据库功能,而无需在客户端系统上安装引擎。

      【讨论】:

        【解决方案7】:

        SQL Server 2005 Express Edition 可以使用任何合适的安装程序轻松安装。几个小时的工作就足够了!如果您已下定决心,请不要让对安装的恐惧阻碍您。

        【讨论】:

        • 我需要几个小时?或者我的客户需要几个小时来安装它?
        【解决方案8】:

        另一种选择:我相信您也可以在“文件模式”中使用 SQL Server Express,您只需指向 MDF 文件,而不必运行 SQL Server 实例。这与听起来您当前的应用程序使用 Access 的方式非常相似。我不确定这在多用户情况下如何工作,但可能需要调查。

        【讨论】:

        • 我们喜欢单用户的“文件模式”(我认为他们称之为“处理中”)。但是对于多用户,您必须在共享文件所在的服务器(或至少在其中一个工作站)上安装 SQLExpress。
        • 正式名称为“用户实例”。见msdn.microsoft.com/en-us/library/bb264564(SQL.90).aspx
        猜你喜欢
        • 2011-05-04
        • 1970-01-01
        • 1970-01-01
        • 2010-12-08
        • 2013-06-01
        • 1970-01-01
        • 2010-10-28
        • 2011-05-23
        • 1970-01-01
        相关资源
        最近更新 更多