MySQL數(shù)據(jù)庫(kù)的備份與還原操作方法
1、數(shù)據(jù)庫(kù)備份
備份的結(jié)果都是SQL指令
mysqldump:專門用于備份SQL的客戶端
SQL備份:表結(jié)構(gòu) + 數(shù)據(jù)
缺點(diǎn):
- 會(huì)產(chǎn)生的備份文件特別大
- 不適合特大型數(shù)據(jù)備份
- 不適合數(shù)據(jù)變更頻繁的數(shù)據(jù)庫(kù)備份
基本語(yǔ)法:
> mysqldump -hPup 數(shù)據(jù)庫(kù)名字 [表1 [表2]] > 備份文件地址
備份可以有3種形式:
- 整庫(kù)備份 只需太提供數(shù)據(jù)庫(kù)名字
- 單表備份 數(shù)據(jù)庫(kù)后跟一張表
- 多表備份 數(shù)據(jù)庫(kù)后跟多張表
示例:
# 整庫(kù)備份 > mysqldump -hlocalhost -P3306 -uroot -p123456 mydatabase > mydatabase.bak.sql # 單表備份 > mysqldump -hlocalhost -P3306 -uroot -p123456 mydatabase my_student > mydatabase.my_student.bak.sql # 多表備份 > mysqldump -hlocalhost -P3306 -uroot -p123456 mydatabase my_student my_class > mydatabase.my_student__my_class.bak.sql
備份文件內(nèi)容:
-- 刪除已存在的表 DROP TABLE IF EXISTS `my_student`; -- 創(chuàng)建表結(jié)構(gòu) SET character_set_client = utf8mb4 ; CREATE TABLE `my_student` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(10) COLLATE utf8mb4_general_ci DEFAULT NULL, `class_id` int(11) DEFAULT NULL, `age` int(11) DEFAULT NULL, `gender` int(11) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci; -- 插入數(shù)據(jù) LOCK TABLES `my_student` WRITE; INSERT INTO `my_student` VALUES (1,'劉備',1,18,2),(2,'李四',1,19,1),(3,'王五',2,20,2),(4,'張飛',2,21,1),(5,'關(guān)羽',NULL,22,2),(6,'曹操',1,20,NULL); UNLOCK TABLES;
2、數(shù)據(jù)還原
mysqldump備份的數(shù)據(jù)文件,沒有關(guān)于數(shù)據(jù)庫(kù)本身的操作,都是針對(duì)表級(jí)別的操作,當(dāng)進(jìn)行數(shù)據(jù)還原,必須指定數(shù)據(jù)庫(kù)
方式一:mysql客戶端
# 不用登錄,直接操作 > mysql -hPup 數(shù)據(jù)庫(kù) < SQL文件位置 mysql -hlocalhost -P3306 -uroot -p123456 mydatabase2 < mydatabase.bak.sql
方式二:SQL指令導(dǎo)入
-- 首先進(jìn)入到對(duì)應(yīng)的數(shù)據(jù)庫(kù) mysql> source SQL文件位置 source mydatabase.bak.sql;
方式三:手動(dòng)復(fù)制粘貼(不推薦)
打開備份文件,復(fù)制所有SQL指令,粘貼到mysql命令行中執(zhí)行
到此這篇關(guān)于MySQL數(shù)據(jù)庫(kù)數(shù)據(jù)庫(kù)備份與還原的文章就介紹到這了,更多相關(guān)MySQL數(shù)據(jù)備份還原內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- mysql定時(shí)自動(dòng)備份數(shù)據(jù)庫(kù)的方法步驟
- MySQL 數(shù)據(jù)庫(kù)定時(shí)備份的幾種方式(全面)
- MySQL學(xué)習(xí)之?dāng)?shù)據(jù)庫(kù)備份詳解
- Linux系統(tǒng)利用crontab定時(shí)備份Mysql數(shù)據(jù)庫(kù)方法
- MySQL定時(shí)備份數(shù)據(jù)庫(kù)(全庫(kù)備份)的實(shí)現(xiàn)
- Mysql數(shù)據(jù)庫(kù)手動(dòng)及定時(shí)備份步驟
- MySQL數(shù)據(jù)庫(kù)完全備份與增量備份詳解
相關(guān)文章
mysql注入之長(zhǎng)字符截?cái)?orderby注入,HTTP分割注入,limit注入方式
這篇文章主要介紹了mysql注入之長(zhǎng)字符截?cái)?orderby注入,HTTP分割注入,limit注入方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-11-11MySQL基于DOS命令行登錄操作實(shí)例(圖文說(shuō)明)
這篇文章主要介紹了MySQL基于DOS命令行登錄操作,以圖文形式結(jié)合實(shí)例說(shuō)明了MySQL登錄命令的基本用法,非常簡(jiǎn)單易懂需要的朋友可以參考下2016-01-01CentOS7.2虛擬機(jī)上安裝MySQL 5.6.32的教程
這篇文章主要介紹了CentOS7.2虛擬機(jī)上安裝MySQL 5.6.32的教程的相關(guān)資料,需要的朋友可以參考下2016-08-08