数据同步问题?????????

hnzzxubenbiao 2003-03-27 01:36:48
我现在的系统出现这样一个问题:我的数据库服务器C盘上安装了SQL SERVER 2000 ,数据文件在D盘(5000M),日志文件在E盘(5000M),现在D、E盘已经没有空间,我想对数据库服务器进行阔容(再增加一硬盘),应该怎末做????
...全文
36 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
hnzzxubenbiao 2003-03-28
  • 打赏
  • 举报
回复
另外我还有一个问题:我有一个中心服务器和18台远程异地数据库服务器(中心服务器和异地远程数据库服务器均用SQL SERVER 2000 操作系统为WINDOWS 2000 SERVER),他们各自管理一个地区的数据,我想把18台远程异地数据库服务器的数据汇总到中心数据库服务器上,要求数据更新定为一周一次或每天晚上自动更新。我想用SQL SERVER 2000中的订阅和发布服务,但不知道怎末设置。希望各位大虾解囊相助。谢谢!!!!!!!!!!
happydreamer 2003-03-27
  • 打赏
  • 举报
回复
向数据库中添加文件

ALTER DATABASE db
ADD FILE
(
NAME = Test1dat2,
FILENAME = 'f:\Data\t1dat2.ndf',
SIZE = 5MB,
MAXSIZE = 4000MB,
FILEGROWTH = 5MB
)
happydreamer 2003-03-27
  • 打赏
  • 举报
回复


--假设test2为数据库名称 日志已经很大的时候用
方法一此方法适用于7.0和2000。

1、在查询分析器中执行: exec sp_detach_db 'DB_Name','true'

2、在我的电脑中将日志的物理文件xxx_Log.LDF改名。

3、在查询分析器中执行: exec sp_attach_single_file_db 'DB_Name','C:\Program Files\Microsoft SQL Server\MSSQL\Data\DB_Name.MDF'

4、如果上一步成功,将步骤2中改名后的文件删除。如果上一步不成功,改回原来的文件名,用sp_attach_db将数据库附加到服务器,然后用方法二。

方法二

6.X中 DUMP TRANSACTION test2 with NO_LOG DUMP TRANSACTION test2 with TRUNCATE_ONLY 将上面的语句多次执行,直到日志缩小。7.0和2000中 backup log test2 with NO_LOG backup log test2 with TRUNCATE_ONLY DBCC SHRINKDATABASE(test2) 将上面的语句多次执行,直到日志文件缩小。上面的方法治标不治本,标本兼治要用下面的方法。

方法三:

--6.X和7.0中改为日志处于截断模式,2000中恢复模型改为简单恢复 exec sp_dboption 'test2','trunc. log on chkpt.','on' --7.0和2000中设为自动收缩,6.x中不用执行。 exec sp_dboption 'test2','autoshrink','on' 通常用于测试环境。

方法四: --7.0中改为日志不处于截断模式,2000中恢复模型改为完全恢复 exec sp_dboption 'test2','trunc. log on chkpt.','off' --7.0和2000中设为自动收缩,6.x中不用执行。 exec sp_dboption 'test2','autoshrink','on' 建立作业,每半个小时一次日志备份,每天一次完全数据库备份。 7.0和2000中:在Log收缩到正常大小后,将autoshrink选项设置为off。通常用于真实环境。 在产品化系统中将autoshrink选项设置为开启状态并非明智之举(除非您真的需要这样做),这是因为,当您的系统正在忙于完成其它任务时,autoshrink选项可能会同时启动,从而降低系统运行速度。然而,对于那些数据库管理员无暇估计并且数据库尺寸有可能在您毫无察觉的情况下超出控制范围的桌面或远程系统来说,开启这一选项却是一种非常有效的措施。 收缩事务日志 在下列情况下,日志文件的物理大小将减少:

*执行 DBCC SHRINKDATABASE 语句时。

*执行引用日志文件的 DBCC SHRINKFILE 语句时。

*自动收缩操作发生时。 日志收缩操作依赖于最初的日志截断操作。日志截断操作不减小物理日志文件的大小,但减小逻辑日志的大小,并将没有容纳逻辑日志任何部分的虚拟日志标记为不活动。日志收缩操作会删除足够多的不活动虚拟日志,将日志文件减小到要求的大小。 按下面任一方式控制事务日志的大小:

*在维护日志备份序列时,调度 BACKUP LOG 语句按间隔发生,以使事务日志不致增长到超过预期的大小。

*当不维护日志备份序列时,指定简单恢复模式。 详情请参考 MS SQL Server 2000 联机丛书: 目录--> SQL Server构架-->数据库构架-->物理数据库构架-->事务日志构架-->收缩事务日志 目录--> SQL Server构架-->数据库构架-->物理数据库构架-->事务日志构架-->截断事务日志




w_rose 2003-03-27
  • 打赏
  • 举报
回复
什么操作系统?难道不能将C、D、E连接成一个逻辑硬盘么?
CrazyFor 2003-03-27
  • 打赏
  • 举报
回复
1,收缩一下日志,

DUMP TRANSACTION @DataBaseName WITH NO_LOG

DBCC SHRINKFILE( @LogoFileName,@NewSize)
用上面的语句可安全的清除日志,

2,再添加一个数据库文件,把它放在其它的盘符上。:)
hnzzxubenbiao 2003-03-27
  • 打赏
  • 举报
回复
谢谢各位大虾光临指导

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧