最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

mysql使用mysqldump備份、還原數(shù)據(jù)庫(kù)詳解教程

 更新時(shí)間:2025年12月23日 10:13:46   作者:火柴梗!  
mysqldump是一個(gè)用于備份MySQL數(shù)據(jù)庫(kù)的命令行工具,它可以將數(shù)據(jù)庫(kù)結(jié)構(gòu)和數(shù)據(jù)導(dǎo)出到一個(gè)SQL文件中,以便在需要時(shí)進(jìn)行恢復(fù)或遷移數(shù)據(jù)庫(kù),這篇文章主要介紹了mysql使用mysqldump備份、還原數(shù)據(jù)庫(kù)的相關(guān)資料,需要的朋友可以參考下

一、mysqldump 備份操作

1.1 備份基礎(chǔ)語法

mysqldump -u用戶名 -p密碼 -h主機(jī) 數(shù)據(jù)庫(kù) 表名 -w "sql條件" --lock-all-tables > 備份路徑

1.2 備份案例

mysqldump -uroot -p1234 -hlocalhost db1 a -w "id in (select id from b)" --lock-all-tables > c:\aa.txt

二、mysqldump 還原操作

2.1 還原基礎(chǔ)語法

mysql -u用戶名 -p密碼 -h主機(jī) 數(shù)據(jù)庫(kù) < 備份文件路徑

注:原文中“mysqldump還原”語法表述存在筆誤,正確還原需使用mysql命令而非mysqldump

2.2 還原案例

mysql -uroot -p1234 db1 < c:\aa.txt

三、mysqldump 按條件導(dǎo)出與導(dǎo)入

3.1 按條件導(dǎo)出

3.1.1 按條件導(dǎo)出基礎(chǔ)語法

mysqldump -u用戶名 -p密碼 -h主機(jī) 數(shù)據(jù)庫(kù) 表名 --where "條件語句" --no-create-info > 導(dǎo)出路徑

注:原文中“–no-建表”為簡(jiǎn)化表述,標(biāo)準(zhǔn)參數(shù)為--no-create-info

3.1.2 按條件導(dǎo)出案例

mysqldump -uroot -p1234 dbname a --where "tag='88'" --no-create-info > c:\a.sql

3.2 按條件導(dǎo)入

3.2.1 按條件導(dǎo)入基礎(chǔ)語法

mysql -u用戶名 -p密碼 -h主機(jī) 數(shù)據(jù)庫(kù) < 導(dǎo)出文件路徑

注:原文中“mysqldump按導(dǎo)入”語法表述存在筆誤,正確導(dǎo)入需使用mysql命令而非mysqldump

3.2.2 按條件導(dǎo)入案例

mysql -uroot -p1234 db1 < c:\a.txt

四、mysqldump 表導(dǎo)出操作

4.1 表導(dǎo)出基礎(chǔ)語法

mysqldump -u用戶名 -p密碼 -h主機(jī) 數(shù)據(jù)庫(kù) 表名

4.2 表導(dǎo)出案例(僅導(dǎo)出表結(jié)構(gòu),不含數(shù)據(jù))

mysqldump -uroot -p sqlhk9 a --no-data

五、mysqldump 主要參數(shù)說明

5.1 --compatible=name

  • 功能:告知 mysqldump 導(dǎo)出的數(shù)據(jù)需兼容的數(shù)據(jù)庫(kù)類型或舊版本 MySQL 服務(wù)器
  • 兼容值:ansi、mysql323、mysql40、postgresql、oracle、mssql、db2、maxdb、no_key_options、no_tables_options、no_field_options 等
  • 說明:多值用逗號(hào)分隔,僅保證“盡量兼容”,非“完全兼容”

5.2 --complete-insert,-c

  • 功能:導(dǎo)出數(shù)據(jù)采用包含字段名的完整 INSERT 語句(所有值寫在一行)
  • 優(yōu)勢(shì):提高插入效率
  • 風(fēng)險(xiǎn):可能受 max_allowed_packet 參數(shù)影響,導(dǎo)致插入失敗,不推薦使用

5.3 --default-character-set=charset

  • 功能:指定導(dǎo)出數(shù)據(jù)的字符集
  • 必要性:若數(shù)據(jù)表非默認(rèn) latin1 字符集,不指定此參數(shù)會(huì)導(dǎo)致再次導(dǎo)入后產(chǎn)生亂碼

5.4 --disable-keys

  • 功能:在 INSERT 語句開頭添加 /*!40000 ALTER TABLE table DISABLE KEYS */;,結(jié)尾添加 /*!40000 ALTER TABLE table ENABLE KEYS */;
  • 優(yōu)勢(shì):插入完所有數(shù)據(jù)后再重建索引,大幅提高插入速度
  • 限制:僅適用于 MyISAM 表

5.5 --extended-insert = true|false

  • 默認(rèn)值:true(開啟 --complete-insert 模式)
  • 功能:關(guān)閉 --complete-insert 模式時(shí),需將此參數(shù)設(shè)為 false

5.6 --hex-blob

  • 功能:使用十六進(jìn)制格式導(dǎo)出二進(jìn)制字符串字段
  • 必要性:存在二進(jìn)制數(shù)據(jù)時(shí)必須使用
  • 影響字段類型:BINARY、VARBINARY、BLOB

5.7 --lock-all-tables,-x

  • 功能:開始導(dǎo)出前,請(qǐng)求鎖定所有數(shù)據(jù)庫(kù)的所有表,保證數(shù)據(jù)一致性
  • 特性:屬于全局讀鎖,會(huì)自動(dòng)關(guān)閉 --single-transaction 和 --lock-tables 選項(xiàng)

5.8 --lock-tables

  • 功能:鎖定當(dāng)前導(dǎo)出的數(shù)據(jù)表(區(qū)別于 --lock-all-tables 鎖定全部庫(kù)下的表)
  • 限制:僅適用于 MyISAM 表;InnoDB 表需使用 --single-transaction 選項(xiàng)

5.9 --no-create-info,-t

  • 功能:僅導(dǎo)出數(shù)據(jù),不添加 CREATE TABLE 語句

5.10 --no-data,-d

  • 功能:不導(dǎo)出任何數(shù)據(jù),僅導(dǎo)出數(shù)據(jù)庫(kù)表結(jié)構(gòu)

5.11 --opt

  • 本質(zhì):快捷選項(xiàng),等同于同時(shí)添加以下參數(shù):
    –add-drop-tables、–add-locking、–create-option、–disable-keys、–extended-insert、–lock-tables、–quick、–set-charset
  • 優(yōu)勢(shì):加快導(dǎo)出速度,且導(dǎo)出數(shù)據(jù)可快速導(dǎo)回
  • 默認(rèn)狀態(tài):默認(rèn)啟用,可通過 --skip-opt 禁用
  • 注意事項(xiàng):未指定 --quick 或 --opt 時(shí),會(huì)將整個(gè)結(jié)果集放入內(nèi)存,導(dǎo)出大數(shù)據(jù)庫(kù)可能出現(xiàn)問題

5.12 --quick,-q

  • 功能:強(qiáng)制 mysqldump 從服務(wù)器查詢?nèi)〉糜涗浐笾苯虞敵觯痪彺娴絻?nèi)存
  • 適用場(chǎng)景:導(dǎo)出大表時(shí)非常有用,避免占用過多內(nèi)存

5.13 --routines,-R

  • 功能:導(dǎo)出存儲(chǔ)過程以及自定義函數(shù)

5.14 --single-transaction

  • 功能:導(dǎo)出數(shù)據(jù)前提交 BEGIN SQL 語句,保證導(dǎo)出時(shí)數(shù)據(jù)庫(kù)的一致性狀態(tài)
  • 特性:BEGIN 不阻塞任何應(yīng)用程序
  • 適用表類型:僅適用于事務(wù)表(如 InnoDB、BDB)
  • 互斥性:與 --lock-tables 互斥(LOCK TABLES 會(huì)使掛起事務(wù)隱含提交)
  • 建議:導(dǎo)出大表時(shí)結(jié)合 --quick 選項(xiàng)使用

5.15 --triggers

  • 功能:同時(shí)導(dǎo)出觸發(fā)器
  • 默認(rèn)狀態(tài):默認(rèn)啟用,可通過 --skip-triggers 禁用

5.16 其他參數(shù)說明

其他參數(shù)詳情請(qǐng)參考 MySQL 官方手冊(cè)

六、mysqldump 常用備份命令示例

6.1 MyISAM 表備份命令

/usr/local/mysql/bin/mysqldump -uyejr -pyejr \
--default-character-set=utf8 --opt --extended-insert=false \
--triggers -R --hex-blob -x db_name > db_name.sql

6.2 InnoDB 表備份命令

/usr/local/mysql/bin/mysqldump -uyejr -pyejr \
--default-character-set=utf8 --opt --extended-insert=false \
--triggers -R --hex-blob --single-transaction db_name > db_name.sql

6.3 在線備份命令(含 binlog 信息)

6.3.1 在線備份語法

/usr/local/mysql/bin/mysqldump -uyejr -pyejr \
--default-character-set=utf8 --opt --master-data=1 \
--single-transaction --flush-logs db_name > db_name.sql

6.3.2 在線備份特性

  • 僅在開始瞬間請(qǐng)求鎖表,隨后刷新 binlog
  • 導(dǎo)出文件中會(huì)加入 CHANGE MASTER 語句,指定當(dāng)前備份的 binlog 位置
  • 適用場(chǎng)景:將備份文件恢復(fù)到 slave 服務(wù)器

七、mysqldump 備份文件還原方法

mysqldump 備份文件為可直接導(dǎo)入的 SQL 腳本,共兩種導(dǎo)入方法:

7.1 方法一:直接用 mysql 客戶端導(dǎo)入

7.1.1 導(dǎo)入語法

/usr/local/mysql/bin/mysql -uyejr -pyejr db_name < db_name.sql

7.2 方法二:用 SOURCE 語法導(dǎo)入(實(shí)驗(yàn)不成功!?。。?/h3>

7.2.1 語法說明

  • 非標(biāo)準(zhǔn) SQL 語法,屬于 mysql 客戶端提供的功能
  • 導(dǎo)入語法:
    SOURCE /tmp/db_name.sql;
    

7.2.2 注意事項(xiàng)

  • 需指定文件絕對(duì)路徑
  • 文件需讓 mysqld 運(yùn)行用戶(如 nobody)擁有讀取權(quán)限

總結(jié) 

到此這篇關(guān)于mysql使用mysqldump備份、還原數(shù)據(jù)庫(kù)的文章就介紹到這了,更多相關(guān)mysql mysqldump備份還原數(shù)據(jù)庫(kù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • MYSQL常用字符串函數(shù)和時(shí)間函數(shù)示例詳解

    MYSQL常用字符串函數(shù)和時(shí)間函數(shù)示例詳解

    字符串函數(shù)是最常用的的一種函數(shù),在一個(gè)具體應(yīng)用中通常會(huì)綜合幾個(gè)甚至幾類函數(shù)來實(shí)現(xiàn)相應(yīng)的應(yīng)用,這篇文章主要介紹了MYSQL常用字符串函數(shù)和時(shí)間函數(shù)的相關(guān)資料,需要的朋友可以參考下
    2025-07-07
  • MySQL詳解進(jìn)行JDBC編程與增刪改查方法

    MySQL詳解進(jìn)行JDBC編程與增刪改查方法

    JDBC是指Java數(shù)據(jù)庫(kù)連接,是一種標(biāo)準(zhǔn)Java應(yīng)用編程接口( JAVA API),用來連接 Java 編程語言和廣泛的數(shù)據(jù)庫(kù)。從根本上來說,JDBC 是一種規(guī)范,它提供了一套完整的接口,允許便攜式訪問到底層數(shù)據(jù)庫(kù)
    2022-06-06
  • MySQL中查詢json格式的字段實(shí)例詳解

    MySQL中查詢json格式的字段實(shí)例詳解

    這篇文章主要給大家介紹了關(guān)于MySQL中查詢json格式字段的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • mysql添加備注信息的實(shí)現(xiàn)

    mysql添加備注信息的實(shí)現(xiàn)

    這篇文章主要介紹了mysql添加備注信息的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-02-02
  • 詳細(xì)深入聊一聊Mysql中的int(1)和int(11)

    詳細(xì)深入聊一聊Mysql中的int(1)和int(11)

    mysql數(shù)據(jù)庫(kù)作為當(dāng)前常用的關(guān)系型數(shù)據(jù)庫(kù),肯定會(huì)遇到設(shè)計(jì)表的需求,下面對(duì)設(shè)計(jì)表時(shí)int類型的設(shè)置進(jìn)行分析,下面這篇文章主要給大家介紹了關(guān)于Mysql中int(1)和int(11)的相關(guān)資料,需要的朋友可以參考下
    2022-08-08
  • Mysql大型SQL文件快速恢復(fù)方案分享

    Mysql大型SQL文件快速恢復(fù)方案分享

    這篇文章主要給大家介紹了關(guān)于Mysql大型SQL文件快速恢復(fù)方案的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Mysql具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • MySQL?數(shù)據(jù)備份和數(shù)據(jù)恢復(fù)的實(shí)現(xiàn)

    MySQL?數(shù)據(jù)備份和數(shù)據(jù)恢復(fù)的實(shí)現(xiàn)

    數(shù)據(jù)恢復(fù)的過程包括將備份文件導(dǎo)入到數(shù)據(jù)庫(kù)中、重建索引、應(yīng)用日志等,本文主要介紹了MySQL數(shù)據(jù)備份和數(shù)據(jù)恢復(fù)的實(shí)現(xiàn),感興趣的可以了解一下
    2023-08-08
  • MySQL日期時(shí)間類型與字符串互相轉(zhuǎn)換的方法

    MySQL日期時(shí)間類型與字符串互相轉(zhuǎn)換的方法

    這篇文章主要介紹了MySQL日期時(shí)間類型與字符串互相轉(zhuǎn)換的方法,文中通過代碼示例和圖文結(jié)合的方式給大家講解的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下
    2024-07-07
  • 用HAProxy來檢測(cè)MySQL復(fù)制的延遲的教程

    用HAProxy來檢測(cè)MySQL復(fù)制的延遲的教程

    這篇文章主要介紹了用HAProxy來檢測(cè)MySQL復(fù)制的延遲的教程,HAProxy需要使用到PHP腳本,需要的朋友可以參考下
    2015-04-04
  • sql面試題(查看數(shù)據(jù)中指定幾行記錄)

    sql面試題(查看數(shù)據(jù)中指定幾行記錄)

    一個(gè)不錯(cuò)的sql面試題,表 table1,主鍵為 ID,ID為自動(dòng)編號(hào)(ID可能不連續(xù)),要求查詢第31-40行記錄,如何實(shí)現(xiàn)呢?感興趣的朋友參考下
    2014-05-05

最新評(píng)論

徐水县| 安阳县| 泾川县| 甘孜县| 鄯善县| 涟水县| 仪征市| 郎溪县| 萨迦县| 荥阳市| 蒙城县| 区。| 霸州市| 松桃| 德江县| 高台县| 石门县| 商丘市| 大港区| 习水县| 侯马市| 江陵县| 广西| 都江堰市| 会昌县| 宁德市| 峨眉山市| 宜州市| 红桥区| 沾化县| 新平| 济源市| 建昌县| 平潭县| 改则县| 吉安市| 扬州市| 龙海市| 常宁市| 东阳市| 禹城市|