1:官方百萬(wàn)級(jí)別的測(cè)試數(shù)據(jù)庫(kù):
創(chuàng)新互聯(lián)專注于殷都企業(yè)網(wǎng)站建設(shè),成都響應(yīng)式網(wǎng)站建設(shè)公司,商城網(wǎng)站制作。殷都網(wǎng)站建設(shè)公司,為殷都等地區(qū)提供建站服務(wù)。全流程定制網(wǎng)站建設(shè),專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)
官方測(cè)試數(shù)據(jù)庫(kù)github網(wǎng)址:
下載到目錄,解壓即可,運(yùn)行命令:
2:自己創(chuàng)建簡(jiǎn)單測(cè)試數(shù)據(jù)庫(kù):
快速隨機(jī)生成測(cè)試語(yǔ)言的網(wǎng)站:
選擇sql和想生成的字段,點(diǎn)擊生成Generate!生成即可。
在MySQL輸入生成的語(yǔ)句即可。
3:測(cè)試備份還原時(shí)用到的命令
刪庫(kù)跑路測(cè)試(先備份好)
還原后查詢庫(kù)的表數(shù)據(jù)是否完整。
采用復(fù)制整個(gè)數(shù)據(jù)存放目錄
1:查看數(shù)據(jù)庫(kù)數(shù)據(jù)存放位置
有兩種方法:
1):在數(shù)據(jù)庫(kù)中用命令 show variables like 'datadir'; 查看
2):在配置文件中查看,配置了 datadir 目錄的可查看。沒(méi)有配置的默認(rèn)為 /var/lib/mysql/ 位置
Linux中查看配置文件
2:復(fù)制目錄或者目錄下某個(gè)數(shù)據(jù)庫(kù)名
3:還原時(shí)直接復(fù)制文件夾到數(shù)據(jù)庫(kù)目錄即可
mysqldump又可叫做全量備份。
參數(shù) --databases 同 -B ,單獨(dú)一個(gè)庫(kù),也可省略。
1、備份命令mysqldump格式
格式:mysqldump -h主機(jī)名 -P端口 -u用戶名 -p密碼 database 數(shù)據(jù)庫(kù)名 文件名.sql
備份testDatabase數(shù)據(jù)庫(kù)
2、備份MySQL數(shù)據(jù)庫(kù)為帶刪除表的格式
備份MySQL數(shù)據(jù)庫(kù)為帶刪除表的格式,能夠讓該備份覆蓋已有數(shù)據(jù)庫(kù)而不需要手動(dòng)刪除原有數(shù)據(jù)庫(kù)。
3、直接將MySQL數(shù)據(jù)庫(kù)壓縮備份
備份并壓縮
4、備份MySQL數(shù)據(jù)庫(kù)某個(gè)(些)表
備份testDatabase中的myTable表,不需要用參數(shù) --databases 或者 -B
5、同時(shí)備份多個(gè)MySQL數(shù)據(jù)庫(kù)
同時(shí)備份testDatabase和 employees兩個(gè)庫(kù)
6、備份服務(wù)器上所有數(shù)據(jù)庫(kù)
參數(shù) --all-databases 同 -A
7、還原MySQL數(shù)據(jù)庫(kù)的命令
1) 不指定數(shù)據(jù)名還原,默認(rèn)生成原數(shù)據(jù)庫(kù)名稱,還原所有數(shù)據(jù)庫(kù)。
2) 指定數(shù)據(jù)名還原,還原指定單個(gè)數(shù)據(jù)庫(kù),需在數(shù)據(jù)庫(kù)種預(yù)先創(chuàng)建一個(gè)testDatabase名稱。
3) 還原壓縮的MySQL數(shù)據(jù)庫(kù)
4) 進(jìn)入數(shù)據(jù)庫(kù)用source導(dǎo)入
增量備份是針對(duì)于數(shù)據(jù)庫(kù)的bin-log日志進(jìn)行備份的,增量備份是在全量的基礎(chǔ)上進(jìn)行操作的。增量備份主要是靠mysql記錄的bin-log日志。
1:查看是否開(kāi)啟bin-log日志
進(jìn)入mysql輸入命令可查看。
顯示如下為開(kāi)啟狀態(tài),日志文件在/var/lib/mysql/以binlog.00001的格式保存。
如未開(kāi)啟,需要在配置文件種配置
2:查看目前使用的bin-log日志文件
進(jìn)入mysql查看命令。
顯示如下,目前使用的是binlog.000022文件,所有操作都記錄在此文件。
查看當(dāng)前testDatabase的表myTable數(shù)據(jù)如下,
3:刷新日志,使用新的日志文件(備份)
在命令端執(zhí)行命令
日志文件從 binlog.000022 變?yōu)?binlog.000023
這時(shí)相當(dāng)與已經(jīng)備份成功,備份文件即為上次的binlog.000022日志文件。
4:刪除數(shù)量,從日志還原數(shù)據(jù)
1) 刪除ABC行
查詢以及沒(méi)有ABC行列。
2) 恢復(fù)數(shù)據(jù)ABC行
退出mysql,在命令端用mysqlbinlog命令恢復(fù)到binlog.000022日志狀態(tài)。
進(jìn)入數(shù)據(jù)庫(kù)再次查看數(shù)據(jù),ABC已經(jīng)恢復(fù)。
增量備份完成。
使用idea連接本地MySQL數(shù)據(jù)庫(kù),就可以很方便的看到數(shù)據(jù)庫(kù)的內(nèi)容,還可以進(jìn)行基本的增加,刪除,修改操作,是不是很方便呢!顯示效果如下:
操作很簡(jiǎn)單,一起來(lái)看看吧!
1.在idea側(cè)邊找到“Database”,點(diǎn)擊“+”號(hào),在“Data Source”中選擇“MySQL”。
2.填寫(xiě)用戶,密碼,選擇需要連接的數(shù)據(jù)庫(kù)名稱后,點(diǎn)擊測(cè)試連接。(如果是第一次連接,會(huì)先提示下載JDBC,點(diǎn)擊下載就好)
3.點(diǎn)擊“Test Connection”后,出現(xiàn)錯(cuò)誤提示無(wú)效的時(shí)區(qū),點(diǎn)擊將時(shí)區(qū)設(shè)為“GMT”,點(diǎn)擊"OK"即可連接成功。
恢復(fù)整個(gè)數(shù)據(jù)庫(kù)首先,如果要恢復(fù)的數(shù)據(jù)庫(kù)是含有授權(quán)表的mysql數(shù)據(jù)庫(kù),將需要使用--skip-grant-tables選項(xiàng)運(yùn)行服務(wù)器。否則,服務(wù)器將抱怨無(wú)法找到授權(quán)表。在恢復(fù)表之后,執(zhí)行mysqladmin flush-privileges 來(lái)告訴服務(wù)器加載授權(quán)表,并用它們啟動(dòng)。將原數(shù)據(jù)庫(kù)目錄的內(nèi)容拷貝到其他的地方。例如,您可能會(huì)在稍后用它們進(jìn)行崩潰表的事后分析檢查(post-mortem examination)。用最新的備份文件重新加載數(shù)據(jù)庫(kù)。如果您打算使用由mysqldump 加載的文件,則需要將它們作為mysql的輸入。如果打算使用從數(shù)據(jù)庫(kù)中直接拷貝的文件(如,用tar 或c p),則將它們直接拷貝回到該數(shù)據(jù)庫(kù)目錄中。但是,在這種情況下,應(yīng)該在拷貝這些文件之前關(guān)閉服務(wù)器,然后再重新啟動(dòng)它。用更新日志重做在進(jìn)行備份后又修改了數(shù)據(jù)庫(kù)表的查詢。對(duì)于所有可用的更新日志,可使用它作為mysql的輸入。指定--one-database 選項(xiàng),使mysql只對(duì)想要恢復(fù)的數(shù)據(jù)庫(kù)執(zhí)行查詢。如果您知道需要使用所有的更新日志文件,可在包含日志的目錄中使用下列命令:% ls-t-r-l update.(0-9)* | xargs cat | mysql--one-database db_namels 命令產(chǎn)生更新日志文件的單列列表,更新日志文件根據(jù)服務(wù)器生成的順序進(jìn)行排序(要知道,如果您修改了其中的任何文件,排序的順序都將改變,這將導(dǎo)致更新日志按錯(cuò)誤的順序使用)。您很可能必須使用某些更新日志。例如,如果自備份以來(lái)所產(chǎn)生的日志命名為update.392、pdate.393 等等,可以重新運(yùn)行它們中的命令:% mysql--one-database db_name updata.392% mysql--one-database db_name updata.393…如果正在運(yùn)行恢復(fù)并打算使用更新日志恢復(fù)由于失策的DROP DATA BASE、DROPTABLE或DELETE 語(yǔ)句而丟失的信息,應(yīng)確保先從更新日志中刪除這些語(yǔ)句?;謴?fù)單個(gè)的表恢復(fù)單個(gè)表是很困難的。如果有通過(guò)mysqldump 生成的備份文件并且它恰好不包含您想要的表數(shù)據(jù),則需要抽取相關(guān)的行并用它們作為mysql的輸入,這部分較容易。困難的是抽取應(yīng)用于該表的更新日志的片段。您會(huì)發(fā)現(xiàn): mysql_find_rows 實(shí)用程序?qū)@方面有幫助,它可以從更新日志中抽取多行查詢。另一種可能性是用另一個(gè)服務(wù)器恢復(fù)整個(gè)數(shù)據(jù)庫(kù),然后將所要的該表的文件拷貝到原始數(shù)據(jù)庫(kù)中。這實(shí)際很容易!在將文件拷貝回?cái)?shù)據(jù)庫(kù)目錄時(shí),應(yīng)確保原始數(shù)據(jù)庫(kù)的服務(wù)器關(guān)閉。
備份數(shù)據(jù)庫(kù)
使用mysqldump命令備份數(shù)據(jù)庫(kù)
還原數(shù)據(jù)庫(kù)
1、使用mysql命令還原數(shù)據(jù)庫(kù)
將game_backup.sql 還原至 game 數(shù)據(jù)庫(kù):
2、使用source命令還原數(shù)據(jù)庫(kù)
如果數(shù)據(jù)庫(kù)過(guò)大,建議可以使用source命令