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

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

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

一、mysqldump 備份操作

1.1 備份基礎(chǔ)語法

mysqldump -u用戶名 -p密碼 -h主機 數(shù)據(jù)庫 表名 -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主機 數(shù)據(jù)庫 < 備份文件路徑

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

2.2 還原案例

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

三、mysqldump 按條件導出與導入

3.1 按條件導出

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

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

注:原文中“–no-建表”為簡化表述,標準參數(shù)為--no-create-info

3.1.2 按條件導出案例

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

3.2 按條件導入

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

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

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

3.2.2 按條件導入案例

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

四、mysqldump 表導出操作

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

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

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

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

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

5.1 --compatible=name

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

5.2 --complete-insert,-c

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

5.3 --default-character-set=charset

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

5.4 --disable-keys

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

5.5 --extended-insert = true|false

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

5.6 --hex-blob

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

5.7 --lock-all-tables,-x

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

5.8 --lock-tables

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

5.9 --no-create-info,-t

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

5.10 --no-data,-d

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

5.11 --opt

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

5.12 --quick,-q

  • 功能:強制 mysqldump 從服務器查詢?nèi)〉糜涗浐笾苯虞敵?,不緩存到?nèi)存
  • 適用場景:導出大表時非常有用,避免占用過多內(nèi)存

5.13 --routines,-R

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

5.14 --single-transaction

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

5.15 --triggers

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

5.16 其他參數(shù)說明

其他參數(shù)詳情請參考 MySQL 官方手冊

六、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 在線備份特性

  • 僅在開始瞬間請求鎖表,隨后刷新 binlog
  • 導出文件中會加入 CHANGE MASTER 語句,指定當前備份的 binlog 位置
  • 適用場景:將備份文件恢復到 slave 服務器

七、mysqldump 備份文件還原方法

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

7.1 方法一:直接用 mysql 客戶端導入

7.1.1 導入語法

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

7.2 方法二:用 SOURCE 語法導入(實驗不成功?。。。?/h3>

7.2.1 語法說明

  • 非標準 SQL 語法,屬于 mysql 客戶端提供的功能
  • 導入語法:
    SOURCE /tmp/db_name.sql;
    

7.2.2 注意事項

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

總結(jié) 

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

相關(guān)文章

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

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

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

    MySQL詳解進行JDBC編程與增刪改查方法

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

    MySQL中查詢json格式的字段實例詳解

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

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

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

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

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

    Mysql大型SQL文件快速恢復方案分享

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

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

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

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

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

    用HAProxy來檢測MySQL復制的延遲的教程

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

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

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

最新評論

南溪县| 鄂托克旗| 辽宁省| 河源市| 信丰县| 云安县| 涪陵区| 宝丰县| 红安县| 海林市| 南城县| 新乡县| 巩留县| 洛宁县| 德昌县| 宝坻区| 衡阳市| 澄城县| 吉安市| 隆德县| 高平市| 清丰县| 海口市| 勐海县| 彰武县| 安阳县| 桃源县| 凉山| 涞水县| 桐乡市| 滦南县| 临高县| 舟山市| 皋兰县| 海伦市| 合江县| 钟祥市| 水富县| 彭阳县| 如东县| 准格尔旗|