徐中民 2025-09-17 08:10 采纳率: 98.7%
浏览 1
已采纳

Windows下SQL Server主备模式安装常见问题有哪些?

在Windows环境下安装SQL Server主备模式(High Availability)时,常见的技术问题包括: 1. **网络配置错误**:主备服务器之间网络不通或防火墙未开放相应端口(如1433、5022等),导致无法建立镜像或可用性组。 2. **SQL Server服务账户权限不足**:服务账户未正确配置域权限或未赋予登录、访问网络资源的权限,导致主备同步失败。 3. **数据库恢复模式不正确**:主数据库未设置为完整恢复模式,导致无法进行事务日志传送。 4. **端点配置错误**:未正确创建或配置数据库镜像端点(Endpoint),主备无法通信。 5. **备份与还原不一致**:备库数据库还原时未选择“RESTORE WITH STANDBY”或“WITH NORECOVERY”,导致同步失败。 6. **权限与证书配置错误**:未正确配置证书或登录权限,导致连接被拒绝。 这些问题常导致主备切换失败或数据同步中断,需逐一排查。
  • 写回答

1条回答 默认 最新

  • fafa阿花 2025-10-22 04:18
    关注

    一、网络配置错误

    在SQL Server主备模式部署过程中,网络配置是首要检查项。主备服务器之间的网络连通性、端口开放情况直接影响高可用架构的建立。

    • 主备服务器之间必须确保网络可达,可通过 pingtracert 命令测试连通性。
    • SQL Server默认使用1433端口用于数据库连接,5022端口用于镜像端点通信,必须在防火墙中开放这些端口。
    • 可通过 telnet <IP> <Port>Test-NetConnection PowerShell命令验证端口是否开放。

    二、SQL Server服务账户权限不足

    SQL Server服务账户的权限配置直接影响主备之间的通信与数据同步。若权限不足,可能导致同步失败或无法启动服务。

    常见权限问题包括:

    权限类型说明建议配置
    登录权限服务账户需具备本地登录权限使用域账户并赋予“作为服务登录”权限
    访问网络资源主备服务器间需访问共享资源或端点赋予“访问此计算机从网络”权限

    三、数据库恢复模式不正确

    SQL Server主备模式依赖事务日志传送,主数据库必须处于完整恢复模式(Full Recovery Mode),否则无法进行日志备份和同步。

    检查恢复模式的T-SQL语句:

    SELECT name, recovery_model_desc FROM sys.databases WHERE name = 'YourDBName';

    修改恢复模式的命令:

    ALTER DATABASE YourDBName SET RECOVERY FULL;

    四、端点配置错误

    主备服务器之间的通信依赖于镜像端点(Mirroring Endpoint),若未正确创建或配置该端点,将导致连接失败。

    创建端点的示例代码:

    CREATE ENDPOINT Endpoint_Mirroring
    STATE = STARTED
    AS TCP (LISTENER_PORT = 5022, LISTENER_IP = ALL)
    FOR DATABASE_MIRRORING (ROLE = ALL);

    需确保主备两端点配置一致,并启用加密。

    五、备份与还原不一致

    在配置主备模式时,主库需进行完整备份及事务日志备份,备库需以 WITH NORECOVERYWITH STANDBY 模式还原。

    标准备份与还原流程如下:

    1. 主库执行完整备份:BACKUP DATABASE YourDBName TO DISK = 'D:\Backup\YourDB.bak'
    2. 主库执行日志备份:BACKUP LOG YourDBName TO DISK = 'D:\Backup\YourDB_Log.bak'
    3. 备库还原完整备份:RESTORE DATABASE YourDBName FROM DISK = 'D:\Backup\YourDB.bak' WITH NORECOVERY
    4. 备库还原日志备份:RESTORE LOG YourDBName FROM DISK = 'D:\Backup\YourDB_Log.bak' WITH NORECOVERY

    六、权限与证书配置错误

    在使用证书方式进行主备通信时,必须正确配置服务账户的证书权限,并确保证书在主备服务器之间有效。

    常见问题包括:

    • 未创建主备双方信任的证书
    • 服务账户未被授予对证书的控制权限
    • 证书未启用端点加密

    示例创建证书并授权的T-SQL代码:

    CREATE CERTIFICATE Cert_Mirror WITH SUBJECT = 'Mirroring Certificate';
    CREATE ENDPOINT Endpoint_Mirroring
    FOR DATABASE_MIRRORING (
        AUTHENTICATION = CERTIFICATE Cert_Mirror,
        ENCRYPTION = REQUIRED ALGORITHM AES,
        ROLE = ALL
    );

    七、主备切换失败的排查流程图

    以下为SQL Server主备切换失败的常见排查流程图:

    graph TD
        A[主备切换失败] --> B{网络是否通}
        B -- 否 --> C[检查防火墙/端口]
        B -- 是 --> D{服务账户权限是否正确}
        D -- 否 --> E[配置域权限]
        D -- 是 --> F{恢复模式是否为完整}
        F -- 否 --> G[修改恢复模式]
        F -- 是 --> H{端点配置是否正确}
        H -- 否 --> I[创建并启动端点]
        H -- 是 --> J{备份还原是否一致}
        J -- 否 --> K[重新备份并恢复]
        J -- 是 --> L{证书权限是否配置}
        L -- 否 --> M[配置证书及权限]
        L -- 是 --> N[其他问题]
            
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 已采纳回答 10月23日
  • 创建了问题 9月17日