精华内容
下载资源
问答
  • 数据库备份语句

    千次阅读 2015-07-24 17:28:41
    BACKUP DATABASE [WebDB] TO DISK = 'D:\BACKUP\WebDb.bak' WITH INIT , NOUNLOAD , NAME = N'WebDB的备份说明?', NOSKIP , STATS = ...如果需要自动备份,那么就在数据库作业里面定时执行此存储过程,eg:exec backDb
    BACKUP DATABASE [WebDB] TO DISK = 'D:\BACKUP\WebDb.bak' WITH NOINIT , NOUNLOAD , NAME = N'WebDB的备份说明?', NOSKIP , STATS = 10, NOFORMAT  


    如果需要每天自动备份,那么就在数据库作业里面定时执行此存储过程。


    INIT是覆盖NOINIT是追加。覆盖操作仅保存最后一次的...

    展开全文
  • MySQL 导出建表建存储过程语句(备份)

    千次阅读 2012-04-24 00:41:06
    4.导出一个数据库所有存储过程   mysqldump -u name -p -ntd -R database > /home/areskris/prcedure.sql 5.导入数据库  常用source 命令  进入mysql数据库控制台,  如mysql -u root -p ...

    版本一:

    导出(只导数据结构)

    [areskris@AresKris-Acer ~]$ mysqldump -u root -p -d --add-drop-table 数据库名字 > 导出的文件名

    导出(包括数据)

    [areskris@AresKris-Acer ~]$ mysqldump -u root -p --add-drop-table 数据库名字 > 导出的文件名

    全数据库

    [areskris@AresKris-Acer ~]$ mysqldump -u root -p --all-database > backup.sql


    导入:

    [areskris@AresKris-Acer ~]$ source /home/areskris/mysql-study/InsertTest.sql   (某些GUI工具中,需要备份的文件版本要一致)

    [areskris@AresKris-Acer ~]$ mysql -uroot -proot test < /home/areskris/Mysql-study/insertTest.sql


    版本二:

    1.导出整个数据库

      mysqldump -u 用户名 -p 数据库名 > 导出的文件名

      mysqldump -u name -pwordpass databasename > /home/areskris/database.sql

    2.导出一个表

      mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名

      mysqldump -u name -p wordpass tablename > /home/areskris/table.sql

    3.导出一个数据库结构

      mysqldump -u name -p -d --add-drop-table database > /home/areskris/db_desc.sql

      -d 没有数据 --add-drop-table 在每个create语句之前增加一个drop table

    4.导出一个数据库所有存储过程

            mysqldump -u name -p -ntd -R database > /home/areskris/prcedure.sql

    5.导入数据库

      常用source 命令

      进入mysql数据库控制台,

      如mysql -u root -p

      mysql>use 数据库

      然后使用source命令,后面参数为脚本文件(如这里用到的.sql)

      mysql>source /home/areskris/db_desc.sql


    展开全文
  • db2 "export to /odsdata/spsp.sql of del lobs to /odsdata lobfile sp.del modified by lobsinfile select text from syscat.routines where routineschema='ODS' and routinetype='P'" 转载于:...

    db2 "export to /odsdata/spsp.sql of del lobs to /odsdata lobfile sp.del modified by lobsinfile select text from syscat.routines where routineschema='ODS' and routinetype='P'"

    转载于:https://www.cnblogs.com/cbw940920/p/7714710.html

    展开全文
  • 数据库的备份语句

    千次阅读 2008-06-16 10:25:00
    利用T-SQL语句,实现数据库的备份与还原的功能体现了SQL Server中的四个知识点: 1. 获取SQL Server服务器上的默认目录 2. 备份SQL语句的使用 3. 恢复SQL语句的使用,同时考虑了强制恢复时关闭其他用户进程的...
    利用T-SQL语句,实现数据库的备份与还原的功能

    体现了SQL Server中的四个知识点:

    1.   获取SQL Server服务器上的默认目录

    2.   备份SQL语句的使用

    3.   恢复SQL语句的使用,同时考虑了强制恢复时关闭其他用户进程的处理

    4.   作业创建SQL语句的使用

     

    /*1.--得到数据库的文件目录    @dbname 指定要取得目录的数据库名    如果指定的数据不存在,返回安装SQL时设置的默认数据目录    如果指定NULL,则返回默认的SQL备份目录名 --邹建 2003.10(引用请保留此信息)--*/
    /*--调用示例  select 数据库文件目录=dbo.f_getdbpath('tempdb')   ,[默认SQL SERVER数据目录]=dbo.f_getdbpath('')   ,[默认SQL SERVER备份目录]=dbo.f_getdbpath(null) --*/ if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[f_getdbpath]') and xtype in (N'FN', N'IF', N'TF')) drop function [dbo].[f_getdbpath] GO
    create function f_getdbpath(@dbname sysname) returns nvarchar(260) as begin  declare @re nvarchar(260)  if @dbname is null or db_id(@dbname) is null   select @re=rtrim(reverse(filename)) from master..sysdatabases where name='master'  else   select @re=rtrim(reverse(filename)) from master..sysdatabases where name=@dbname
     if @dbname is null   set @re=reverse(substring(@re,charindex('/',@re)+5,260))+'BACKUP'  else   set @re=reverse(substring(@re,charindex('/',@re),260))  return(@re) end go
    /*2.--备份数据库
    --邹建 2003.10(引用时请保留此信息)--*/
    /*--调用示例
    --备份当前数据库 exec p_backupdb @bkpath='c:/',@bkfname='db_/DATE/_db.bak'
    --差异备份当前数据库 exec p_backupdb @bkpath='c:/',@bkfname='db_/DATE/_df.bak',@bktype='DF'
    --备份当前数据库日志 exec p_backupdb @bkpath='c:/',@bkfname='db_/DATE/_log.bak',@bktype='LOG'
    --*/
    if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[p_backupdb]') and OBJECTPROPERTY(id, N'IsProcedure') = 1) drop procedure [dbo].[p_backupdb] GO
    create proc p_backupdb @dbname sysname='',   --要备份的数据库名称,不指定则备份当前数据库 @bkpath nvarchar(260)='', --备份文件的存放目录,不指定则使用SQL默认的备份目录 @bkfname nvarchar(260)='', --备份文件名,文件名中可以用/DBNAME/代表数据库名,/DATE/代表日期,/TIME/代表时间 @bktype nvarchar(10)='DB', --备份类型:'DB'备份数据库,'DF' 差异备份,'LOG' 日志备份 @appendfile bit=1   --追加/覆盖备份文件 as  declare @sql varchar(8000)  if isnull(@dbname,'')='' set @dbname=db_name()  if isnull(@bkpath,'')='' set @bkpath=dbo.f_getdbpath(null)  if isnull(@bkfname,'')='' set @bkfname='/DBNAME/_/DATE/_/TIME/.BAK'  set @bkfname=replace(replace(replace(@bkfname,'/DBNAME/',@dbname)   ,'/DATE/',convert(varchar,getdate(),112))   ,'/TIME/',replace(convert(varchar,getdate(),108),':',''))  set @sql='backup '+case @bktype when 'LOG' then 'log ' else 'database ' end +@dbname   +' to disk='''+@bkpath+@bkfname   +''' with '+case @bktype when 'DF' then 'DIFFERENTIAL,' else '' end   +case @appendfile when 1 then 'NOINIT' else 'INIT' end  print @sql  exec(@sql) go
     
    /*3.--恢复数据库
    --邹建 2003.10(引用时请保留此信息)--*/
    /*--调用示例 --完整恢复数据库 exec p_RestoreDb @bkfile='c:/db_20031015_db.bak',@dbname='db'
    --差异备份恢复 exec p_RestoreDb @bkfile='c:/db_20031015_db.bak',@dbname='db',@retype='DBNOR' exec p_backupdb @bkfile='c:/db_20031015_df.bak',@dbname='db',@retype='DF'
    --日志备份恢复 exec p_RestoreDb @bkfile='c:/db_20031015_db.bak',@dbname='db',@retype='DBNOR' exec p_backupdb @bkfile='c:/db_20031015_log.bak',@dbname='db',@retype='LOG'
    --*/
    if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[p_RestoreDb]') and OBJECTPROPERTY(id, N'IsProcedure') = 1) drop procedure [dbo].[p_RestoreDb] GO
    create proc p_RestoreDb @bkfile nvarchar(1000),  --定义要恢复的备份文件名 @dbname sysname='',      --定义恢复后的数据库名,默认为备份的文件名 @dbpath nvarchar(260)='', --恢复后的数据库存放目录,不指定则为SQL的默认数据目录 @retype nvarchar(10)='DB', --恢复类型:'DB'完事恢复数据库,'DBNOR' 为差异恢复,日志恢复进行完整恢复,'DF' 差异备份的恢复,'LOG' 日志恢复 @filenumber int=1,   --恢复的文件号 @overexist bit=1,        --是否覆盖已经存在的数据库,仅@retype为 @killuser bit=1       --是否关闭用户使用进程,仅@overexist=1时有效 as declare @sql varchar(8000)
    --得到恢复后的数据库名 if isnull(@dbname,'')=''  select @sql=reverse(@bkfile)   ,@sql=case when charindex('.',@sql)=0 then @sql    else substring(@sql,charindex('.',@sql)+1,1000) end   ,@sql=case when charindex('/',@sql)=0 then @sql    else left(@sql,charindex('/',@sql)-1) end   ,@dbname=reverse(@sql)
    --得到恢复后的数据库存放目录 if isnull(@dbpath,'')='' set @dbpath=dbo.f_getdbpath('')
    --生成数据库恢复语句 set @sql='restore '+case @retype when 'LOG' then 'log ' else 'database ' end+@dbname  +' from disk='''+@bkfile+''''  +' with file='+cast(@filenumber as varchar)  +case when @overexist=1 and @retype in('DB','DBNOR') then ',replace' else '' end  +case @retype when 'DBNOR' then ',NORECOVERY' else ',RECOVERY' end print @sql --添加移动逻辑文件的处理 if @retype='DB' or @retype='DBNOR' begin  --从备份文件中获取逻辑文件名  declare @lfn nvarchar(128),@tp char(1),@i int
     --创建临时表,保存获取的信息  create table #tb(ln nvarchar(128),pn nvarchar(260),tp char(1),fgn nvarchar(128),sz numeric(20,0),Msz numeric(20,0))  --从备份文件中获取信息  insert into #tb exec('restore filelistonly from disk='''+@bkfile+'''')  declare #f cursor for select ln,tp from #tb  open #f  fetch next from #f into @lfn,@tp  set @i=0  while @@fetch_status=0  begin   select @sql=@sql+',move '''+@lfn+''' to '''+@dbpath+@dbname+cast(@i as varchar)    +case @tp when 'D' then '.mdf''' else '.ldf''' end    ,@i=@i+1   fetch next from #f into @lfn,@tp  end  close #f  deallocate #f end
    --关闭用户进程处理 if @overexist=1 and @killuser=1 begin  declare @spid varchar(20)  declare #spid cursor for   select spid=cast(spid as varchar(20)) from master..sysprocesses where dbid=db_id(@dbname)  open #spid  fetch next from #spid into @spid  while @@fetch_status=0  begin    exec('kill '+@spid)   fetch next from #spid into @spid  end   close #spid  deallocate #spid end
    --恢复数据库 exec(@sql)
    go
    /*4.--创建作业
    --邹建 2003.10(引用时请保留此信息)--*/
    /*--调用示例
    --每月执行的作业 exec p_createjob @jobname='mm',@sql='select * from syscolumns',@freqtype='month'
    --每周执行的作业 exec p_createjob @jobname='ww',@sql='select * from syscolumns',@freqtype='week'
    --每日执行的作业 exec p_createjob @jobname='a',@sql='select * from syscolumns'
    --每日执行的作业,每天隔4小时重复的作业 exec p_createjob @jobname='b',@sql='select * from syscolumns',@fsinterval=4
    --*/ if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[p_createjob]') and OBJECTPROPERTY(id, N'IsProcedure') = 1) drop procedure [dbo].[p_createjob] GO
    create proc p_createjob @jobname varchar(100),  --作业名称 @sql varchar(8000),   --要执行的命令 @dbname sysname='',   --默认为当前的数据库名 @freqtype varchar(6)='day', --时间周期,month 月,week 周,day 日 @fsinterval int=1,   --相对于每日的重复次数 @time int=170000   --开始执行时间,对于重复执行的作业,将从0点到23:59分 as if isnull(@dbname,'')='' set @dbname=db_name()
    --创建作业 exec msdb..sp_add_job @job_name=@jobname
    --创建作业步骤 exec msdb..sp_add_jobstep @job_name=@jobname,  @step_name = '数据处理',  @subsystem = 'TSQL',  @database_name=@dbname,  @command = @sql,  @retry_attempts = 5, --重试次数  @retry_interval = 5  --重试间隔
    --创建调度 declare @ftype int,@fstype int,@ffactor int select @ftype=case @freqtype when 'day' then 4      when 'week' then 8      when 'month' then 16 end  ,@fstype=case @fsinterval when 1 then 0 else 8 end if @fsinterval<>1 set @time=0 set @ffactor=case @freqtype when 'day' then 0 else 1 end
    EXEC msdb..sp_add_jobschedule @job_name=@jobname,  @name = '时间安排',  @freq_type=@ftype ,      --每天,8 每周,16 每月  @freq_interval=1,     --重复执行次数  @freq_subday_type=@fstype,   --是否重复执行  @freq_subday_interval=@fsinterval,  --重复周期  @freq_recurrence_factor=@ffactor,  @active_start_time=@time     --下午17:00:00分执行
    go
    /*--应用案例--备份方案: 完整备份(每个星期天一次)+差异备份(每天备份一次)+日志备份(每2小时备份一次)
    调用上面的存储过程来实现 --*/
    declare @sql varchar(8000) --完整备份(每个星期天一次) set @sql='exec p_backupdb @dbname=''要备份的数据库名''' exec p_createjob @jobname='每周备份',@sql,@freqtype='week'
    --差异备份(每天备份一次) set @sql='exec p_backupdb @dbname=''要备份的数据库名'',@bktype='DF'' exec p_createjob @jobname='每天差异备份',@sql,@freqtype='day'
    --日志备份(每2小时备份一次) set @sql='exec p_backupdb @dbname=''要备份的数据库名'',@bktype='LOG'' exec p_createjob @jobname='每2小时日志备份',@sql,@freqtype='day',@fsinterval=2
    /*--应用案例2
    生产数据核心库:PRODUCE
    备份方案如下:  1.设置三个作业,分别对PRODUCE库进行每日备份,每周备份,每月备份  2.新建三个新库,分别命名为:每日备份,每周备份,每月备份  3.建立三个作业,分别把三个备份库还原到以上的三个新库。
    目的:当用户在produce库中有任何的数据丢失时,均可以从上面的三个备份库中导入相应的TABLE数据。 --*/
    declare @sql varchar(8000)
    --1.建立每月备份和生成月备份数据库的作业,每月每1天下午16:40分进行: set @sql=' declare @path nvarchar(260),@fname nvarchar(100) set @fname=''PRODUCE_''+convert(varchar(10),getdate(),112)+''_m.bak'' set @path=dbo.f_getdbpath(null)+@fname
    --备份 exec p_backupdb @dbname=''PRODUCE'',@bkfname=@fname
    --根据备份生成每月新库 exec p_RestoreDb @bkfile=@path,@dbname=''PRODUCE_月''
    --为周数据库恢复准备基础数据库 exec p_RestoreDb @bkfile=@path,@dbname=''PRODUCE_周'',@retype=''DBNOR''
    --为日数据库恢复准备基础数据库 exec p_RestoreDb @bkfile=@path,@dbname=''PRODUCE_日'',@retype=''DBNOR'' ' exec p_createjob @jobname='每月备份',@sql,@freqtype='month',@time=164000
    --2.建立每周差异备份和生成周备份数据库的作业,每周日下午17:00分进行: set @sql=' declare @path nvarchar(260),@fname nvarchar(100) set @fname=''PRODUCE_''+convert(varchar(10),getdate(),112)+''_w.bak'' set @path=dbo.f_getdbpath(null)+@fname
    --差异备份 exec p_backupdb @dbname=''PRODUCE'',@bkfname=@fname,@bktype=''DF''
    --差异恢复周数据库 exec p_backupdb @bkfile=@path,@dbname=''PRODUCE_周'',@retype=''DF'' ' exec p_createjob @jobname='每周差异备份',@sql,@freqtype='week',@time=170000
    --3.建立每日日志备份和生成日备份数据库的作业,每周日下午17:15分进行: set @sql=' declare @path nvarchar(260),@fname nvarchar(100) set @fname=''PRODUCE_''+convert(varchar(10),getdate(),112)+''_l.bak'' set @path=dbo.f_getdbpath(null)+@fname
    --日志备份 exec p_backupdb @dbname=''PRODUCE'',@bkfname=@fname,@bktype=''LOG''
    --日志恢复日数据库 exec p_backupdb @bkfile=@path,@dbname=''PRODUCE_日'',@retype=''LOG'' ' exec p_createjob @jobname='每周差异备份',@sql,@freqtype='day',@time=171500
     
    展开全文
  •  file表示的是导出文件存储的路径及文件名  oracle11g导出语句存在问题,不能把空表导出来,它的原因及解决的办法如下:    1、Oracle11g默认对空表不分配segment,故使用exp导出Oracle11g数据库时,空表不会...
  • ITPUB个人空间 Q/E o i }.e D%z O 如果 DB2 v8 的用户需要提取数据库所有存储过程的定义,即用 CREATE PROCEDURE 创建存储过程语句,以便保留或在其它数据库环境下重新创建这些存储过程,可尝试如下介绍的三种...
  • 存储过程备份和还原sqlserver

    千次阅读 2016-08-02 18:55:55
    数据库列表:帐套数据库与系统数据库列表。...首先在master数据库建立3个存储过程及一个备份历史表: 1. p_BackupDB 2. p_RestoreDB 3. p_CreateJob 4. sys_BackupHistory --备份历史表 (脚本在下面找)
  • 存储过程(自动备份数据)

    千次阅读 2016-01-15 14:46:55
    1、(银行)将经常要执行的sql语句写成储存过程储存在数据库中,可以提高执行效率。 2、储存过程的真正作用在于数据整合等复杂的业务操作。 3、在数据库开发领域中,存储过程是用作数据整合,数据接口,数据备份等...
  • oracle中利用存储过程备份所有表

    千次阅读 2018-05-31 20:38:05
    当没有expdp的权限时,通过存储过程复制表空间的所有表作为备份: declare command varchar2(1000); begin for cc in (select table_name from user_tables where tablespace_name='USERS' AND table_name like '...
  • 首先在一个数据库中有一张user表,里面有一些数据,我们想把它通过存储过程备份到user_arc(本来没有的表)中。储存过程的sql如下:   DELIMITER $$ USE `nn`$$ DROP PROCEDURE IF EXISTS `arcUser`$$ -- ...
  • 一、创建存储过程 Procedure,用于执行备份重要表及数据相关命令 CREATE OR REPLACE PROCEDURE Pro_Back_TableName IS /* 存储过程描述:该存储过程用于备份表及数据。 */ BEGIN -- 执行命令:删除原备份表 ...
  • sql备份语句总结

    千次阅读 2008-07-04 09:09:00
    备份整个数据库: BACKUP DATABASE { database_name | @database_name_var } TO [ ,...n ] [ WITH [ BLOCKSIZE = { blocksize | @blocksize_variable } ] [ [ , ] DESCRIPTION = { text | @text_va
  • 存储过程过程,可以简单理解为是一个函数。 – 函数和过程的区别:函数总是向调用者返回数据,而过程没有数据返回。 – Oracle 可以将 PL/SQL 代码存储在数据库中,然后可以提供给其他地方来运行它。 – ...
  • 我现在的做法是把备份语句写成存储过程,应用程序里有一个时钟,半小时调用一次存储过程,有管理员权限才可以调用。但是如果管理员下线,应用程序关闭了就不能备份。网上有用sqlserver维护计划实现自动备份数据库的...
  • create table #backDB(name varchar(20))... insert into #backDB(name)values('Member') --创建一条语句表示需要备份的数据库 declare @name varchar(20) set @name='' select top 1 @name=name from #backDB ...
  • sqlserver用语句备份,怎样把数据库里的存储过程和函数也一起备份
  • 1.删除存储过程 2.备份data表 3.删除data表 */ DECLARE  V_SQL VARCHAR2(2000);--删除的语句 CURSOR C1 IS --要删除的存储过程名 select * from (  select distinct upper(owner)||'.'||upper(object_name) ...
  • Sql Server 2014存储过程备份和恢复... 1 1、 备份存储过程:... 1 2、 还原... 8 Sql Server 2014存储过程备份和恢复 1、 备份存储过程: 在数据库管理软件中先备份存储过程 操作步骤:数据库—》可编程...
  • 在数据库编程过程中经常会用到存储过程 , 相比 SQL 语句 , 存储过程更方便 , 快速 , 安全 ; 先将存储过程的相关介绍和使用方法总结如下 ; 1. 存储过程的概念 存储过程 (Stored Procedure) 是...
  • backup database 语句要怎样才能把数据库的存储过程,自定义函数也备份
  • Sqlserver备份存储过程

    千次阅读 2018-06-13 19:38:07
    查了网上找不到快速备份Sqlserver存储过程的方法,心里想,如果Sqlserver不自带这个功能,真是太low了。步骤1:打开存储过程文件夹步骤2:按 F7 键,打开“对象资源管理器详细信息”窗口步骤3:点击“存储过程”...
  • 可以支持导出单表的建表语句,也可以支持单库所有建表语句的导出以及同服务器跨库建表语句的导出。
  • 一、创建备份数据库的存储过程 /****** Object: Procedure [dbo].[SP_BackUp_DataBase_Log] Script Date: 3/10/2017 2:17:36 PM ******/ USE [master]; GO SET ANSI_NULLS ON; GO SET QUOTED_IDENTIFIER ON; GO ...
  • 表A sheet1$,表B T_DICT,要利用表A的数据更新表B中关联的数据: UPDATE T_DICT SET BASYBM0= sheet1$.病案费用编码 FROM sheet1$ WHERE sheet1$....将表t_dict备份为t_dictback select * into t_dic
  • 一些存储过程中能用到的语句--执行生成的SQL语句exec sp_executesql @sql--执行存储过程exec proc @参数--事务begin transaction acommit transaction a--备份数据库ALTER PROCEDURE backupdatabase @database ...
  • oracle 语句备份

    2019-01-16 17:34:00
    --connect sys/sys;create tablespace TS_YBHK LOGGING datafile 'R:\...(服务器上具体地址)\ts_ybhk0001.dat' size 1024M autoextend on next 200M extent management local segment space management auto ;...
  • Mysql备份存储过程

    2012-05-02 20:45:13
    备份存储过程: mysqldump –skip-opt -t -d -R -uusername -p dbname >sp_dbname.sql 把存储过程和数据库一起备份: mysqldump –opt -R -uusername -p dbname >dbname.sql -d: –no-data -t: –no-...
  • 用户进程已经跟服务器进程建立连接,并把该用户进程的信息存储到 PGA 的 UGA 中   3. 语句经过 PGA 处理后传递给实例   4. 实例中的共享池负责处理这条语句。共享池处理:首先在库缓存区去判断语句...
  • 需要指出下面这些存储过程是在网上搜索到的。谢谢代码的提供者。在此转载 利用T-SQL语句,实现数据库的备份与还原的功能 体现了SQL Server中的四个知识点: 1. 获取SQL Server服务器上的默认目录 2. 备份SQL...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 120,184
精华内容 48,073
关键字:

存储过程备份语句