AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / dba / 问题 / 205010
Accepted
Henrik Staun Poulsen
Henrik Staun Poulsen
Asked: 2018-04-26 23:31:50 +0800 CST2018-04-26 23:31:50 +0800 CST 2018-04-26 23:31:50 +0800 CST

安装 SQL Server 2016 sp2 期间失败

  • 772

我正在尝试为 SQL Server 2016 安装新的 SP2,但它在安装过程中失败并出现引擎错误。这是我可以在错误日志中看到的>

错误:468,严重性:16,状态:9。
无法解决等于操作中“Latin1_General_CI_AS”和“SQL_Latin1_General_CP1_CI_AS”之间的排序规则冲突。
失败的一批 t-sql 语句:
CREATE PROCEDURE sp_sqlagent_get_perf_counters @all_counters BIT = 0 AS BEGIN ...

错误:912,严重性:21,状态:2。

数据库“master”的脚本级别升级失败,因为升级步骤“msdb110_upgrade.sql”遇到错误 200,状态 7,严重性 25。这是一个严重的错误情况,可能会干扰常规操作,数据库将脱机。如果在升级“主”数据库期间发生错误,它将阻止整个 SQL Server 实例启动。检查以前的错误日志条目是否有错误,采取适当的纠正措施并重新启动数据库,以便脚本升级步骤运行完成。

错误:3417,严重性:21,状态:3。

无法恢复主数据库。SQL Server 无法运行。从完整备份中恢复 master、修复它或重建它。有关如何重建 master 数据库的详细信息,请参阅 SQL Server 联机丛书。

SQL Server 关闭已启动

主数据库运行“Latin1_General_CI_AS”,MSDB(和其他数据库)运行“SQL_Latin1_General_CP1_CI_AS”。

我有服务器上所有数据库的新备份,包括 master 和 msdb。

我很想尝试恢复主 master,如https://learn.microsoft.com/en-us/sql/relational-databases/backup-restore/restore-the-master-database-transact-sql 中所示?视图=sql-server-2017

但我正在努力确保它能够真正发挥作用,而不仅仅是让情况变得更糟。

如何让我的 SQL Server 备份并运行?

编辑:我已经像这样启动了 mssqlserver 服务:

NET START MSSQLSERVER /T902

这使服务器启动,我查看了 msdb110_upgrade.sql,发现我添加了很多缺少的“COLLATE DATABASE_DEFAULT”。

但它没有接受我的改变。

sql-server sql-server-2016
  • 2 2 个回答
  • 5845 Views

2 个回答

  • Voted
  1. Best Answer
    gbn
    2018-04-26T23:45:12+08:002018-04-26T23:45:12+08:00

    我在旧版本的其他版本的 SQL Server 上看到了这个错误。

    在我的情况下,它是由角色的所有者引起的,或者模式不是默认值:像 db_datareader 这样的东西是由用户帐户授权的(他们不再拥有系统管理员)

    如何恢复?

    • 无法还原 master,因为 master 数据库版本低于二进制文件版本
    • 创建一个具有正确版本的新安装以使其运行,然后将 master 恢复到该版本,然后将 master mdf 复制回原始安装。

    不幸的是,我现在不记得确切的细节了。
    这是我使用 SQL Server 20 年来唯一一次...

    • 看到服务包安装失败,导致 SQL Server 停止运行
    • 必须在恢复 master 时处理版本不匹配
    • 4
  2. Henrik Staun Poulsen
    2018-04-30T23:11:12+08:002018-04-30T23:11:12+08:00

    这回答了我的问题:

    SELECT MAX(Name) AS DBName, COUNT(*) AS DatabasesWithSameCollation 
    FROM sys.databases 
    WHERE name IN ('master', 'msdb') 
    GROUP BY collation_name 
    IF @@ROWCOUNT > 1 BEGIN
      SELECT 'You may have problems when you install SP2, because Master and MSDB do not have the same collation. Did you restore the correct MSDB?'
    END 
    ELSE SELECT 'Install can proceed'
    

    有人从具有不同排序规则的另一台服务器恢复了 MSDB。

    我完全重新安装了 SQL Server。
    现在我知道整个 SQL Server 都在版本控制之下。:-)

    • 0

相关问题

  • SQL Server - 使用聚集索引时如何存储数据页

  • 我需要为每种类型的查询使用单独的索引,还是一个多列索引可以工作?

  • 什么时候应该使用唯一约束而不是唯一索引?

  • 死锁的主要原因是什么,可以预防吗?

  • 如何确定是否需要或需要索引

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    连接到 PostgreSQL 服务器:致命:主机没有 pg_hba.conf 条目

    • 12 个回答
  • Marko Smith

    如何让sqlplus的输出出现在一行中?

    • 3 个回答
  • Marko Smith

    选择具有最大日期或最晚日期的日期

    • 3 个回答
  • Marko Smith

    如何列出 PostgreSQL 中的所有模式?

    • 4 个回答
  • Marko Smith

    列出指定表的所有列

    • 5 个回答
  • Marko Smith

    如何在不修改我自己的 tnsnames.ora 的情况下使用 sqlplus 连接到位于另一台主机上的 Oracle 数据库

    • 4 个回答
  • Marko Smith

    你如何mysqldump特定的表?

    • 4 个回答
  • Marko Smith

    使用 psql 列出数据库权限

    • 10 个回答
  • Marko Smith

    如何从 PostgreSQL 中的选择查询中将值插入表中?

    • 4 个回答
  • Marko Smith

    如何使用 psql 列出所有数据库和表?

    • 7 个回答
  • Martin Hope
    Jin 连接到 PostgreSQL 服务器:致命:主机没有 pg_hba.conf 条目 2014-12-02 02:54:58 +0800 CST
  • Martin Hope
    Stéphane 如何列出 PostgreSQL 中的所有模式? 2013-04-16 11:19:16 +0800 CST
  • Martin Hope
    Mike Walsh 为什么事务日志不断增长或空间不足? 2012-12-05 18:11:22 +0800 CST
  • Martin Hope
    Stephane Rolland 列出指定表的所有列 2012-08-14 04:44:44 +0800 CST
  • Martin Hope
    haxney MySQL 能否合理地对数十亿行执行查询? 2012-07-03 11:36:13 +0800 CST
  • Martin Hope
    qazwsx 如何监控大型 .sql 文件的导入进度? 2012-05-03 08:54:41 +0800 CST
  • Martin Hope
    markdorison 你如何mysqldump特定的表? 2011-12-17 12:39:37 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 对 SQL 查询进行计时? 2011-06-04 02:22:54 +0800 CST
  • Martin Hope
    Jonas 如何从 PostgreSQL 中的选择查询中将值插入表中? 2011-05-28 00:33:05 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 列出所有数据库和表? 2011-02-18 00:45:49 +0800 CST

热门标签

sql-server mysql postgresql sql-server-2014 sql-server-2016 oracle sql-server-2008 database-design query-performance sql-server-2017

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve