sql数据库备份脚本
A. windows server2008系统实现mysql自动备份数据库脚本
路径有空格的话 需要添加引号
@echooff
set"Ymd=%date:~,4%%date:~5,2%%date:~8,2%"
C:"ProgramFiles"MySQL"MySQLServer5.1"inmysqlmp.exe--opt-uroot--password=rootwelfare>D:data_backwelfare_%Ymd%.sql
@echoon
B. sqlserver怎么用SQL语句备份和恢复数据库跟怎么导出脚本
都是在节目操作的
如果先迁移备份 可以指定循环备份到指定目录 然后使用ftp或同步软件把备份文件移走
C. 如何使用脚本批量恢复数据库备份
蛙蛙推荐:利用WMI脚本批量恢复SQLSERVER数据库
问题提出
蛙蛙求助:以编程的方式还原sqlserver数据库问题
我有一个目录下面都是sqlserver的数据库备份文件,比如a.bak,b.bak,c.bak等,有没有办法一下把他们都还原到本地SQLSERVER数据库里面呀,过程是自动建立a,b,c这样的数据库,然后把a.bak恢复到a,b.bak恢复到b,依次类推,因为备份文件的原路径和新库的路径不一样,所以要有一些额外处理,谁能解决一下,因为这个目录下有几十个库的备份文件呢,现在我的机器新安装了一个SQLSERVER,要把他们全部恢复,当时没有分离库,所以不能直接附加.
设计方案
可以利用WMI脚本扫描存放数据库备份文件的目录,然后按照一定的规则生成一个恢复数据库的T-sql脚本文件,然后用脚本执行osql程序来执行这个脚本完成数据库恢复,这里没有使用过多的错误处理和事务的代码,因此要人为的确定数据库恢复的T-SQL语句尽量不要引发异常。
解决方案
一、我们先来看一下恢复数据库的T-SQL命令,以便理解后面通过脚本来创建T-SQL的原理
USE master
GO
--如果要创建的数据库已经存在,那么删除它
IF EXISTS (SELECT name FROM master.dbo.sysdatabases WHERE name = N'article')
DROP DATABASE [article]
GO
--创建一个新数据库,要指定新建数据库的数据文件和日志文件的名称和位置,初始化大小
--增长幅度,最大值等内容
CREATE DATABASE article
ON
( NAME = N'article_dat',
FILENAME = N'd:\sql2000\MSSQL\data\article_Data.MDF',
SIZE = 1,
MAXSIZE = 50,
FILEGROWTH = 5 )
LOG ON
( NAME = N'article_log',
FILENAME = N'd:\sql2000\MSSQL\data\article_Log.LDF',
SIZE = 1MB,
MAXSIZE = 25MB,
FILEGROWTH = 5MB )
GO
--把指定的数据库备份文件恢复到刚刚建立的数据库里,这里要指定数据库备份文件的位置
--以及要恢复到的数据库,因为备份文件来自未知的机器,备份的时候原数据库和新数据库
--的数据文件和日志文件的位置不匹配,所以要用with move指令来完成强制文件移动,如果
--是通过管理器备份的数据库文件,数据库文件和日志文件名分别是数据库名跟上"_Data"或
--"_Log",这是一个假设哦,如果不是这样,脚本有可能会出错
RESTORE DATABASE [article]
FROM DISK = 'E:\windowdatabase\article.bak'
WITH
MOVE 'article_Data' TO 'd:\sql2000\MSSQL\data\article_Data.MDF',
MOVE 'article_Log' TO 'd:\sql2000\MSSQL\data\article_Log.LDF'
GO
从中可以看到T-SQL的强大。
D. SQL怎样用SQL语句备份一张数据表
“AS 附近有语法错误”这个提示应该是SQL SERVER的,可见楼主是在SQL Server里执行的,而create table ... as是ORACLE的语句,在SQL Server里是不能执行的,SQL Server里类似的就是select * into person_backup from person。
E. SQL语句:怎么对某个数据库中的数据表进行备份与还原
1、导出整个数据库:包括表结构和数据部分
mysqlmp -u 用户名 -p 数据库名 > 导出的文件名
例如:mysqlmp –u root –p 111111 test1 > test.sql
2、导出数据库中的一个表
mysqlmp -u 用户名 -p 数据库名 表名> 导出的文件名
例如:mysqlmp –u root –p 111111 test1 user1> test1_user1.sql
3、导出多张表:
mysqlmp –u root –p 111111 test1 user1 user2> test1_user12.sql
4、导出一个数据库结构:只导出表结构,不包括数据部分
mysqlmp -u root –p 111111 -d --add-drop-table test1>c:\test1.sql
-d 没有数据
--add-drop-table 在每个 create 语句之前增加一个 drop table,以便于在每次导入
表到数据库中时,如果发现某个表存在,先进行删除。
5、导入数据库
采用 source 命令,进入到 mysql 数据库控制台。例如:
c:\>mysql -u root –p 111111
mysql>use test1 //改变当前数据库为 test1 数据库,注意 test1数据库要先建好
然后使用 source 命令,后面参数为脚本文件(如前面备份的.sql 语句文件)
mysql>source c:\test1.sql
F. sql server 2005 自动备份问题 我要备份脚本
这一般常用三种方法可以备份远程的服务器数据库。
1.用维护计划。把备份的维护计划做好,在客户端执行作业中的维护计划即可。
2.建立一个作业。在作业中写备份的脚本。然后在客户端执行作业即可。
3.把备份的SQL脚本在客户端执行。
G. sql脚本导入数据库,数据库sql脚本如何导入
一 备份数据库
1 选择某一个数据库,右键依次选择:任务==》生成脚本;
2 选择要编写脚本的数据库对象,注意此处可以选择特定的数据库对象,我们可以选择我们需要备份的数据表。
3 在当前页面下面第一步选择高级选项,然后再选择输出的sql脚本的保存位置。
4 高级选项中最重要的一步就是在”要编写的脚本的数据类型“中选择第一项“架构和数据”,这个默认是选择“仅限架构”,这个选项只会复制数据库的表结构而不会复制数据库的具体数据。
5 我们可以查看具体的导出的脚本和数据。
二 还原数据库
1 在一个新的数据库实例中创建一个一模一样的空的数据库,名称也为IGIS。
2 通过:文件==》打开文件,打开刚开始导出的脚本文件。
3 选择执行或者是按下F5来执行相应的操作,就可以将相应的数据库里面的数据表结构和数据导入到新的数据库中,最终完成数据库的备份工作。
H. SQL Server远程定时备份数据库脚本分享
经常会有定时备份SQL
Server数据库的需要。定时备份到本机的话,还是挺容易的,计划任务就可以完成,但如果是整机挂了,那备份到本机是没意义的,那么就需要来考虑备份到局域网中,其它电脑里。
下面就分享一份在网上找了之后,自己再简单整理过的代码,配合
SQL
Server
代理中的作业功能,已经稳定运行一个星期了,每小时就备份一次。
复制代码
代码如下:
--
创建网络映射(Y是盘符;IP地址后面要带共享文件夹的名称;password是密码,双引号引起;account是远程电脑的登录名)
exec
master..xp_cmdshell
'net
use
Y:
\\192.168.0.69\sqlbackup
"password"
/user:192.168.0.69\account'
--
按日期时间做文件名(注意路径中的文件夹,需要先建立好)
declare
@filename
varchar(200)
select
@filename
=
'Y:\DB\'
+
replace(replace(replace(CONVERT(varchar,
getdate(),
120
),'-',''),'
','-'),':','')
+
'.bak'
--
执行备份(DB是要备份的数据库名称)
backup
database
[DB]
to
disk
=
@filename
--
删除网络映射(Y是盘符,同上)
exec
master..xp_cmdshell
'net
use
Y:
/delete'
I. 用C#写脚本实现sql数据表的备份(就是生成包含所有insert语句的sql文件)怎么写
没必要用正则,str_replace就可以了,效率还高
str_replace("height=\"480\"","height=\"480\" id=\"videoObject\"",$body);
正则替换的话就这样
preg_replace("/height=\"480\"/is","height=\"480\" id=\"videoObject\"",$body);