WEB开发网
开发学院数据库MSSQL Server 同步两个Sql server 阅读

同步两个Sql server

 2007-05-17 09:38:22 来源:WEB开发网   
核心提示: 采用推模式: "D:Microsoft SQL ServerMSSQLREPLDATAunc" 目录文件可以不设置共享拉模式:则需要共享~!*/少量数据库同步可以采用触发器实现,同步单表即可,配置过程中可能出现的问题在SQL Server 2000里设置和使用数据库复制

采用推模式: "D:Microsoft SQL ServerMSSQLREPLDATAunc" 目录文件可以不设置共享

拉模式:则需要共享~!

*/

少量数据库同步可以采用触发器实现,同步单表即可。

配置过程中可能出现的问题

在SQL Server 2000里设置和使用数据库复制之前,应先检查相关的几台SQL Server服务器下面几点是否满足:

1、MSSQLserver和Sqlserveragent服务是否是以域用户身份启动并运行的(.administrator用户也是可以的)

如果登录用的是本地系统帐户local,将不具备网络功能,会产生以下错误:

进程未能连接到Distributor '@Server name'

(如果您的服务器已经用了SQL Server全文检索服务, 请不要修改MSSQLserver和Sqlserveragent服务的local启动。

会照成全文检索服务不能用。请换另外一台机器来做SQL Server 2000里复制中的分发服务器。)  

修改服务启动的登录用户,需要重新启动MSSQLserver和Sqlserveragent服务才能生效。  

2、检查相关的几台SQL Server服务器是否改过名称(需要srvid=0的本地机器上srvname和datasource一样)

在查询分析器里执行:

use master

select srvid,srvname,datasource from sysservers  

如果没有srvid=0或者srvid=0(也就是本机器)但srvname和datasource不一样, 需要按如下方法修改:

     USE master
    GO
    -- 设置两个变量
    DECLARE @serverproperty_servername varchar(100),
        @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'
    

上一页  1 2 3 4 5 6 7 8  下一页

Tags:同步 两个 Sql

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接