当前位置:首页 » 编程语言 » sqlmdf修复
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

sqlmdf修复

发布时间: 2022-07-25 17:39:25

Ⅰ 怎样修复已经损坏的sql数据库

有两种方法,一种方法使用mysql的check table和repair table 的sql语句,另一种方法是使用MySQL提供的多个myisamchk, isamchk数据检测恢复工具。

前者使用起来比较简便。推荐使用。

1、check table 和 repair table 登陆mysql 终端: mysql -uxxxxx -p dbname check table tabTest;

如果出现的结果说Status是OK,则不用修复,如果有Error,可以用: repair table tabTest; 进行修复,修复之后可以在用check table命令来进行检查。

在新版本的phpMyAdmin里面也可以使用check/repair的功能。

2. myisamchk, isamchk 其中myisamchk适用于MYISAM类型的数据表,而isamchk适用于ISAM类型的数据表。

这两条命令的主要参数相同,一般新的系统都使用MYISAM作为缺省的数据表类型,这里以myisamchk为例子进行说明。

当发现某个数据表出现问题时可以使用: myisamchk tablename.MYI 进行检测,如果需要修复的话,可以使用: myisamchk -of tablename.MYI 关于myisamchk的详细参数说明,可以参见它的使用帮助。

需要注意的时在进行修改时必须确保MySQL服务器没有访问这个数据表,保险的情况下是最好在进行检测时把MySQL服务器Shutdown掉。

2、另外可以把下面的命令放在你的rc.local里面启动MySQL服务器前: [ -x /tmp/mysql.sock ] && /pathtochk/myisamchk -of /DATA_DIR/*/*.MYI 。

其中的/tmp/mysql.sock是MySQL监听的Sock文件位置,对于使用RPM安装的用户应该是/var/lib/mysql/mysql.sock,对于使用源码安装则是/tmp/mysql.sock可以根据自己的实际情况进行变更,而pathtochk则是myisamchk所在的位置,DATA_DIR是你的MySQL数据库存放的位置。

需要注意的是,如果你打算把这条命令放在你的rc.local里面,必须确认在执行这条指令时MySQL服务器必须没有启动!

最后检测修复所有数据库(表)。

Ⅱ 整个SQL被删了,我把数据库文件.mdf和.log文件恢复回来了,但不知道如何恢

很简单一个数据库最重要的就是这两个文件你可以有两种方法1
直接覆盖
新建一个数据库
把两个文件覆盖到对应数据库的文件上2
用还原的方法,
其原理是和1一样的
选择设备后
在强制还原下
要在事务日记里选择你新建的数据库文件的路径
一般只有一个数据库时不用选择系统会自动找到。

Ⅲ Sql数据库MDF数据文件怎么数据恢复

直接在SQL管理那里,附加进去就可以了,,这就是SQL的数据文件直接分离出来的,并不是备份或者其它方式。相当于,直接从数据库文件夹拷出来的,所以你直接附加回去就可以了。

Ⅳ 如何恢复/修复SQL Server的MDF文件

如果备份的数据库有2个文件,分别是.LDF 和 .MDF,打开企业管理器,在实例上右击---所有任务--附加数据库,然后选择那个.MDF文件,就可以了。 或者在查询分析器中输入: sp_attach_db 数据库名称,路径\文件名.ldf,路径\文件名.MDF SQL Server数据库备份有两种方式,一种是使用BACKUP DATABASE将数据库文件备份出去,另外一种就是直接拷贝数据库文件mdf和日志文件ldf的方式。下面将主要讨论一下后者的备份与恢复。本文假定您能熟练使用SQL Server Enterprise Manager(SQL Server企业管理器)和SQL Server Quwey Analyser(SQL Server查询分析器) 1、正常的备份、恢复方式 正常方式下,我们要备份一个数据库,首先要先将该数据库从运行的数据服务器中断开,或者停掉整个数据库服务器,然后复制文件。 卸下数据库的命令:Sp_detach_db 数据库名 连接数据库的命令:Sp_attach_db或者sp_attach_single_file_db s_attach_db [@dbname =] 'dbname', [@filename1 =] 'filename_n' [,...16] sp_attach_single_file_db [@dbname =] 'dbname', [@physname =] 'physical_name' 使用此方法可以正确恢复SQL Sever7.0和SQL Server 2000的数据库文件,要点是备份的时候一定要将mdf和ldf两个文件都备份下来,mdf文件是数据库数据文件,ldf是数据库日志文件。 卸下数据库:sp_detach_db 'test' 连接数据库: sp_attach_db 'test','C:\Program Files\Microsoft SQL Server\MSSQL\Data\test_data.mdf','C:\Program Files\Microsoft SQL Server\MSSQL\Data\test_log.ldf' sp_attach_single_file_db 'test','C:\Program Files\Microsoft SQL Server\MSSQL\Data\test_data.mdf' 2、只有mdf文件的恢复技术 由于种种原因,我们如果当时仅仅备份了mdf文件,那么恢复起来就是一件很麻烦的事情了。 如果您的mdf文件是当前数据库产生的,那么很侥幸,也许你使用sp_attach_db或者sp_attach_single_file_db可以恢复数据库,但是会出现类似下面的提示信息 设备激活错误。物理文件名 'C:\Program Files\Microsoft SQL Server\MSSQL\data\test_Log.LDF' 可能有误。 已创建名为 'C:\Program Files\Microsoft SQL Server\MSSQL\Data\test_log.LDF' 的新日志文件。

Ⅳ SQL数据库覆盖能恢复么.mdf文件

1、把mdf文件和ldf文件拷贝到数据库的默认路径C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA里;
2、在sqlserver里新建个查询,执行下面代码;
USE master;

GO
CREATE DATABASE NewFile
ON (FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\File.mdf'),
(FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\File_log.ldf')
FOR ATTACH;
GO
3、刷新数据库,就出现了新的数据库NewFile;
根据mdf文件和ldf文件还原成功!

Ⅵ SQL恢复master数据库方法 只有mdf文件的数据库如何恢复

首先先和大家讲一讲SQL
Server恢复master数据库方法,具体步骤如下
第一步:复制model.mdf、mastlog.ldf、model.mdf、modellog.ldf、msdbdata.mdf、msdblog.ldf文件。
从X:\Program
Files\Microsoft
SQL
Server\MSSQL10.MSSQLSERVER\MSSQL\Binn\Templates
至X:\Program
Files\Microsoft
SQL
Server\MSSQL10.MSSQLSERVER\MSSQL\DATA
注:以上“X:\Program
Files\Microsoft
SQL
Server”为SQL
Server的安装目录。以下的“C:\Program
Files\Microsoft
SQL
Server”为系统盘下的目录
第二步:定位并执行安装命令
1.
首先找到安装命令:C:\Program
Files\Microsoft
SQL
Server\100\Setup
Bootstrap\Release\setup.exe
2.
执行命令
如果只是Windows身份验证模式,只需要如下语法即可:
复制代码
代码如下:setup
/ACTION=REBUILDDATABASE
/QUIET
/INSTANCENAME=<instance
name>
/SQLSYSADMINACCOUNTS=<accounts>
如果是复合身份验证模式,则需要使用/SAPWD参数提供sa的密码:
复制代码
代码如下:setup
/ACTION=REBUILDDATABASE
/QUIET
/INSTANCENAME=<instance
name>
/SQLSYSADMINACCOUNTS=<accounts>
/SAPWD=<sa
password>
我安装时设置的是复合认证模式,SQL
Server系统管理员帐号是administrators组,sa密码是123456。并且就一个默认实例:MSSQLSERVER。
所以在命令行执行如下命令:
复制代码
代码如下:setup
/ACTION=REBUILDDATABASE
/QUIET
/INSTANCENAME=MSSQLSERVER
/SQLSYSADMINACCOUNTS=administrators
/SAPWD=123456
第三步:执行完毕后没有任何提示信息(不管成功与否),但是可以马上在C:\Program
Files\Microsoft
SQL
Server\100\Setup
Bootstrap\Log\Summary.txt中查看安装日志。
最后,在Sql
Server
Configuration
Manager中启动SQL
Server服务成功。
在处理过程中出现了这种情况SQL恢复数据库又该怎么办?只有mdf文件时,应当如何进行恢复,即有log文件的数据库如何恢复
SQL恢复数据库具体实现步骤:
1、新建一个同名数据库。
2、停止数据库服务,覆盖新建的数据库主文件(小技巧:最好放在同一个磁盘里面,把新建的数据库主文件删掉或移开,再把要恢复的数据库主文件剪切过去,这样就可以节省时间。)
3、启动数据库服务,数据库变为置疑或可疑状态。然后在查询分析器中运行:
alter
database
无日志文件的数据库名称
set
emergency
设置为紧急状态。
4、再运行:
alter
database
无日志文件的数据库名称
set
single_user
或者:
Sp_dboption
'无日志文件的数据库名称',
'single
user',
'true'
设置为单用户模式。
5、检查并重建日志文件,运行:
dbcc
checkdb('无日志文件的数据库名称',REPAIR_ALLOW_DATA_LOSS)
这个时间比较长。耐心等待!如果有错误提示,再运行:
dbcc
checkdb('无日志文件的数据库名称',REPAIR_REBUILD)
进行修复。如果没有错误,可以跳过。
6、恢复成多用户模式
alter
database
无日志文件的数据库名称
set
multi_user
或者:
Sp_dboption
'无日志文件的数据库名称',
'single
user',
'false'
刷新数据库,你就可以看到已经修复好的数据库了。
以上就是为大家分享的SQL恢复数据库方法,希望对大家恢复数据库有所帮助。

Ⅶ 如何修复已经损坏的SQL的MDF文件

可以尝试使用覆盖法。新建另外一个数据库,然后停止sql,再将mdf文件复制过去改名一样的,再启动sql。

Ⅷ 求最好的 SQL数据库MDF损坏 SQL数据库MDF损坏修复工具

可以尝试使用覆盖法。新建另外一个数据库,然后停止sql,再将mdf文件复制过去改名一样的,再启动sql。