zoukankan      html  css  js  c++  java
  • 安装MSSQL碰到的一个问题

    为安全考滤,安装之后会把一些内置的存储过程去掉了。
    use master
    exec sp_dropextendedproc 'xp_cmdshell'
    exec sp_dropextendedproc 'sp_oacreate'
    exec sp_dropextendedproc 'sp_oadestroy'

    exec sp_dropextendedproc 'sp_oagetproperty'
    exec sp_dropextendedproc 'sp_oamethod'
    exec sp_dropextendedproc 'sp_oasetproperty'
    exec sp_dropextendedproc 'sp_oastop'
    exec sp_dropextendedproc 'xp_regaddmultistring'
    exec sp_dropextendedproc 'xp_regdeletekey'
    exec sp_dropextendedproc 'xp_regdeletevalue'

    exec sp_dropextendedproc 'xp_regenumvalues'
    exec sp_dropextendedproc 'xp_regread'
    exec sp_dropextendedproc 'xp_regremovemultistring'
    exec sp_dropextendedproc 'xp_regwrite'


    结果, SQLSERVER代理起不过来。

    Microsoft SQL-DMO (ODBC SQLState: 42000)
    ---------------------------
    错误 22002: RegCreateKeyEx() 返回错误 5,“拒绝访问。”




    怎么把它们加回去呢??
    ======================================
    sp_helpextendedproc
    显示当前定义的扩展存储过程,以及此过程(函数)所属动态链接库的名称。也就是要找到对应的DLL



    sp_addextendedproc
    将新扩展存储过程的名称注册到 Microsoft? SQL Server? 上。

    语法
    sp_addextendedproc [ @functname = ] 'procedure' ,
        [ @dllname = ] 'dll'

    参数
    [ @functname = ] 'procedure'

    在动态链接库 (DLL) 内调用的函数名称。procedure 的数据类型为 nvarchar(517),没有默认设置。procedure 能够可选地包含 owner.function 形式的所有者名称。

    [ @dllname = ] 'dll'

    包含该函数的 DLL 名称。dll 的数据类型为 varchar(255),没有默认设置。

    返回代码值
    0(成功)或 1(失败)

    结果集

    注释
    使用 Microsoft Open Data Services 的程序员可以创建扩展存储过程。创建扩展存储过程后,必须使用 sp_addextendedproc 将此存储过程添加到 SQL Server 上。有关更多信息,请参见创建扩展存储过程。

    只将一个扩展存储过程添加到 master 数据库中。若要从非 master 的数据库中执行扩展存储过程,请用 master 限定扩展存储过程的名称。

    sp_addextendedproc 将条目添加到 sysobjects 中,用 SQL Server 注册新扩展存储过程名称。同样在 syscomments 表中添加一个条目。

    权限
    只有 sysadmin 固定服务器角色的成员才可以执行 sp_addextendedproc。



    解决
    exec sp_addextendedproc 'sp_oacreate' ,'odsole70.dll'
    exec sp_addextendedproc 'sp_oadestroy', 'odsole70.dll'
    exec sp_addextendedproc 'sp_oagetproperty', 'odsole70.dll'
    exec sp_addextendedproc 'sp_oamethod', 'odsole70.dll'
    exec sp_addextendedproc 'sp_oasetproperty', 'odsole70.dll'
    exec sp_addextendedproc 'sp_oastop', 'odsole70.dll'
    exec sp_addextendedproc 'xp_regaddmultistring', 'xpstar.dll'
    exec sp_addextendedproc 'xp_regdeletekey', 'xpstar.dll'
    exec sp_addextendedproc 'xp_regdeletevalue', 'xpstar.dll'
    exec sp_addextendedproc 'xp_regenumvalues', 'xpstar.dll'
    exec sp_addextendedproc 'xp_regread', 'xpstar.dll'
    exec sp_addextendedproc 'xp_regremovemultistring', 'xpstar.dll'
    exec sp_addextendedproc 'xp_regwrite', 'xpstar.dll'


  • 相关阅读:
    js正则表达式基本语法
    类似于QQ的右滑删除效果的实现方法
    JS设置cookie、读取cookie、删除cookie
    JavaScript随机生成颜色的方法
    mysql数据库备份及恢复
    Javascript 实现简单计算器实例代码
    JavaScript 实现的checkbox经典实例分享
    网页瀑布流布局jQuery实现代码
    Django Web在Apache上的部署
    VIM使用系列之一——配置VIM下C/C++编程环境
  • 原文地址:https://www.cnblogs.com/LCX/p/841513.html
Copyright © 2011-2022 走看看