找回密码
 新注册用户
搜索
查看: 3671|回复: 1

HELP ME (我是新来的,各位大哥,能回答多少,就回答多少)

[复制链接]
发表于 2004-10-22 00:00:00 | 显示全部楼层 |阅读模式
大家好:
我是新来的,首先介绍一下我自己,我是湖南人,今年毕业,找了很久才找了一个工作。要开发一个分布式的系统。可是就是理解分布式我都是在网上搞了几天,才有点明白。现在碰到大难题了。请各位大哥帮忙!(能够回答多少,请回答多少,真的而后内重要)
我这两天试了一下复制 我是在一台计算机上装了 三 个 SQL SERVER 实列(我创建了 发布服务器 ,分发服务器器,订阅服务器,按照书上的来,数据可以从一个服务器 转移到另外一个服务器)。在网上有人说用 ftp 下载。
这是 shaooy 兄,给我回的
//
人个认为,SQL的发布复制功能对于交换数据来说,不是首选方式,原因有二:1.不好控制,如果需要程序干预基本上不可能,而大部分时候数据不只是简单地传送,而是要经过一些处理再传送的。2.难以维护和配置,使用发布功能需要注意很多事项,如果不是很熟悉,很可能造成有用的数据丢失,并且一旦数据库或服务器出问题,又需要重新配置。其它的几个关于网络的问题,我也不太清楚:)
//
file://这是 delphi 园地里的 xwf-lj 回的。
文件传输协议FTP(File Transfer Protocol)是Internet传统的服务之一。FTP使用户能在两个联网的计算机之间传输文件,它是Internet传递文件最主要的方法。使用匿名(Anonymous)FTP, 用户可以免费获取Internet丰富的资源。除此之外,FTP还提供登录、目录查询、文件操作及其他会话控制功能。
这么几个方面内容:1、服务器端。服务器端要有FTP软件,建议用Serv-U,这样每个用户都有一个FTP目录,可以设单独的用户名和密码。然后服务器端按照规则把数据分配好(用临时数据库文件),放在每个用户的FTP目录下。2、客户端。客户端通过上网(拨号、宽带都行),下载数据。可以把数据处理结果或是反馈信息上传到服务器相应的FTP目录上。服务器要设为自动(每隔一段时间)运行一次,主要是把需要处理的数据分发好,等待各分店来读取;同时处理各分店上传来的数据。主要用到的是IDFTP控件,挺简单的,不需要实时连接。看上去也比较专业。
//
请问各位大哥,是不是这样,如果 服务器 A 里有数据表 table1 。(如果 table1 表是需要提交的表,那么就把 Atable1表 放到一个 特定的文件夹里,在服务器 B  需要 table1 表时,就用 ftp 来下载,是不是,,如果每次都是传递 一张完整的表,那不是需要很大的空间,能不能像复制里面的  事物复制,只传递一些动作呢? 还有 服务器 B 用 ftp 把 服务器 A 的table1 下载过来。是不是还要手工把一写数据放 服务器 B 的相对应的 表里去呢?还是可以自己插进去。
各位大哥,看这种方法行不行,(我只配置 发布服务器和分发服务器器。把发布服务器发布的快照 放到一个特定的 文件夹里。哪个服务器要的话,就用 ftp 去下载,因为 发布服务器和分发服务器器 只把快照放到自己的 服务器里,应该还是好控制的,是不是?)
各位大哥,您们呢?是怎么做的?

问题一:(标准化命名问题)
因为数据是在几个服务器中转的,但是还是必须知道 张表,或存储过程,是来自那里的。所以必须要把他的服务器名称也要加上来。
我在服务器 lsh998\lsh2002 数据库 lsh2000sjk 创建这样的存储过程
create procedure .dbo.proc11
@aa int,
@bb datetime
as
insert .dbo.table2
values(@aa,@bb)
go (这个能够编译)
//
请问我这个存储过程的格式是错在那里? (就是 按照 服务器.所以者.存储过程名,可是我这样写不对 :
create procedure [lsh998\lsh2002].dbo.proc11
@aa int,
@bb datetime
as
insert .dbo.table2
values(@aa,@bb)
//(这种不能通过编译)

我在delphi里这样调用:(create procedure .dbo.proc11 )
我的 adoconnection1 是连接的 lsh998\lsh2002 服务器
procedure TForm1.Button1Click(Sender: TObject);
begin
ADOStoredProc1.ProcedureName:='.dbo.proc11 ';
ADOStoredProc1.Close;
ADOStoredProc1.Parameters.Refresh;
ADOStoredProc1.Parameters.ParamByName('@aa').Value:=edit1.Text;
ADOStoredProc1.Parameters.ParamByName('@bb').Value:=edit2.Text;
ADOStoredProc1.ExecProc;
end;
end.
出现的错误是:adostoredproc1:parameter '@aa' not found .
但是如果存储过程是这样的,就可以
create procedure proc11
@aa int,
@bb datetime
as
insert .dbo.table2
values(@aa,@bb)
go (这个能够编译)

procedure TForm1.Button1Click(Sender: TObject);
begin
ADOStoredProc1.ProcedureName:='.dbo.proc11 ';
ADOStoredProc1.Close;
ADOStoredProc1.Parameters.Refresh;
ADOStoredProc1.Parameters.ParamByName('@aa').Value:=edit1.Text;
ADOStoredProc1.Parameters.ParamByName('@bb').Value:=edit2.Text;
ADOStoredProc1.ExecProc;
end;
end.

没有错误
//

问题二:

请解释什么是网络路径?还有网络路径是怎么表示的?举个列子,好吗?
还有一种是 <drive>$ 是叫做共享路径是不是?
书上有一段文字是:
由于〈drive〉$ 共享是用于管理用途的特殊共享,是无法被赋予权限的,只有系统管理员才可以访问,所以在远程 internet 的计算机往往不具备该特殊共享的权限。
请问 什么时候才用到 <drive>$ 特殊共享呢?

问题三:(链接服务器的问题)
总部的服务器为A 分部1服务器为 B 分部2服务器为C (服务器为A 分部1的为 B 分部2的为C 是通过 INTERNET 连起来的)
(服务器为A 链接 分部1服务器 B  分部2服务器C ,分部1服务器为 B 链接  服务器为A  分部2服务器C ,分部2服务器C  链接 服务器为A 分部1服务器 B  )
既然通过链接能够改变与它链接服务器的内容,为什么还要用到 复制 ,订阅 或用 ftp 去下载之类的呢?(是不是链接有什么它不能完成的功能呢?)还有,是不是把这种链接技术和 复制 下载的方法结合起来使用呢?(比如是 插入,删除,或修改小部分数据就用 连接技术,当是大批量的数据的需从一个服务器拷贝到另外一个服务器上去时,就用复制和下载,请问是不是这样的?)

今天我做链接的时候,碰到这样的问题(我只有一台电脑啊:):
我在我的 SQL SERVER 组里注册了    lsh998\lsh2000 和 lsh998\lsh999 两个服务器。
当我想在 lsh998\lsh2000 链接 lsh998\lsh999 。
出现的错误是:lsh998\lsh999  已经存在。
谢谢各位大哥!拜托了!
回复

使用道具 举报

发表于 2004-10-22 00:00:00 | 显示全部楼层
2.你说的是默认共享吧?这个是windows的默认共享,初衷是为了在局域网环境中方便管理员进行远程管理.可以通过$">\\ip\<drive>$访问,需要进行用户验证,通过后获得相应的权限.这种共享是隐藏的,在"网上邻居"中是看不到的.可以在DOS窗口中通过net share命令查看当前共享的资源.SQL Server的问题建议你到CSDN论坛的数据库区提问,那里的大版主邹健是这方面的专家...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 新注册用户

本版积分规则

论坛官方淘宝店开业啦~
欢迎大家多多支持基金会~

Archiver|手机版|小黑屋|中国分布式计算总站 ( 沪ICP备05042587号 )

GMT+8, 2024-5-16 06:30

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表