十年網(wǎng)站開發(fā)經(jīng)驗 + 多家企業(yè)客戶 + 靠譜的建站團隊
量身定制 + 運營維護+專業(yè)推廣+無憂售后,網(wǎng)站問題一站解決
小編給大家分享一下備份數(shù)據(jù)庫的sql語句怎么寫,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
十年的尼瀘西網(wǎng)站建設經(jīng)驗,針對設計、前端、開發(fā)、售后、文案、推廣等六對一服務,響應快,48小時及時工作處理。全網(wǎng)營銷推廣的優(yōu)勢是能夠根據(jù)用戶設備顯示端的尺寸不同,自動調整尼瀘西建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設計,從而大程度地提升瀏覽體驗。創(chuàng)新互聯(lián)建站從事“尼瀘西網(wǎng)站設計”,“尼瀘西網(wǎng)站推廣”以來,每個客戶項目都認真落實執(zhí)行。
備份數(shù)據(jù)庫的sql語句是“MySQLdump”,語法格式“mysqldump -u 用戶名稱 -p 數(shù)據(jù)庫名稱 [數(shù)據(jù)表名稱 ...]> 備份文件名稱.sql”;其中,“>”用來告訴mysqldump將備份數(shù)據(jù)表的定義和數(shù)據(jù)寫入備份文件。
本教程操作環(huán)境:windows7系統(tǒng)、mysql8版本、Dell G3電腦。
數(shù)據(jù)庫的主要作用就是對數(shù)據(jù)進行保存和維護,所以備份數(shù)據(jù)是數(shù)據(jù)庫管理中最常用的操作。為了防止數(shù)據(jù)庫意外崩潰或硬件損傷而導致的數(shù)據(jù)丟失,數(shù)據(jù)庫系統(tǒng)提供了備份和恢復策略。
保證數(shù)據(jù)安全的最重要的一個措施就是定期的對數(shù)據(jù)庫進行備份。這樣即使發(fā)生了意外,也會把損失降到最低。
數(shù)據(jù)庫備份是指通過導出數(shù)據(jù)或者復制表文件的方式來制作數(shù)據(jù)庫的副本。當數(shù)據(jù)庫出現(xiàn)故障或遭到破壞時,將備份的數(shù)據(jù)庫加載到系統(tǒng),從而使數(shù)據(jù)庫從錯誤狀態(tài)恢復到備份時的正確狀態(tài)。
MySQL 中提供了兩種備份方式,即 mysqldump 命令以及 mysqlhotcopy 腳本。由于 mysqlhotcopy 只能用于 MyISAM 表,所以 MySQL 5.7 移除了 mysqlhotcopy 腳本。
使用 mysqldump 命令備份數(shù)據(jù)庫
mysqldump 命令執(zhí)行時,可以將數(shù)據(jù)庫中的數(shù)據(jù)備份成一個文本文件。數(shù)據(jù)表的結構和數(shù)據(jù)將存儲在生成的文本文件中。
使用 mysqldump 命令備份一個數(shù)據(jù)庫的語法格式如下:
mysqldump -u username -p dbname [tbname ...]> filename.sql
對上述語法參數(shù)說明如下:
username
:表示用戶名稱;
dbname
:表示需要備份的數(shù)據(jù)庫名稱;
tbname
:表示數(shù)據(jù)庫中需要備份的數(shù)據(jù)表,可以指定多個數(shù)據(jù)表。省略該參數(shù)時,會備份整個數(shù)據(jù)庫;
右箭頭“>
”:用來告訴 mysqldump 將備份數(shù)據(jù)表的定義和數(shù)據(jù)寫入備份文件;
filename.sql
:表示備份文件的名稱,文件名前面可以加絕對路徑。通常將數(shù)據(jù)庫備份成一個后綴名為.sql的文件。
注意:mysqldump 命令備份的文件并非一定要求后綴名為.sql,備份成其他格式的文件也是可以的。例如,后綴名為.txt的文件。通常情況下,建議備份成后綴名為.sql 的文件。因為,后綴名為.sql的文件給人第一感覺就是與數(shù)據(jù)庫有關的文件。
示例:
下面使用 root 用戶備份 test 數(shù)據(jù)庫下的 student 表。打開命令行(cmd)窗口,輸入備份命令和密碼,運行過程如下:
C:\Windows\system32>mysqldump -uroot -p test student>C:\student.sql Enter password: ****
注意:mysqldump 命令必須在 cmd 窗口下執(zhí)行,不能登錄到 MySQL 服務中執(zhí)行。
輸入密碼后,MySQL 會對 test 數(shù)據(jù)庫下的 student 數(shù)據(jù)表進行備份。之后就可以在指定路徑下查看剛才備份過的文件了。student.sql 文件中的部分內容如下:
-- MySQL dump 10.13 Distrib 5.7.29, for Win64 (x86_64) -- -- Host: localhost Database: test -- ------------------------------------------------------ -- Server version 5.7.29-log /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; --此處刪除了部分內容 -- -- Table structure for table `student` -- DROP TABLE IF EXISTS `student`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `student` ( `id` int(4) NOT NULL, `name` varchar(20) DEFAULT NULL, `stuno` int(11) DEFAULT NULL, `age` int(4) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Dumping data for table `student` -- LOCK TABLES `student` WRITE; /*!40000 ALTER TABLE `student` DISABLE KEYS */; INSERT INTO `student` VALUES (1,'zhangsan',23,18),(2,'lisi',24,19),(3,'wangwu',25,18),(4,'zhaoliu',26,18); /*!40000 ALTER TABLE `student` ENABLE KEYS */; UNLOCK TABLES; /*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; ...... -- Dump completed on 2019-03-09 13:03:15
student.sql 文件開頭記錄了 MySQL 的版本、備份的主機名和數(shù)據(jù)庫名。
文件中,以“--”開頭的都是 SQL 語言的注釋。以 “/*!40101” 等形式開頭的是與 MySQL 有關的注釋。40101 是 MySQL 數(shù)據(jù)庫的版本號,這里就表示 MySQL 4.1.1。如果恢復數(shù)據(jù)時,MySQL 的版本比 4.1.1 高,“/*!40101”和“*/”之間的內容被當作 SQL 命令來執(zhí)行。如果比 4.1.1 低,“/*!40101”和“*/”之間的內容被當作注釋?!?*!”和“*/”中的內容在其它數(shù)據(jù)庫中將被作為注釋忽略,這可以提高數(shù)據(jù)庫的可移植性。
DROP 語句、CREATE 語句和 INSERT 語句都是數(shù)據(jù)庫恢復時使用的;“DROP TABLE IF EXISTS 'student' ”語句用來判斷數(shù)據(jù)庫中是否還有名為 student 的表,如果存在,就刪除這個表;CREATE 語句用來創(chuàng)建 student 表;INSERT 語句用來恢復所有數(shù)據(jù)。文件的最后記錄了備份的時間。
注意:上面 student.sql 文件中沒有創(chuàng)建數(shù)據(jù)庫的語句,因此,student.sql 文件中的所有表和記錄必須恢復到一個已經(jīng)存在的數(shù)據(jù)庫中?;謴蛿?shù)據(jù)時,CREATE TABLE 語句會在數(shù)據(jù)庫中創(chuàng)建表,然后執(zhí)行 INSERT 語句向表中插入記錄。
執(zhí)行完后,可以在 C:\
下面看到名為 all.sql 的文件,這個文件中存儲著所有數(shù)據(jù)庫的信息。
以上是“備份數(shù)據(jù)庫的sql語句怎么寫”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道!