Linux中国 Linux中国门户站!
设为主页 设为主页
收藏本站 收藏本站
 
当前位置 :首页 ->数据库应用 ->SQL Server ->正文

SQLSERVER中,数据库同步的实现

来源:Linuxdby.com 作者:Webmaster 时间:2007-06-03 点击: [收藏] [投稿]

                @servername    varchar(100)
        -- 取得Windows NT 服务器和与指定的 SQL Server 实例关联的实例信息
        SELECT @serverproperty_servername = CONVERT(varchar(100), SERVERPROPERTY('ServerName'))
        -- 返回运行 Microsoft SQL Server 的本地服务器名称
        SELECT @servername = CONVERT(varchar(100), @@SERVERNAME)
        -- 显示获取的这两个参数
        select @serverproperty_servername,@servername
        --如果@serverproperty_servername和@servername不同(因为你改过计算机名字),再运行下面的
        --删除错误的服务器名
        EXEC sp_dropserver @server=@servername
        --添加正确的服务器名
        EXEC sp_addserver @server=@serverproperty_servername, @local='local'
修改这项参数,需要重新启动MSSQLserver和Sqlserveragent服务才能生效。   
       这样一来就不会在创建复制的过程中出现18482、18483错误了。
3、检查SQL Server企业管理器里面相关的几台SQL Server注册名是否和上面第二点里介绍的srvname一样
        不能用IP地址的注册名。
      (我们可以删掉IP地址的注册,新建以SQL Server管理员级别的用户注册的服务器名)
       这样一来就不会在创建复制的过程中出现14010、20084、18456、18482、18483错误了。   
    4、检查相关的几台SQL Server服务器网络是否能够正常访问
        如果ping主机IP地址可以,但ping主机名不通的时候,需要在   
            winnt\system32\drivers\etc\hosts   (WIN2000)
            windows\system32\drivers\etc\hosts (WIN2003)
               文件里写入数据库服务器IP地址和主机名的对应关系。
 例如:   
              
           127.0.0.1       localhost
           192.168.0.35    oracledb    oracledb
           192.168.0.65    fengyu02    fengyu02
           202.84.10.193   bj_db       bj_db    


    或者在SQL Server客户端网络实用工具里建立别名,例如:
     5、系统需要的扩展存储过程是否存在(如果不存在,需要恢复):
         sp_addextendedproc 'xp_regenumvalues',@dllname ='xpstar.dll'
         go
         sp_addextendedproc 'xp_regdeletevalue',@dllname ='xpstar.dll'
         go
         sp_addextendedproc 'xp_regdeletekey',@dllname ='xpstar.dll'
         go             
         sp_addextendedproc xp_cmdshell ,@dllname ='xplog70.dll' 
     接下来就可以用SQL Server企业管理器里[复制]-> 右键选择
        ->[配置发布、订阅服务器和分发]的图形界面来配置数据库复制了。
 

sp_addextendedproc 'xp_regenumvalues',@dllname ='xpstar.dll'
         go
         sp_addextendedproc 'xp_regdeletevalue',@dllname ='xpstar.dll'
         go
         sp_addextendedproc 'xp_regdeletekey',@dllname ='xpstar.dll'
         go             
         sp_addextendedproc xp_cmdshell ,@dllname ='xplog70.dll' 


go
--创建作业,定时执行数据同步的存储过程
if exists(SELECT 1 from msdb..sysjobs where name=’数据处理’)
EXECUTE msdb.dbo.sp_delete_job @job_name=’数据处理’
exec msdb..sp_add_job @job_name=’数据处理’
--创建作业步骤
declare @sql varchar(800),@dbname varchar(250)
select @sql=’exec p_synchro’ --数据处理的命令

 如果您对本文有任何疑问或者建议,请到讨论区发表您的意见: >> 论坛入口 <<



上一篇:一些SQL Server的应用实例   下一篇:SQL SERVER 和EXCEL的数据导入导出

文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【我要投稿】 【论坛讨论
更多相关文章
Power by linux-cn.com 粤ICP备05006655号