zoukankan      html  css  js  c++  java
  • MS SQL xp_instance_regwrite设置注册表疑惑

     

    以前写过一篇博文MS SQL 日志记录管理,里面介绍了如何设置SQL Server的错误日志的最大归档数量,如果在SSMSUI界面设置,可以从Management-> "SQL Server Logs" 右键单击选项Configure" 去设置错误日志的个数,如下所示:

     

     

     

    clip_image001[4]

     

     

     

    如果里使用脚本设置,如下所示,这个脚本也能实现修改最大错误日志数量的功能

     

     

    USE [master];
     
    GO
     
    EXEC xp_instance_regwrite N'HKEY_LOCAL_MACHINE',
     
        N'SoftwareMicrosoftMSSQLServerMSSQLServer', N'NumErrorLogs', REG_DWORD,
     
        10;
     
    GO

     

    SQL Server 2008为例(默认实例),注册表HKEY_LOCAL_MACHINESOFTWAREMicrosoftMSSQLServerMSSQLServer 下是没有这个参数NumErrorLogs的,这个参数实际位于HKEY_LOCAL_MACHINESOFTWAREMicrosoftMicrosoft SQL ServerMSSQL10_50.MSSQLSERVERMSSQLServer下面

     

    SQL Server 2014为例(默认实例),注册表HKEY_LOCAL_MACHINESOFTWAREMicrosoftMSSQLServerMSSQLServer 下是没有这个参数NumErrorLogs的,这个参数实际位于HKEY_LOCAL_MACHINESOFTWAREMicrosoftMicrosoft SQL ServerMSSQL12.MSSQLSERVERMSSQLServer下面

     

     

    当然如果是命名实例,注册表路径还是有所差别,但是上面存储过程使用上面参数(同一参数)都能修改到注册表NumErrorLogs参数,原本为N'HKEY_LOCAL_MACHINE' N'SoftwareMicrosoftMSSQLServerMSSQLServer'的值组合是参数在注册表中具体路径,但是实际验证发现不是这么一回事,另外由于master.sys.xp_instance_regwrite是一个没有文档的存储过程,所以不知道它内部是如何处理的,也就是说不知是其内部做了转换还是其它原因。这个让人相当困惑、不解的问题。

     

     

     

    clip_image002[4]

    image

  • 相关阅读:
    java练习题2
    java练习题
    java输入输出
    字符集
    eclipse快捷键
    类和对象练习-people
    类和对象-三角形
    权限修饰符-输出求和阶乘
    权限修饰符-练习
    权限修饰符-father&&son
  • 原文地址:https://www.cnblogs.com/kerrycode/p/7692352.html
Copyright © 2011-2022 走看看