我正在尝试将数据库从sql服务器版本12.0.5203切换到14.0.1000,但是我看到了问题。虽然无法导入备份,但是也无法将项目发布到空白数据库。当我运行数据库发布时,我很快得到一个错误提示:
“无法连接到主服务器或目标服务器[数据库名称]。您 主服务器或目标服务器中的用户必须具有相同的密码 [数据库名称]。”
在同一项目中,我已经向旧版本的数据库发布了100多次。
因此,不考虑发布问题。我尝试导出数据层应用程序,并使用较新版本的sql server进行导入,每次执行此操作时,都会在导入时遇到以下错误。
无法导入包。警告SQL72012:对象 [itss_tutor_3_Data]存在于目标中,但不会被删除 即使您选择了“为对象生成放置语句” 在目标数据库中但不在源检查中 框。警告SQL72012:对象[itss_tutor_3_Log]存在于 目标,但即使您选择了 '为目标数据库中的对象生成放置语句 但不在“源”复选框中。错误SQL72014:.Net SqlClient数据提供程序:消息15404,级别16,状态19,第1行可能 无法获取有关Windows NT组/用户的信息 'PSLLC \ dbodenschatz',错误代码0x54b。错误SQL72045:脚本 执行错误。执行的脚本:CREATE ASSEMBLY [GroupConcat] 授权[dbo] 从0x4D5A90000300000004000000FFFF0000B800000000000000400000000000000000000000000000000000000000000000000000000000000000000000800000000E1FBA0E00B409CD21B8014CCD21546869732070726F6772616D2063616E6E6F742062652072756E20696E20444F53206D6F64652E0D0D0A2400000000000000504500004C01030058898C510000000000000000E00002210B010B00001E000000080000000000007E3D0000002000000040000000000010002000000002000004000000000000000400000000000000008000000002000000000000030040850000100000100000000010000010000000000000100000000000000000000000243D000057000000004000003804000000000000000000000000000000000000006000000C00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000080000000000000000000000082000004800000000000000000000002E74657874000000841D000000200000001E000000020000000000000000000000000000200000602E7273726300000038040000004000000006000000200000000000000000000000000000400000402E72656C6F6300000C000000006000000002000000260 (Microsoft.SqlServer.Dac)
所以基本上我不能导入现有数据库,也不能发布到空数据库。但是我可以将它发布到较旧的版本。
更新: 我安装了新版本的Sql Server数据工具并重新启动。现在发布并不会立即失败,而是出现了此错误:
创建[GroupConcat] ...(65,1):SQL72014:.Net SqlClient数据 提供商:消息10343,第14级,状态1,第1行,创建或更改 具有SAFE或EXTERNAL_ACCESS的装配'GroupConcat'的装配 选项失败,因为sp_configure的“ clr严格安全性”选项 设置为1。Microsoft建议您使用 具有相应登录名的证书或非对称密钥 UNSAFE ASSEMBLY许可。或者,您可以信任程序集 使用sp_add_trusted_assembly。 (65,0):SQL72045:脚本执行 错误。执行的脚本:CREATE ASSEMBLY [GroupConcat] 授权[dbo] 从0x4D5A90000300000004000000FFFF0000B800000000000000400000000000000000000000000000000000000000000000000000000000000000000000800000000E1FBA0E00B409CD21B8014CCD21546869732070726F6772616D2063616E6E6F742062652072756E20696E20444F53206D6F64652E0D0D0A2400000000000000504500004C01030058898C510000000000000000E00002210B010B00001E000000080000000000007E3D0000002000000040000000000010002000000002000004000000000000000400000000000000008000000002000000000000030040850000100000100000000010000010000000000000100000000000000000000000243D000057000000004000003804000000000000000000000000000000000000006000000C00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000080000000000000000000000082000004800000000000000000000002E74657874000000841D000000200000001E000000020000000000000000000000000000200000602E7273726300000038040000004000000006000000200000000000000000000000000000400000402E72656C6F6300000C000000006000000002000000260 执行批处理时发生错误。
答案 0 :(得分:0)
数据工具的安装以及下面的链接似乎都可以进行发布和导入:
https://www.sqlshack.com/impact-clr-strict-security-configuration-setting-sql-server-2017/