备份文件命令SqlServer一键复制数据库脚本
2013-04-22 20:36
495 查看
发一下牢骚和主题无关:
假定有两个Server:192.168.0.1和192.168.0.2,须要复制的数据库名为TestDB,现将该库由192.168.0.1复制到192.168.0.2,其中%source_database_backup_file_dir%为寄存192.168.0.1上TestDB库备份文件的文件夹,%target_database_file_dir%为192.168.0.2上TestDB数据库文件地点的文件夹,BAT本脚如下:
每日一道理
书,各种各样的书。书,寄托着人类热切的希望;书,蕴含着人类丰富的感悟。提起书,会有说不完的话语……
本本脚要主用使BACKUP命令为原库成生一个备份文件,然后用使RESTORE命令将备份文件复恢到目标库,从而现实数据库复制。关于BACKUP命令请参考:http://msdn.microsoft.com/zh-cn/library/ms186865.aspx,关于RESTORE命令请参考:http://msdn.microsoft.com/zh-cn/library/ms186858.aspx
有两个细节说明一下:
1. BACKUP语句中的WITH INIT用于每次备份时覆盖原备份文件中的数据。
2. 由于两个Server都须要拜访数据库备份文件 ,寄存备份文件的文件夹一般要设置为"享共"文件夹。
文章结束给大家分享下程序员的一些笑话语录:
手机终究会变成PC,所以ip会比wm更加畅销,但是有一天手机强大到一定程度了就会发现只有wm的支持才能完美享受。就好比树和草,草长得再高也是草,时间到了条件成熟了树就会窜天高了。www.ishuo.cn
假定有两个Server:192.168.0.1和192.168.0.2,须要复制的数据库名为TestDB,现将该库由192.168.0.1复制到192.168.0.2,其中%source_database_backup_file_dir%为寄存192.168.0.1上TestDB库备份文件的文件夹,%target_database_file_dir%为192.168.0.2上TestDB数据库文件地点的文件夹,BAT本脚如下:
@echo off set source_server=192.168.0.1 set source_server_user=sa set source_server_password=sa set target_server=192.168.0.2 set target_server_user=sa set target_server_password=sa set database=TestDB set source_database_backup_file_dir=\\Systemname\ShareName\Path set target_database_file_dir=\\Systemname\ShareName\Path echo Start to backup source database... osql -S"%source_server%" -U"%source_server_user%" -P"%source_server_password%" -n -h-1 -d"%database%" -Q"BACKUP DATABASE %database% TO DISK = '%source_database_backup_file_dir%\%database%.bak' WITH INIT;" echo Disconnect all existing connections of target database. osql -S"%target_server%" -U"%target_server_user%" -P"%target_server_password%" -Q"declare @i int declare cur cursor for select spid from sysprocesses where db_name(dbid)= '%database%' open cur fetch next from cur into @i while @@fetch_status=0 begin exec('kill '+@i) fetch next from cur into @i end close cur deallocate cur" echo Start to resotre target database from source database backup file... osql -S"%target_server%" -U"%target_server_user%" -P"%target_server_password%" -n -h-1 -d"Master" -Q"RESTORE DATABASE %database% FROM DISK = '%source_database_backup_file_dir%\%database%.bak' WITH REPLACE,MOVE '%database%' TO '%source_database_backup_file_dir%\%database%.mdf',MOVE '%database%_Log' TO '%source_database_backup_file_dir%\%database%_log.ldf';" echo DONE!! pause
每日一道理
书,各种各样的书。书,寄托着人类热切的希望;书,蕴含着人类丰富的感悟。提起书,会有说不完的话语……
本本脚要主用使BACKUP命令为原库成生一个备份文件,然后用使RESTORE命令将备份文件复恢到目标库,从而现实数据库复制。关于BACKUP命令请参考:http://msdn.microsoft.com/zh-cn/library/ms186865.aspx,关于RESTORE命令请参考:http://msdn.microsoft.com/zh-cn/library/ms186858.aspx
有两个细节说明一下:
1. BACKUP语句中的WITH INIT用于每次备份时覆盖原备份文件中的数据。
2. 由于两个Server都须要拜访数据库备份文件 ,寄存备份文件的文件夹一般要设置为"享共"文件夹。
文章结束给大家分享下程序员的一些笑话语录:
手机终究会变成PC,所以ip会比wm更加畅销,但是有一天手机强大到一定程度了就会发现只有wm的支持才能完美享受。就好比树和草,草长得再高也是草,时间到了条件成熟了树就会窜天高了。www.ishuo.cn
相关文章推荐
- SqlServer一键复制数据库脚本
- 一键帮你复制多个文件到多个机器——PowerShell小脚本(内附PS远程执行命令问题解析)
- SqlServer一键复制数据库脚本
- web服务文件更新自动同步、数据库主从复制、shell脚本实现网站代码备份和mysql备份
- CentOS中使用Shell脚本实现每天自动备份网站文件和数据库并上传到FTP中(转)
- 操作系统命令误删除数据库的数据文件并数据库没有备份的恢复
- 用复制命令做文件异地备份
- linux备份文件和数据库脚本
- mysqldump 数据库备份命令及脚本
- 脚本:数据库创建、备份、强制还原、表数据复制
- SQLSERVER使用密码加密备份文件以防止未经授权还原数据库
- 用复制命令做文件异地备份
- 通过Load table命令将数据文件加载到Sybase IQ数据库里面的Python脚本
- WINDOWS脚本(备份数据库+FTP上传+自动删除7天前文件)
- Linux 下的 PostgreSQL 数据库+文件通用自动备份脚本
- SqlServer根据备份文件.bak恢复数据库
- 数据库备份文件自动压缩脚本
- 用复制命令做文件异地备份
- 定时备份SQL SERVER的数据库并且把备份文件复制到另外一台服务器保存
- 利用作业每周135自动备份指定数据库的脚本(SQLServer)