日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
如何恢復(fù)被誤刪的局域網(wǎng)數(shù)據(jù)庫(kù)?(如何找回局域網(wǎng)刪除的數(shù)據(jù)庫(kù))

作為公司內(nèi)部數(shù)據(jù)交流的基礎(chǔ)設(shè)施之一,局域網(wǎng)數(shù)據(jù)庫(kù)扮演著重要的角色。無(wú)論是人力資源信息、財(cái)務(wù)信息還是進(jìn)銷存等數(shù)據(jù),都可能被存儲(chǔ)在局域網(wǎng)數(shù)據(jù)庫(kù)中,因此其安全性非常重要。但是,在使用過(guò)程中,誤刪局域網(wǎng)數(shù)據(jù)庫(kù)的情況時(shí)有發(fā)生。針對(duì)這種情況,本文將介紹如何恢復(fù)被誤刪的局域網(wǎng)數(shù)據(jù)庫(kù)。

之一步:確認(rèn)誤刪的數(shù)據(jù)庫(kù)類型

在恢復(fù)局域網(wǎng)數(shù)據(jù)庫(kù)之前,首先需要確認(rèn)刪除的是哪一類數(shù)據(jù)庫(kù)。目前局域網(wǎng)數(shù)據(jù)庫(kù)主要有三種類型:Access數(shù)據(jù)庫(kù)、MySQL數(shù)據(jù)庫(kù)和SQL Server數(shù)據(jù)庫(kù)。Access數(shù)據(jù)庫(kù)多數(shù)用于小型企業(yè)中,而MySQL數(shù)據(jù)庫(kù)和SQL Server數(shù)據(jù)庫(kù)則多用于大型企業(yè)。因此,確認(rèn)誤刪數(shù)據(jù)庫(kù)的類型相當(dāng)重要,其對(duì)數(shù)據(jù)庫(kù)恢復(fù)的具體操作有著直接的影響。

第二步:確認(rèn)備份狀態(tài)

誤刪局域網(wǎng)數(shù)據(jù)庫(kù)后,是否有備份的數(shù)據(jù)庫(kù)是比較關(guān)鍵的。如果有,就可以更加方便地恢復(fù)數(shù)據(jù),如果沒(méi)有,就要經(jīng)過(guò)一定的專業(yè)操作才能恢復(fù)。而很多公司因?yàn)楹鲆晜浞莸闹匾?,?dǎo)致發(fā)生數(shù)據(jù)丟失的情況。因此,在建立局域網(wǎng)數(shù)據(jù)庫(kù)時(shí),要注意及時(shí)備份。

第三步:使用數(shù)據(jù)恢復(fù)軟件

如果沒(méi)有局域網(wǎng)數(shù)據(jù)庫(kù)備份或者備份不完整,那么就需要使用數(shù)據(jù)恢復(fù)軟件來(lái)恢復(fù)數(shù)據(jù)。目前市面上比較好的數(shù)據(jù)恢復(fù)軟件包括”EaseUS Data Recovery Wizard”,”EaseUS Data Recovery Wizard for Mac”,”Disk Drill”,”Recuva”,”Wise Data Recovery”等等。這些軟件都擁有對(duì)磁盤掃描,快速恢復(fù),深度恢復(fù)等功能,同時(shí)能夠針對(duì)各種類型的誤刪數(shù)據(jù)、硬盤損壞、病毒攻擊等多種原因?qū)е碌臄?shù)據(jù)丟失進(jìn)行恢復(fù)操作。

第四步:找到正確的數(shù)據(jù)恢復(fù)操作方法

數(shù)據(jù)恢復(fù)軟件使用方法大同小異,但是具體操作卻各有差別。為了更大程度地減少數(shù)據(jù)損失,要針對(duì)不同類型的數(shù)據(jù)庫(kù)找到恢復(fù)操作的具體方法。例如,在使用 “Recuva” 恢復(fù) Access 數(shù)據(jù)庫(kù)時(shí),需要先停止所有正在運(yùn)行的數(shù)據(jù)庫(kù)進(jìn)程,再對(duì)需要恢復(fù)的磁盤進(jìn)行全盤掃描,最后找到誤刪的數(shù)據(jù)庫(kù)文件進(jìn)行恢復(fù)。如果是 MySQL 數(shù)據(jù)庫(kù),那么可以考慮修復(fù) MySQL 中的碎片及丟失的數(shù)據(jù)。

第五步:測(cè)試局域網(wǎng)數(shù)據(jù)庫(kù)的正確性

恢復(fù)數(shù)據(jù)后,要注意測(cè)試數(shù)據(jù)的正確性。測(cè)試數(shù)據(jù)庫(kù)中的各種功能、表等是否正常,確定恢復(fù)后的數(shù)據(jù)沒(méi)有遺漏,否則需要再次使用數(shù)據(jù)恢復(fù)軟件尋找漏掉的文件進(jìn)行恢復(fù)。

誤刪局域網(wǎng)數(shù)據(jù)庫(kù)的情況雖然屬于意外,但卻是比較常見(jiàn)的問(wèn)題。在實(shí)際工作中,要經(jīng)常備份數(shù)據(jù)庫(kù),并按照備份策略制定恢復(fù)計(jì)劃,以保證備份數(shù)據(jù)的完整性和及時(shí)性。同時(shí),也要學(xué)會(huì)正確的恢復(fù)方法,針對(duì)錯(cuò)誤類型進(jìn)行恢復(fù),做到精準(zhǔn)直擊。只有這樣,在誤刪局域網(wǎng)數(shù)據(jù)庫(kù)的情況下也能夠快速有效地恢復(fù)數(shù)據(jù)。

相關(guān)問(wèn)題拓展閱讀:

  • 你好請(qǐng)問(wèn)我誤將數(shù)據(jù)庫(kù)刪除了,如何恢復(fù)呢?
  • mysql數(shù)據(jù)庫(kù)被刪除后怎么恢復(fù)

你好請(qǐng)問(wèn)我誤將數(shù)據(jù)庫(kù)刪除了,如何恢復(fù)呢?

請(qǐng)立即關(guān)閉所有程序,停止向硬盤寫入數(shù)塵卜據(jù),然后通過(guò)EASYRECOVER之類的數(shù)據(jù)恢復(fù)軟件,找到MDF和LDF為擴(kuò)展名的文件,備份出來(lái),然后再拷附加數(shù)據(jù)庫(kù)。更好先不要向原彎汪位置寫回?cái)?shù)據(jù)庫(kù)文件,而是到別的機(jī)器上恢復(fù),等成功了,再拷貝回本機(jī)。

關(guān)鍵是,不要再向硬盤寫入任何數(shù)據(jù),否則埋兄仔,即使用文件找到,也可能數(shù)據(jù)文件已被損壞了。

mysql數(shù)據(jù)庫(kù)被刪除后怎么恢復(fù)

使用mysql中的日志功能。首先:將最近的二進(jìn)制類型的日志文件存成笑碼文本文件導(dǎo)出,命令如下:

mysqlbinlog F:/wamp/mysql-bin.> F:/test.txt

其次:打開保存的txt文件,文件格式如下:

其中at 1099代表第1099個(gè)命令(姑且這么記),查詢這些命令,看看需要回復(fù)的命令在什么地方,然后執(zhí)行命令。

最后:執(zhí)行回復(fù)命令,穗早如下:

mysqlbinlog –start-position=”123″ –stop-position=”531″ F:/wamp/mysql-bin.F:/test.txt | mysql -uroot -p

這樣就可以完成數(shù)猜升雀據(jù)庫(kù)的回復(fù)了?。?!

每個(gè) DBA 是不是粗皮都有過(guò)刪庫(kù)的經(jīng)歷?刪庫(kù)了沒(méi)有備份怎么辦?備份恢復(fù)后無(wú)法啟動(dòng)服務(wù)什么情況?表定義損壞數(shù)據(jù)無(wú)法讀取怎么辦?逗凳液 

我曾遇到某初創(chuàng)互聯(lián)網(wǎng)企業(yè),因維護(hù)人員不規(guī)范的備份恢復(fù)操作,導(dǎo)致系統(tǒng)表空間文件被初始化,上萬(wàn)張表無(wú)法讀取,花了數(shù)小時(shí)才搶救回來(lái)。

當(dāng)你發(fā)現(xiàn)數(shù)據(jù)無(wú)法讀取時(shí),也許并非數(shù)據(jù)丟失了,可能是 DBMS 找不到描述數(shù)據(jù)的信息。

背景

先來(lái)了解下幾張關(guān)鍵的 InnoDB 數(shù)據(jù)字典表,它們保存了部分表定義信息,在我們恢復(fù)表結(jié)構(gòu)時(shí)需要用到。

SYS_TABLES 描述 InnoDB 表信息CREATE TABLE `SYS_TABLES` (`NAME` varchar(255) NOT NULL DEFAULT ”,  表名`ID` bigint(20) unsigned NOT NULL DEFAULT ‘0’,  表id`N_COLS` int(10) DEFAULT NULL,`TYPE` int(10) unsigned DEFAULT NULL,`MIX_ID` bigint(20) unsigned DEFAULT NULL,`MIX_LEN` int(10) unsigned DEFAULT NULL,`CLUSTER_NAME` varchar(255) DEFAULT NULL,`SPACE` int(10) unsigned DEFAULT NULL,   表空間idPRIMARY KEY (`NAME`)) ENGINE=InnoDB DEFAULT CHARSET=latin1;SYS_INDEXES 描述 InnoDB 索引信息CREATE TABLE `SYS_INDEXES` (  `TABLE_ID` bigint(20) unsigned NOT NULL DEFAULT ‘0’, 與sys_tables的id對(duì)應(yīng)山物  `ID` bigint(20) unsigned NOT NULL DEFAULT ‘0’,  索引id  `NAME` varchar(120) DEFAULT NULL,索引名稱  `N_FIELDS` int(10) unsigned DEFAULT NULL, 索引包含字段的個(gè)數(shù)  `TYPE` int(10) unsigned DEFAULT NULL,  `SPACE` int(10) unsigned DEFAULT NULL,  存儲(chǔ)索引的表空間id  `PAGE_NO` int(10) unsigned DEFAULT NULL,  索引的root page id  PRIMARY KEY (`TABLE_ID`,`ID`)) ENGINE=InnoDB DEFAULT CHARSET=latin1;SYS_COLUMNS 描述 InnoDB 表的字段信息CREATE TABLE `SYS_COLUMNS` (  `TABLE_ID` bigint(20) unsigned NOT NULL, 與sys_tables的id對(duì)應(yīng)  `POS` int(10) unsigned NOT NULL,     字段相對(duì)位置  `NAME` varchar(255) DEFAULT NULL,    字段名稱  `MTYPE` int(10) unsigned DEFAULT NULL,  字段編碼  `PRTYPE` int(10) unsigned DEFAULT NULL, 字段校驗(yàn)類型  `LEN` int(10) unsigned DEFAULT NULL,  字段字節(jié)長(zhǎng)度  `PREC` int(10) unsigned DEFAULT NULL, 字段精度  PRIMARY KEY (`TABLE_ID`,`POS`)) ENGINE=InnoDB DEFAULT CHARSET=latin1;SYS_FIELDS 描述全部索引的字段列CREATE TABLE `SYS_FIELDS` (  `INDEX_ID` bigint(20) unsigned NOT NULL,  `POS` int(10) unsigned NOT NULL,  `COL_NAME` varchar(255) DEFAULT NULL,  PRIMARY KEY (`INDEX_ID`,`POS`)) ENGINE=InnoDB DEFAULT CHARSET=latin1;./storage/innobase/include/dict0boot.h 文件定義了每個(gè)字典表的 index id,對(duì)應(yīng) id 的 page 中存儲(chǔ)著字典表的數(shù)據(jù)。

這里我們需要借助 undrop-for-innodb 工具恢復(fù)數(shù)據(jù),它能讀取表空間信息得到 page,將數(shù)據(jù)從 page 中提取出來(lái)。

# wget yum install -y gcc flex bison# make# make sys_parser

# ./sys_parser 讀取表結(jié)構(gòu)信息

sys_parser databases/table

stream_parser 讀取 InnoDB page 從 ibdata1 或 ibd 或分區(qū)表

# ./stream_parserYou must specify file with -f optionUsage: ./stream_parser -f  Where:    -hPrint this help    -V or -g   – Print debug information    -s size    – Amount of memory used for disk cache (allowed examples 1G 10M). Default 100M    -Tretrieves only pages with index id = NM (N – high word, M – low word of id)    -t size    – Size of InnoDB tablespace to scan. Use it only if the parser can’t determine it by himself.

c_parser 從 innodb page 中讀取記錄保存到文件

# ./c_parserError: Usage: ./c_parser -4|-5|-6 -f -t table.sql  Where    -f — InnoDB page or directory with pages(all pages should have same index_id)    -t — CREATE statement of a table    -o — Save dump in this file. Otherwise print to stdout    -l — Save SQL statements in this file. Otherwise print to stderr    -h  — Print this help    -d  — Process only those pages which potentially could have deleted records (default = NO)    -D  — Recover deleted rows only (default = NO)    -U  — Recover UNdeleted rows only (default = YES)    -V  — Verbose mode (lots of debug information)innodb_datafile is in REDUNDANT formatinnodb_datafile is in COMPACT formatinnodb_datafile is in MySQL 5.6 format    -T  — retrieves only pages with index id = NM (N – high word, M – low word of id)    -b — Directory where external pages can be found. Usually it is pages-XXX/FIL_PAGE_TYPE_BLOB/    -i — Read external pages at their offsets from .    -p prefix — Use prefix for a directory name in LOAD DATA INFILE command

接下來(lái),我們演示場(chǎng)景的幾種數(shù)據(jù)恢復(fù)場(chǎng)景。

場(chǎng)景1:drop table

是否啟用了 innodb_file_per_table 其恢復(fù)方法有所差異,當(dāng)發(fā)生誤刪表時(shí),應(yīng)盡快停止MySQL服務(wù),不要啟動(dòng)。若 innodb_file_per_table=ON,更好只讀方式重新掛載文件系統(tǒng),防止其他進(jìn)程寫入數(shù)據(jù)覆蓋之前塊設(shè)備的數(shù)據(jù)。

如果評(píng)估記錄是否被覆蓋,可以表中某些記錄的作為關(guān)鍵字看是否能從 ibdata1 中篩選出。

# grep WOODYHOFFMAN ibdata1

Binary file ibdata1 matches

也可以使用 bvi(適用于較小文件)或 hexdump -C(適用于較大文件)工具

以表 sakila.actor 為例CREATE TABLE `actor` (`actor_id` allint(5) unsigned NOT NULL AUTO_INCREMENT,`first_name` varchar(45) NOT NULL,`last_name` varchar(45) NOT NULL,`last_update` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,PRIMARY KEY (`actor_id`),KEY `idx_actor_last_name` (`last_name`)) ENGINE=InnoDB AUTO_INCREMENT=201 DEFAULT CHARSET=utf8

首先恢復(fù)表結(jié)構(gòu)信息1. 解析系統(tǒng)表空間獲取 page 信息

./stream_parser -f /var/lib/mysql/ibdata1

2. 新建一個(gè) schema,把系統(tǒng)字典表的 DDL 導(dǎo)入

cat dictionary/SYS_* | mysql recovered

3. 創(chuàng)建恢復(fù)目錄

mkdir -p dumps/default

4. 解析系統(tǒng)表空間包含的字典表信息,

./c_parser -4f pages-ibdata1/FIL_PAGE_INDEX/01.page -t dictionary/SYS_TABLES.sql > dumps/default/SYS_TABLES 2> dumps/default/SYS_TABLES.sql./c_parser -4f pages-ibdata1/FIL_PAGE_INDEX/02.page -t dictionary/SYS_COLUMNS.sql > dumps/default/SYS_COLUMNS 2> dumps/default/SYS_COLUMNS.sql./c_parser -4f pages-ibdata1/FIL_PAGE_INDEX/03.page -t dictionary/SYS_INDEXES.sql > dumps/default/SYS_INDEXES 2> dumps/default/SYS_INDEXES.sql./c_parser -4f pages-ibdata1/FIL_PAGE_INDEX/04.page -t dictionary/SYS_FIELDS.sql > dumps/default/SYS_FIELDS 2> dumps/default/SYS_FIELDS.sql

5. 導(dǎo)入恢復(fù)的數(shù)據(jù)字典

cat dumps/default/*.sql | mysql recovered

6. 讀取恢復(fù)后的表結(jié)構(gòu)信息

./sys_parser -pmsandbox -d recovered sakila/actor

由于 5.x 版本 innodb 引擎并非完整記錄表結(jié)構(gòu)信息,會(huì)丟失 AUTO_INCREMENT 屬性、二級(jí)索引和外鍵約束, DECIMAL 精度等信息。

若是 mysql 5.5 版本 frm 文件被從系統(tǒng)刪除,在原目錄下 touch 與原表名相同的 frm 文件,還能讀取表結(jié)構(gòu)信息和數(shù)據(jù)。若只有 frm 文件,想要獲得表結(jié)構(gòu)信息,可使用 mysqlfrm –diagnostic /path/to/xxx.frm,連接 mysql 會(huì)顯示字符集信息。

innodb_file_per_table=OFF

因?yàn)槭枪蚕肀砜臻g模式,數(shù)據(jù)頁(yè)都存儲(chǔ)在 ibdata1,可以從 ibdata1 文件中提取數(shù)據(jù)。

1. 獲取表的 table id,sys_table 存有表的 table id,sys_table 表 index id 是1,所以從01.page 獲取表 id./c_parser -4Df pages-ibdata1/FIL_PAGE_INDEX/01.page -t dictionary/SYS_TABLES.sql | grep sakila/actorB28  2AD4D  SYS_TABLES  “sakila/actor”  0   “”B28  2AD4D  SYS_TABLES  “sakila/actor”  0   “”  0

2. 利用 table id 獲取表的主鍵 id,sys_indexes 存有表索引信息,innodb 索引組織表,找到主鍵 id 即找到數(shù)據(jù),sys_indexes 的 index id 是3,所以從03.page 獲取主鍵 id

./c_parser -4Df pages-ibdata1/FIL_PAGE_INDEX/03.page -t dictionary/SYS_INDEXES.sql | grepBABCA  SYS_INDEXES”PRIMARY”BAC3C  SYS_INDEXES”idx_actor_last_name”BABCA  SYS_INDEXES”PRIMARY”BAC3C  SYS_INDEXES”idx_actor_last_name”

3. 知道了主鍵 id,就可以從對(duì)應(yīng) page 中提取表數(shù)據(jù),并生成 sql 文件。

./c_parser -4f pages-ibdata1/FIL_PAGE_INDEX/76.page -t sakila/actor.sql > dumps/default/actor 2> dumps/default/actor_load.sql

4. 最后導(dǎo)入恢復(fù)的數(shù)據(jù)

cat dumps/default/*.sql | mysql sakila

更多詳細(xì)情況點(diǎn)擊

網(wǎng)頁(yè)鏈接

網(wǎng)頁(yè)鏈接

關(guān)于如何找回局域網(wǎng)刪除的數(shù)據(jù)庫(kù)的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。

成都創(chuàng)新互聯(lián)科技有限公司,是一家專注于互聯(lián)網(wǎng)、IDC服務(wù)、應(yīng)用軟件開發(fā)、網(wǎng)站建設(shè)推廣的公司,為客戶提供互聯(lián)網(wǎng)基礎(chǔ)服務(wù)!
創(chuàng)新互聯(lián)(www.cdcxhl.com)提供簡(jiǎn)單好用,價(jià)格厚道的香港/美國(guó)云服務(wù)器和獨(dú)立服務(wù)器。創(chuàng)新互聯(lián)——四川成都IDC機(jī)房服務(wù)器托管/機(jī)柜租用。為您精選優(yōu)質(zhì)idc數(shù)據(jù)中心機(jī)房租用、服務(wù)器托管、機(jī)柜租賃、大帶寬租用,高電服務(wù)器托管,算力服務(wù)器租用,可選線路電信、移動(dòng)、聯(lián)通機(jī)房等。


當(dāng)前名稱:如何恢復(fù)被誤刪的局域網(wǎng)數(shù)據(jù)庫(kù)?(如何找回局域網(wǎng)刪除的數(shù)據(jù)庫(kù))
本文來(lái)源:http://m.5511xx.com/article/ccogjhh.html