自动备份mssql server数据库并压缩的批处理脚本_MsSql

1. set bakupfolder=F:\backup\
备份文件存放于目录F:\backup\ (此目录需要事先建好)
2. 默认每个数据库放置到bakupfolder下的同名的子目录(脚本自动创建)中;设置lay_in_subfolder=0后,将直接放置到bakupfolder
3. 备份文件名中自动添加备份时的时间字符串,不用担心备份目录下名字重复,也便于管理。
4. call :backupone foo
foo是需要备份的数据库,需要备份其它数据库,按同样的方式一行写一条即可
5. 命令行驱动备份操作:sqlcmd -U sa -P “sa” -S localhost -Q “xxx”
这里连接数据库的用户名密码都是sa,请改成你的实际用户名密码。mssql密码中如果有一些特殊字符,可能报错,所以加上双引号。如果密码简单,不加也可以;不过sa密码,一般都是很变态的吧~~

复制代码 代码如下:

@ECHO ON
set d=%date:~0,10%
set d=%d:-=%
set t=%time:~0,8%
set t=%t::=%
set stamp=%p%%d%%t%
set bakupfolder=F:\backup\
rem 1按子目录保存备份文件;0不按
set lay_in_subfolder=1
call :backupone foo
call :backupone foo2
call :backupone foo3
call :backupone foo4
goto :EOF
@ECHO OFF
:backupone
setlocal
echo %1
set dbname=%1
if not exist %bakupfolder%%dbname% mkdir %bakupfolder%%dbname%
if %lay_in_subfolder%==1 (
set subfolder=%dbname%\
)else set subfolder=
rem echo %bakupfolder%%subfolder%%dbname%%stamp%.bak
sqlcmd -U sa -P "sa" -S localhost -Q "backup database %dbname% to disk='%bakupfolder%%subfolder%%dbname%%stamp%.bak'"
"C:\Program Files\WinRAR\RAR.exe" a -ep1 -r -o+ -m5 -s -df "%bakupfolder%%subfolder%%dbname%%stamp%".rar "%bakupfolder%%subfolder%%dbname%%stamp%.bak"
endlocal&goto :EOF

时间: 2024-08-02 14:50:27

自动备份mssql server数据库并压缩的批处理脚本_MsSql的相关文章

自动备份mssql server数据库并压缩的批处理脚本

1. set bakupfolder=F:\backup\ 备份文件存放于目录F:\backup\ (此目录需要事先建好) 2. 默认每个数据库放置到bakupfolder下的同名的子目录(脚本自动创建)中:设置lay_in_subfolder=0后,将直接放置到bakupfolder 3. 备份文件名中自动添加备份时的时间字符串,不用担心备份目录下名字重复,也便于管理. 4. call :backupone foo foo是需要备份的数据库,需要备份其它数据库,按同样的方式一行写一条即可 5.

MS SQL SERVER 数据库日志压缩方法与代码_MsSql

MS SQL性能是很不错的,但是数据库用了一段时间之后,数据库却变得很大,实际的数据量不大.一般都是数据库日志引起的!数据库日志的增长可以达到好几百M. 网上的MSSQL虚拟主机价格也贵,要想不让数据库超容,只好压缩下数据库日志,或者删除数据库日志. 下面我给大家介绍一个方法 1.打开企业管理器 2.打开要处理的数据库 3.点击菜单>工具>SQL查询分析器 4.在输入窗口里面输入:  复制代码 代码如下: DUMP TRANSACTION [数据库名] WITH  NO_LOG  BACKUP

自动清理 MSSQL Server Table Collation问题的解决方法_MsSql

在一个团队项目中,没有约定好Collation, 在 MS SQL Server中编程就会遇到这样的问题:Cannot resolve the collation conflict between "Latin1_General_CI_AS" and "SQL_Latin1_General_CP1_CI_AS" in the equal to operation. 因为编码问题,不同编码的字符串并不能直接进行比较,这种有两个解决方法,1是在 query中 指定 用某

mssql server 数据库备份还原方法

mssql server 数据库教程备份还原方法 完全备份: 备份全部选中的文件夹,并不依赖文件的存档属性来确定备份那些文件.(在备份过程中,任何现有的标记都被清除,每个文件都被标记为已备份,换言之,清除存档属性).完全备份也叫完整备份. 差异备份: 差异备份是针对完全备份:备份上一次的完全备份后发生变化的所有文件.(差异备份过程中,只备份有标记的那些选中的文件和文件夹.它不清除标记,即:备份后不标记为已备份文件,换言之,不清除存档属性). 增量备份: 增量备份是针对于上一次备份(无论是哪种备份

Linux下自动备份网站及数据库并发送到邮箱/ftp

自动备份网站及数据库并发送到邮箱 1.SSH登录到VPS,进入到/home/backup目录,新建文件backup.sh,粘贴如下代码并保存: #!/bin/bash # 进入到备份文件夹 cd /home/backup # 创建存放备份文件和数据库的文件夹,并修改权限为777 mkdir -m 777 -p ./backup$(date +"%Y%m%d") # 将需要备份的文件复制到备份文件夹内 cp -r /home/wwwroot ./backup$(date +"%

php使用pdo连接mssql server数据库实例_php技巧

本文实例讲述了利用php的pdo来连接微软的mssql server数据库的方法,分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: $dsn = 'mssql:dbname=bookStore_demo;host=192.168.1.106'; $user = 'sa'; $password = '123';     //mssql_connect('192.168.1.106','sa','123');     //echo 22; try {        // echo 11

mssql server 数据库存储过程转换成mysql数据库(1/2)

mssql server 数据库教程存储过程转换成mysql教程数据库 DELIMITER $$ DROP PROCEDURE IF EXISTS ChangeSequence$$ CREATE PROCEDURE ChangeSequence ( _sign INT ,-- 0: 上移 1:下移  TableName VARCHAR(50) ,-- 表名  ItemName VARCHAR(50) ,-- 主键字段名  ItemID INT , -- 主键ID  SortName VARCHA

在打包程序中自动安装SQL Server数据库 .

原文:在打包程序中自动安装SQL Server数据库 . 1.创建安装项目"Setup1"安装项目 在"文件"菜单上指向"添加项目",然后选择"新建项目". 在"添加新项目"对话框中,选择"项目类型"窗格中的"安装和部署项目",然后选择"模板"窗格中的"安装项目".在"名称"框中键入 "setup1

mssql server数据库重命名方法

mssql server数据库重命名方法 create proc killspid (@dbname varchar(20))         as         begin         declare     @sql     nvarchar(500),@temp   varchar(1000)     declare     @spid     int         set     @sql='declare     getspid     cursor     for