我们的数据库架构允许多个“客户”存在于同一个数据库中,但出于管理原因[修补、备份等],我们将它们拆分为多个数据库。
如果我们将客户合并到一个数据库中,会对性能产生什么影响?
我们目前在每个数据库中有多个客户,但每个数据库中可能有 10 个客户,比如说 5 个数据库;因此,如果我们合并数据库,我们将只有一个拥有 50 个客户的数据库;这会对性能产生很大影响吗?
我们正在尝试通过开发、测试和生产实现数据库部署的自动化。我们使用 SSDT 的方法是比较来自不同环境的 DACPAC 以生成更新脚本,并作为最后一步,将正确的 Windows 登录映射到正确的用户。
查看 SqlPackage.exe的文档,有一个属性IgnoreUserLoginMappings
似乎暗示它会忽略映射,因此它们不包含在 dacpac 中,因此不会在比较和脚本生成期间更新。但是,当我们在提取过程中使用此属性时,生成的用户无需登录,就像 dacpac 中的这样:
<Element Type="SqlUser" Name="[Domain\Account]">
<Property Name="IsWithoutLogin" Value="True" />
<Relationship Name="DefaultSchema">
<Entry>
<Annotation Type="PersistedResolvableAnnotation" Name="[Domain\Account]">
<Property Name="TargetTypeStorage" Value="SqlSchema" />
</Annotation>
</Entry>
</Relationship>
</Element>
Run Code Online (Sandbox Code Playgroud)
这不是我们想要的!随后生成的更新如下所示:
CREATE USER [Domain\Account] WITHOUT LOGIN
WITH DEFAULT_SCHEMA = [Domain\Account];
Run Code Online (Sandbox Code Playgroud)
我们做错了什么还是这是一个错误,我已经搜索过但看不到有关此属性的太多信息,是否有人使用它可以提供帮助,或者是否有其他方法?
相关问题:这里