收缩数据库日志文件的方法(仅适用于mssql2005)

执行以下语句,在执行前将dbname修改为需要瘦身的数据库名称,执行后数据库日志文件将变为1M大小。


代码如下:

backup log dbName with NO_LOG;
backup log dbName with TRUNCATE_ONLY;
DBCC SHRINKDATABASE(dbName);

时间: 2013-02-20

mssql无数据库日志文件恢复数据库的方法第1/2页

方法一 1.新建一个同名的数据库 2.再停掉sqlserver(注意不要分离数据库) 3.用原数据库的数据文件覆盖掉这个新建的数据库 4.再重启sqlserver 5.此时打开企业管理器时会出现置疑,先不管,执行下面的语句(注意修改其中的数据库名) 6.完成后一般就可以访问数据库中的数据了,这时,数据库本身一般还要问题,解决办法是,利用 数据库的脚本创建一个新的数据库,并将数据导进去就行了. USEMASTER GO SP_CONFIGURE'ALLOWUPDATES',1RECONFIGURE

sqlserver 数据库日志备份和恢复步骤

--创建测试数据库 CREATE DATABASE Db GO --对数据库进行备份 BACKUP DATABASE Db TO DISK='c:\db.bak' WITH FORMAT GO --创建测试表 CREATE TABLE Db.dbo.TB_test(ID int) --延时1秒钟,再进行后面的操作(这是由于SQL Server的时间精度最大为百分之三秒,不延时的话,可能会导致还原到时间点的操作失败) WAITFOR DELAY '00:00:01' GO --假设我们现在误操作删

拯救你的数据 通过日志恢复MSSQL数据

这段时间看了关于在SQL server 中通过日志和时间点来恢复数据.也看了一些网上的例子,看如何通过日志来恢复数据. 前提条件: 数据库的故障恢复改为非简单模式,去掉自动关闭和自动收缩两个选项     如果是简单模式:类似下面的语句操作数据就不会记录到日志中:  select * into t from [表名] 这时为保证数据的完整要将数据库的恢复模式改成"完整" 测试环境: 1.建立数据库和测试表         create database zp create table [

mssql自动备份及自动清除日志文件服务器设置

1.每日自动备份 强烈建议有条件的用户进行此操作! 1.打开企业管理器,在控制台根目录中依次点开Microsoft SQL Server--SQL Server组--双击打开你的服务器 2.然后点上面菜单中的工具--选择数据库维护计划器 3.下一步选择要进行自动备份的数据--下一步更新数据优化信息,这里一般不用做选择--下一步检查数据完整性,也一般不选择 4.下一步指定数据库维护计划,默认的是1周备份一次,点击更改选择每天备份后点确定 5.下一步指定备份的磁盘目录,选择指定目录,如您可以在D盘新

删除sqlserver数据库日志和没有日志的数据库恢复办法

一.删除数据库日志文件的方法 你曾经有在执行SQL的时候,数据库报事务日志已满,然后执行报错.然后纠结于怎么删除数据库日志,捣鼓半天吗,现在就提供两种删除日志文件的方法,希望能够帮到你! 方法一:手工操作1.数据库->右键->属性->选项-恢复模式->由完成切换成简单2.数据库->右键->任务->收缩-文件->由完成切换成简单->文件类型->日志->将文件收缩到 方法二:存储过程代替手工操作 复制代码 代码如下: --日志文件收缩至多少M 

MSSQL 监控数据/日志文件增长实现方法

前几天,在所有数据库服务器部署了监控磁盘空间的存储过程和作业后(MS SQL 监控磁盘空间告警),今天突然收到了两封告警邮件,好吧,存储规划是一方面,但是,是不是要分析一下是什么原因造成磁盘空间不足的呢?会不会是因为突然暴增的日志文件,抑或是系统业务猛增导致数据量暴增,还是历史数据累计原因....分析总得有数据来支撑吧,但是现在只有那些数据文件的当前大小信息,没有数据文件的历史增长变化信息,所以,今天就想实现这么一个功能,每天(频率可以调整)去收集一下数据文件的信息,放到一个表里面,这样方便我们

MSSQL 2005/2008 日志压缩清理方法小结

适用于SQL Server 2005的方法 --------------------------------------------- 复制代码 代码如下: USE DNName GO 1,清理日志 复制代码 代码如下: Backup Log DNName WITH no_log GO 2,截断事务日志 复制代码 代码如下: DUMP TRANSACTION DNName WITH no_log GO 3,收缩 两种方式: 1):压缩数据库 DBCC SHRINKDATABASE(库名) GO

sqlserver 日志恢复方法(搞定drop和truncate)

--1 use master backup database logTest to disk='D:\\Program Files\\Microsoft SQL Server\\MSSQL10.MSSQLSERVER\\MSSQL\\Backup\\logTest.bak' with format --2 use logTest create table table_1(Id int, test varchar(max)) insert table_1(Id,test) values (1,'3

清空MSSQL日志 与set recovery simple

由于服务器上的数据库使用很长时间了日志文件已经是好几个了 数据库服务器的一直采用的备份我想应该可以放弃以前的日志文件了所以清理以前的日志文件 我现在想的问题是在利用备份文件恢复的时候 要不要使用到日志文件呢 一会再查资料找下,如果不会的话,就使用简单的数据模式了,节约日志文件占的空间 1.打开查询分析器,输入命令 DUMP TRANSACTION 数据库名称  WITH NO_LOG 2.再打开企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件--选择日志文件--在收缩方式

SQLServer2005 没有日志文件(*.ldf) 只有数据文件(*.mdf) 恢复数据库的方法

复制代码 代码如下: exec sp_attach_db exun,'d:\exun2.mdf' 一句话就可以了. 网上看了那些比较繁琐的,都是sql server 2000版本的. (可能执行一次不能成功,测试了下,有时候需要执行2次以上命令才行) 执行了之后,记得刷新数据库,不然是不会显示的

详解C#把DataTable中数据一次插入数据库的方法

现在实际的情况是这样的: 客户有一台打卡机,员工打卡的信息全部储存在打卡机的Access数据库里面,现在客户引入了一种新的管理系统,需要将Access数据库中的打卡数据同步到SQL Server数据库中,由于时间比较久,数据积累了有40多万条. 软件功能: 选择Access数据库文件,填入目标SQL Server数据库的IP地址,然后开始进行同步. 实现方法: 1.先把Access数据库中要导入的数据存入DataTable中 配置文件中的数据库连接字符串 <connectionStrings>

Mysql单文件存储删除数据文件容量不会减少的bug与解决方法

MySQL的Bug之一:InnoDB ibdata1 never shrinks after data is removed 问题描述 当innodb引擎使用单个文件进行存储的时候,当对数据库中数据进行删除的时候,文件的大小并不会发生变化,意味着文件将会越来越大并且即使删除也没办法 让其释放磁盘的空间. 验证过程 创建一个测试使用的表,如下创建好t这样的一个表. 创建简单的存储过程来批量的插入数据. 查看开始前的文件的大小 当批量插入接近十万的数据后 然后进行删除操作 占用磁盘空间并未减少 解决

sqlserver只有MDF文件恢复数据库的方法

在查询中执行下列语句 EXEC sp_attach_single_file_db @dbname = 'tggov_Data', @physname = 'E:\tggov_Data\www.jb51.net.MDF' 'tggov_Data' 为恢复的数据库名 'E:\tggov_Data\tggov_Data.MDF' 物理文件位置

Append打开指定文件夹中的数据文件就象这些文件在当前文件夹中一样

允许程序打开指定文件夹中的数据文件就象这些文件在当前文件夹中一样.如果在没有参数的情况下使用,则 append 命令显示附加的目录列表. 语法 append [;] [[Drive:]Path[;...]][/x:{on|off}][/path:{on|off}] [/e] 参数 取消附加文件夹列表. [Drive:}Path 指定要附加到当前文件夹的驱动器和文件夹.如果未指定驱动器,将默认使用当前驱动器.可以指定 [Drive:]Path 的多个项,各项之间要用分号隔开. /x:{on | o

Linux下实现MySQL数据备份和恢复的命令使用全攻略

为了保障数据的安全,需要定期对数据进行备份.备份的方式有很多种,效果也不一样.一旦数据库中的数据出现了错误,就需要使用备份好的数据进行还原恢复.从而将损失降到最低.下面我们来了解一下MySQL常见的有三种备份恢复方式: 1.利用Mysqldump+二进制日志实现备份 2.利用LVM快照+二进制日志实现备份 3.使用Xtrabackup备份 一:实验环境介绍: 系统介绍:CentOS6.4_X64 数据库版本:mysql-5.5.33 二:基于Mysqldump命令实现备份恢复 2.1.思路概念

C#实现Excel表数据导入Sql Server数据库中的方法

本文实例讲述了C#实现Excel表数据导入Sql Server数据库中的方法.分享给大家供大家参考,具体如下: Excel表数据导入Sql Server数据库的方法很多,这里只是介绍了其中一种: 1.首先,我们要先在test数据库中新建一个my_test表,该表具有三个字段tid int类型, tname nvarchar类型, tt nvarchar类型 (注意:my_test表中的数据类型必须与Excel中相应字段的类型一致) 2. 我们用SELECT * FROM  OPENROWSET(

oracle 12c因误删pdb数据文件导致整个数据库打不开的解决方法

前言 最近因为一位同事误删了某个插件数据库(PDB)的数据文件,结果整个数据库,包括容器数据库(CDB),以及其他插件数据库都用不了了.无奈...通过尝试各种方法最终解决了,觉着有必要将解决的过程分享出来,方法大家参考学习,下面话不多说了,来一起看看详细的介绍吧. 方法如下: 1.用sys账号进入实例,可见容器数据库处于mounted状态:插在上面的所有PDB当然也都是mounted. sqlplus sys/pwd@orcl12c as sysdba; 2.试图打开CDB,提示有数据库文件未能

mysql二进制日志文件恢复数据库

二进制日志的文件的作用 mysql二进制日志文件用来记录所有用户对数据库操作,即记录用户对数据库操作的sql语句.如果有此文件,当数据库发生意外时,可以通过此文件查看到用户在此文件记录的时间段内用户所做的操作,再和数据库备份配合使用,即可再现用户操作,使数据库恢复. 二进制日志文件的弊端 二进制日志文件开启后,所有对数据库操作的记录均会被记录到此文件, 所以,当长时间开启之后,日志文件会变得很大,占用磁盘空间. 使用二进制日志文件恢复数据库 开启日志文件 mysql默认是不开启日志文件的功能的,