mysql資料備份與還原

來源:互聯網
上載者:User

標籤:

mysql資料備份與還原

      • mysql資料備份與還原
        • 資料備份
          • mysqldump備份
          • 直接複製這個資料庫目錄
          • mysqlhotcopy工具快速備份
        • 資料還原
          • mysql命令還原
          • 使用source 命令匯入備份sql檔案
          • 使用直接複製到資料目錄的方法
          • mysqlhotcopy快速恢複

資料備份mysqldump備份

mysqldump備份的基本文法格式如下:

mysqldump -u user -h host -p password dbname[tbname,[tbname...]] > filename.sql
  • 使用mysqldump備份單個資料庫中的所有表
 mysqldump -u root -p booksDB > /Users/frankstar/Desktop/booksDB_20160510.sql

輸入密碼後,案頭即可看見備份的資料庫檔案,檔案開頭是mysqldump工具的版本號碼,然後是備份賬戶的名稱與主機資訊,以及資料庫的名稱,伺服器的版本號碼等。下面是SET語句,主要是涉及恢複時資料庫的系統變數值,最後幾行使用SET語句恢複伺服器系統變數原來的值。

  • 使用mysqldump備份資料庫中的某個表
mysqldump -u root -p booksDB books > /Users/frankstar/Desktop/books_20160510.sql
  • 使用mysqldump備份多個資料庫
mysqldump -u root -p --databases booksDB JavaStudy > /Users/frankstar/Desktop/bookDB_JavaStudy_20160510.sql
  • 使用–all-databases備份全部資料庫
mysqldump -u root -p --all-databases > /Users/frankstar/Desktop/allDatabases_20160510.sql

提示:如果資料庫中表都是MyISAM表,可考慮使用mysqlhotcopy,提高效率。

直接複製這個資料庫目錄

可以直接複製資料庫的儲存目錄和檔案進行備份。這個方法對Innodb儲存引擎的表不適合,同時還要求資料庫版本要一致,否則可能出現不相容。首先備份前需要進行LOCK TABLES操作,然後執行FLUSH TABLES,複製資料庫檔案時應該允許使用者查詢,需要FLUSH TABLES語句來確保開始備份前將所有的啟用索引頁寫入到硬碟。最好的辦法是停止服務進行複製。

mysqlhotcopy工具快速備份

mysqlhotcopy必須要可以訪問備份的資料表檔案,具有表的SELECT、RELOAD、LOCK TABLES等許可權,同時它只適用於MyISAM和ARCHIVE儲存引擎的表。

文法格式如下:

mysqlhotcopy -u root -p JavaStudy /Users/frankstar/Desktop/JavaStudy

它只是將表所在目錄複寫到另一個目錄下,類似直接的複製cp/scp來備份資料庫。

資料還原mysql命令還原

文法格式如下:

mysql -u root -p booksDB < /Users/frankstar/Desktop/booksDB_20160510.sql

提示:首先資料庫中要有這個還原的資料庫,即使是空的。

使用source 命令匯入備份sql檔案

首先登陸到伺服器上,使用如下文法:

#source filename;mysql> use booksDB ;mysql> source /Users/frankstar/Desktop/booksDB_20160510.sql
使用直接複製到資料目錄的方法

將之前通過複本備份資料庫的資料目錄與檔案複製到mysql的資料目錄下實現還原,這種方法要求資料庫的主要版本號需要相同,同時要求是MyISAM表,同時需要停止資料庫服務以及更改資料檔案的屬主與屬組為mysql

mysqlhotcopy快速恢複

與直接複製到資料目錄的方法類似,也需要停止服務,更改資料檔案的屬主和屬組,如下:

chown -R mysql:mysql /var/lib/mysql/db_name

複製文法:

cp -R /Users/frankstar/Desktop/JavaStudy /usr/local/var/mysql/JavaStudy

mysql資料備份與還原

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.