mysql資料庫備份如何恢復,mysql資料庫備份恢復方案

本文目錄一覽:

如何使用mysql資料庫進行備份數據恢復

恢復整個資料庫首先,如果要恢復的資料庫是含有授權表的mysql資料庫,將需要使用–skip-grant-tables選項運行伺服器。否則,伺服器將抱怨無法找到授權表。在恢復表之後,執行mysqladmin flush-privileges 來告訴伺服器載入授權表,並用它們啟動。將原資料庫目錄的內容拷貝到其他的地方。例如,您可能會在稍後用它們進行崩潰表的事後分析檢查(post-mortem examination)。用最新的備份文件重新載入資料庫。如果您打算使用由mysqldump 載入的文件,則需要將它們作為mysql的輸入。如果打算使用從資料庫中直接拷貝的文件(如,用tar 或c p),則將它們直接拷貝回到該資料庫目錄中。但是,在這種情況下,應該在拷貝這些文件之前關閉伺服器,然後再重新啟動它。用更新日誌重做在進行備份後又修改了資料庫表的查詢。對於所有可用的更新日誌,可使用它作為mysql的輸入。指定–one-database 選項,使mysql只對想要恢復的資料庫執行查詢。如果您知道需要使用所有的更新日誌文件,可在包含日誌的目錄中使用下列命令:% ls-t-r-l update.(0-9)* | xargs cat | mysql–one-database db_namels 命令產生更新日誌文件的單列列表,更新日誌文件根據伺服器生成的順序進行排序(要知道,如果您修改了其中的任何文件,排序的順序都將改變,這將導致更新日誌按錯誤的順序使用)。您很可能必須使用某些更新日誌。例如,如果自備份以來所產生的日誌命名為update.392、pdate.393 等等,可以重新運行它們中的命令:% mysql–one-database db_name updata.392% mysql–one-database db_name updata.393…如果正在運行恢復並打算使用更新日誌恢復由於失策的DROP DATA BASE、DROPTABLE或DELETE 語句而丟失的信息,應確保先從更新日誌中刪除這些語句。恢復單個的表恢復單個表是很困難的。如果有通過mysqldump 生成的備份文件並且它恰好不包含您想要的表數據,則需要抽取相關的行並用它們作為mysql的輸入,這部分較容易。困難的是抽取應用於該表的更新日誌的片段。您會發現: mysql_find_rows 實用程序對這方面有幫助,它可以從更新日誌中抽取多行查詢。另一種可能性是用另一個伺服器恢復整個資料庫,然後將所要的該表的文件拷貝到原始資料庫中。這實際很容易!在將文件拷貝回資料庫目錄時,應確保原始資料庫的伺服器關閉。

怎麼恢復mysql資料庫

mysql資料庫恢復方法:

方法一:

命令恢復資料庫:

mysql -u root –password=root密碼 資料庫名 備份文件.sql

方法二:

第一步:用管理員許可權登錄並進入後台管理界面,點「資料庫-資料恢復」。

第二步:在數據恢復設置中選擇「從本地文件」進行恢復,然後通過右邊的「瀏覽」按鈕找到之前保存下來的.sql文件。

第三步:點「提交」按鈕後將出現詢問「分卷數據成功導入資料庫,需要自動導入本次其他的備份嗎?」一般繼續點「確定」按鈕即可。之後的資料庫文件就完全導入到當前網站了。這時出現再次要求輸入管理員帳號的提示。訪問網站地址時也會看到所有信息都恢復到備份資料庫時的內容了。

小提示:

不管採取哪種方式備份和恢復資料庫,一定要注意備份和恢復時使用的版本要相同,甚至是語言種類也要一致,否則會存在亂碼的問題。

mysql中備份和還原資料庫的語句什麼啊

一、Mysql資料庫備份指令格式:

mysqldump -h主機名 -P埠 -u用戶名 -p密碼 (–database) 資料庫名 文件名.sql

註:直接cmd執行該指令即可,不需要先mysql -u root -p鏈接資料庫

1、備份MySQL資料庫的命令

mysqldump -hhostname -uusername -ppassword databasename backupfile.sql

2、備份MySQL資料庫為帶刪除表的格式,能夠讓該備份覆蓋已有資料庫而不需要手動刪除原有資料庫。

mysqldump -–add-drop-table -uusername -ppassword databasename backupfile.sql

二、資料庫還原有三種方式:source命令、mysql、gunzip命令

1、source 命令

進入mysql資料庫控制台,

mysql -u root -p

mysqluse 資料庫

然後使用source命令,後面參數為腳本文件(如這裡用到的.sql)

mysqlsource /home/work/db/bkdb.sql

2、mysql

mysql -hhostname -uusername -ppassword databasename backupfile.sql

3、gunzip

gunzip backupfile.sql.gz | mysql -uusername -ppassword databasename

怎麼備份和還原mysql資料庫

備份資料庫

使用mysqldump命令備份資料庫

還原資料庫

1、使用mysql命令還原資料庫

將game_backup.sql 還原至 game 資料庫:

2、使用source命令還原資料庫

如果資料庫過大,建議可以使用source命令

mysql資料庫備份和還原

MySQL資料庫備份與還原

備份和恢複數據

生成SQL腳本

在控制台使用mysqldump命令可以用來生成指定資料庫的腳本文本,但要注意,腳本文本中只包含資料庫的內容,而不會存在創建資料庫的語句!所以在恢複數據時,還需要自已手動創建一個資料庫之後再去恢複數據。

mysqldump –u用戶名 –p密碼 資料庫名生成的腳本文件路徑

現在可以在C盤下找到mydb1.sql文件了!

注意,mysqldump命令是在Windows控制台下執行,無需登錄mysql!!!

執行SQL腳本

執行SQL腳本需要登錄mysql,然後進入指定資料庫,才可以執行SQL腳本!!!

執行SQL腳本不只是用來恢復資料庫,也可以在平時編寫SQL腳本,然後使用執行SQL 腳本來操作資料庫!大家都知道,在黑屏下編寫SQL語句時,就算髮現了錯誤,可能也不能修改了。所以我建議大家使用腳本文件來編寫SQL代碼,然後執行之!

SOURCE C:\mydb1.sql

注意,在執行腳本時需要先行核查當前資料庫中的表是否與腳本文件中的語句有衝突!例如在腳本文件中存在create table a的語句,而當前資料庫中已經存在了a表,那麼就會出錯!

還可以通過下面的方式來執行腳本文件:

mysql -uroot -p123 mydb1c:\mydb1.sql

mysql –u用戶名 –p密碼 資料庫要執行腳本文件路徑

這種方式無需登錄mysql!

如何用mysql命令備份和恢復

Mysql資料庫備份和還原常用的命令是進行Mysql資料庫備份和還原的關鍵,沒有命令,什麼都無從做起,更談不上什麼備份還原,只有給系統這個命令,讓它去執行,才能完成Mysql資料庫備份和還原的操作,下面為大家分享一下操作的常用的命令。

一、備份命令

1、備份MySQL資料庫的命令

!–

Code highlighting produced by Actipro CodeHighlighter (freeware)

–mysqldump-hhostname-uusername-ppassword databasenamebackupfile.sql

2、備份MySQL資料庫為帶刪除表的格式

備份MySQL資料庫為帶刪除表的格式,能夠讓該備份覆蓋已有資料庫而不需要手動刪除原有資料庫。

!–

Code highlighting produced by Actipro CodeHighlighter (freeware)

–mysqldump-–add-drop-table-uusername-ppassword databasenamebackupfile.sql

3、直接將MySQL資料庫壓縮備份

!–

Code highlighting produced by Actipro CodeHighlighter (freeware)

–mysqldump-hhostname-uusername-ppassword databasename|gzipbackupfile.sql.gz

4、備份MySQL資料庫某個(些)表

!–

Code highlighting produced by Actipro CodeHighlighter (freeware)

–mysqldump-hhostname-uusername-ppassword databasename specific_table1 specific_table2backupfile.sql

5、同時備份多個MySQL資料庫

!–

Code highlighting produced by Actipro CodeHighlighter (freeware)

–mysqldump-hhostname-uusername-ppassword –databases databasename1 databasename2 databasename3multibackupfile.sql

6、僅僅備份資料庫結構

!–

Code highlighting produced by Actipro CodeHighlighter (freeware)

–mysqldump –no-data –databases databasename1 databasename2 databasename3structurebackupfile.sql

7、備份伺服器上所有資料庫

!–

Code highlighting produced by Actipro CodeHighlighter (freeware)

–mysqldump –all-databasesallbackupfile.sql

二、還原命令

1、還原MySQL資料庫的命令

!–

Code highlighting produced by Actipro CodeHighlighter (freeware)

–mysql-hhostname-uusername-ppassword databasenamebackupfile.sql

2、還原壓縮的MySQL資料庫

!–

Code highlighting produced by Actipro CodeHighlighter (freeware)

–gunzipbackupfile.sql.gz|mysql-uusername-ppassword databasename

3、將資料庫轉移到新伺服器

!–

Code highlighting produced by Actipro CodeHighlighter (freeware)

–mysqldump-uusername-ppassword databasename|mysql –host=*.*.*.*-C databasename

總結

做好數據備份和還原,定好合適的備份策略,這是一個DBA所做事情的一小部分,萬事開頭難,就從現在開始吧!

原創文章,作者:LHFT,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/132656.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
LHFT的頭像LHFT
上一篇 2024-10-03 23:53
下一篇 2024-10-03 23:53

相關推薦

  • 如何修改mysql的埠號

    本文將介紹如何修改mysql的埠號,方便開發者根據實際需求配置對應埠號。 一、為什麼需要修改mysql埠號 默認情況下,mysql使用的埠號是3306。在某些情況下,我們需…

    編程 2025-04-29
  • Python 常用資料庫有哪些?

    在Python編程中,資料庫是不可或缺的一部分。隨著互聯網應用的不斷擴大,處理海量數據已成為一種趨勢。Python有許多成熟的資料庫管理系統,接下來我們將從多個方面介紹Python…

    編程 2025-04-29
  • KeyDB Java:完美的分散式高速緩存方案

    本文將從以下幾個方面對KeyDB Java進行詳細闡述:KeyDB Java的特點、安裝和配置、使用示例、性能測試。 一、KeyDB Java的特點 KeyDB Java是KeyD…

    編程 2025-04-29
  • openeuler安裝資料庫方案

    本文將介紹在openeuler操作系統中安裝資料庫的方案,並提供代碼示例。 一、安裝MariaDB 下面介紹如何在openeuler中安裝MariaDB。 1、更新軟體源 sudo…

    編程 2025-04-29
  • Python操作MySQL

    本文將從以下幾個方面對Python操作MySQL進行詳細闡述: 一、連接MySQL資料庫 在使用Python操作MySQL之前,我們需要先連接MySQL資料庫。在Python中,我…

    編程 2025-04-29
  • 資料庫第三範式會有刪除插入異常

    如果沒有正確設計資料庫,第三範式可能導致刪除和插入異常。以下是詳細解釋: 一、什麼是第三範式和範式理論? 範式理論是關係資料庫中的一個規範化過程。第三範式是範式理論中的一種常見形式…

    編程 2025-04-29
  • MySQL遞歸函數的用法

    本文將從多個方面對MySQL遞歸函數的用法做詳細的闡述,包括函數的定義、使用方法、示例及注意事項。 一、遞歸函數的定義 遞歸函數是指在函數內部調用自身的函數。MySQL提供了CRE…

    編程 2025-04-29
  • leveldb和unqlite:兩個高性能的資料庫存儲引擎

    本文將介紹兩款高性能的資料庫存儲引擎:leveldb和unqlite,並從多個方面對它們進行詳細的闡述。 一、leveldb:輕量級的鍵值存儲引擎 1、leveldb概述: lev…

    編程 2025-04-28
  • Python怎麼導入資料庫

    Python是一種高級編程語言。它具有簡單、易讀的語法和廣泛的庫,讓它成為一個靈活和強大的工具。Python的資料庫連接類型可以多種多樣,其中包括MySQL、Oracle、Post…

    編程 2025-04-28
  • MySQL bigint與long的區別

    本文將從數據類型定義、存儲空間、數據範圍、計算效率、應用場景五個方面詳細闡述MySQL bigint與long的區別。 一、數據類型定義 bigint在MySQL中是一種有符號的整…

    編程 2025-04-28

發表回復

登錄後才能評論