共計 2478 個字符,預計需要花費 7 分鐘才能閱讀完成。
這篇文章主要講解了“mysql 備份和恢復的命令”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著丸趣 TV 小編的思路慢慢深入,一起來研究和學習“mysql 備份和恢復的命令”吧!
在 windows 服務器下 mysql 備份恢復我們經常會使用 mysqldump 命令來完成這些操作,下面我來詳細的總結一下 mysqldump 備份恢復命令的用法介紹。
設 mysql 安裝在 c: 盤,mysql 的用戶名是 root,密碼是 123456,數據庫名是 database_name,在 d: 盤根目錄下面存放備份數據庫,備份數據庫名字為 backup20070713.sql(20070713.sql 為備份日期)
備份數據庫:
dump 是采用 SQL 級別的備份機制,它將數據表導成 SQL 腳本文件,在不同的 MySQL 版本之間升級時相對比較合適,這也是最常用的備份方法。
代碼如下 www.2cto.com
mysqldump -uroot -p123456 database_name d:/backup20070713.sql
上面 windows/ 下面為 linux
我通常使用以下 SQL 來備份 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
使用以下 SQL 來備份 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
另外,如果想要實現在線備份,還可以使用 –master-data 參數來實現,如下:
代碼如下
/usr/local/mysql/bin/mysqldump -uyejr -pyejr
–default-character-set=utf8 –opt –master-data=1
–single-transaction –flush-logs db_name db_name.sql
恢復數據庫:
刪除原有數據庫,建立數據庫,把備份數據庫導入。
代碼如下
mysqladmin -uroot -p123456 drop database_name
mysqladmin -uroot -p123456 create database_name
mysql -uroot -p123456 database_name
用 mysqldump 備份出來的文件是一個可以直接倒入的 SQL 腳本,有兩種方法可以將數據導入。
直接用 mysql 客戶端 www.2cto.com
例如:
代碼如下
/usr/local/mysql/bin/mysql -uyejr -pyejr db_name db_name.sql
用 SOURCE 語法
其實這不是標準的 SQL 語法,而是 mysql 客戶端提供的功能,例如:
代碼如下
SOURCE /tmp/db_name.sql;
這里需要指定文件的絕對路徑,并且必須是 mysqld 運行用戶 (例如 nobody) 有權限讀取的文件。
注:在導入備份數據庫前,database_name 如果沒有,是需要創建的; 而且與 backup20070713.sql 中數據庫名是一樣的才能導入。
mysqldump(數據導出工具)
mysqldump options db_name[table_name]// 備份單個數據庫
mysqldump 選項 –database database-name1 [databases-name2]….// 備份指定的數據庫一個或者多個
mysqldump 選項 –all-database // 備份所有的數據庫
鏈接選項:
-u : 指定用戶名
-p: 指定密碼
-h: 指定服務器 ip 或者域名
-P(大寫): 指定端口
eg:/usr/bin/mysqldump -u root -h 202.194.132.237 -P 3306 -p BBS user /home/wuxiaoxiao/user.txt
輸出內容選項:
–add-drop-database: 每個數據庫創建語句之前加上 drop database 語句
–add-drop-table: 每個表創建語句之前加上 drop table 語句
-n: 不包含數據庫的創建語句
-t: 不包含數據表的創建語句
-d: 不包含數據
輸出格式選項: www.2cto.com
–compact: 使輸出結果簡潔
-c –compact-insert: 使輸出文件中的 insert 語句包含字段名
-T: 將數據庫表中的數據備份為單純的數據文本和建表 sql 倆個文件
–fields-terminated-by=name(域分割符)
–fields-enclosed-by=name(域引用符)
–fields-optionally-enclosed-by=name(域可選引用符)
–fields-escaped-by=name(轉移字符)
eg:/usr/bin/mysqldump -u root -h 202.194.132.237 -P 3306 -p BBS user -T ./bak
字符集選項:
–default-character-set=name: 設置導出的客戶端字符集
eg:mysql -u root -p –compact –default-character-set=utf8 BBS user test.txt
感謝各位的閱讀,以上就是“mysql 備份和恢復的命令”的內容了,經過本文的學習后,相信大家對 mysql 備份和恢復的命令這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是丸趣 TV,丸趣 TV 小編將為大家推送更多相關知識點的文章,歡迎關注!