#1. 物理備份: 直接複製資料庫檔案,適用於大型資料庫環境。但不能恢復到異構系統中如windows。
#2. 邏輯備份: 備份的是建表、建庫、插入等操作所執行sql語句,適用於中小型資料庫,效率相對較低。
一、使用mysqldump實現邏輯備份
#語法:
# mysqldump -h 伺服器 -u使用者名稱 -p密碼 資料庫名 > 備份檔案.sql
#示例:
#單庫備份
mysqldump -uroot -p123 db1 > db1.sql
mysqldump -uroot -p123 db1 table1 table2 > db1-table1-table2.sql
#多庫備份
mysqldump -uroot -p123 --databases db1 db2 mysql db3 > db1_db2_mysql_db3.sql
#備份所有庫
mysqldump -uroot -p123 --all-databases > all.sql
二、恢復邏輯備份
#方法一:
[root@egon backup]# mysql -uroot -p123 < /backup/all.sql
#方法二:
mysql> use db1;
mysql> set sql_log_bin=0;
mysql> source /root/db1.sql
#注:如果備份/恢復單個庫時,可以修改sql檔案
drop database if exists school;
create database school;
use school;
三、表的匯出和匯入
elect... into outfile 匯出文字檔案
示例:mysql> select * from school.student1
into outfile 'student1.txt'
fields terminated by ',' //定義字段分隔符
optionally enclosed by '」' //定義字串使用什麼符號括起來
lines terminated by '\n' ; //定義換行符
mysql 命令匯出文字檔案
示例:# mysql -u root -p123 -e 'select * from student1.school' > /tmp/student1.txt
# mysql -u root -p123 --xml -e 'select * from student1.school' > /tmp/student1.xml
# mysql -u root -p123 --html -e 'select * from student1.school' > /tmp/student1.html
load data infile 匯入文字檔案
mysql> delete from student1;
mysql> load data infile '/tmp/student1.txt'
into table school.student1
fields terminated by ','
optionally enclosed by '」'
lines terminated by '\n';
四、資料庫遷移
務必保證在相同版本之間遷移
# mysqldump -h 源ip -uroot -p123 --databases db1 | mysql -h 目標ip -uroot -p456
mysql 備份源資料 mysql 資料備份與還源
一 資料備份 1 使用mysqldump命令備份 mysqldump命令將資料庫中的資料備份成乙個文字檔案。表的結構和表中的資料將儲存在生成的文字檔案中。mysqldump命令的工作原理很簡單。它先查出需要備份的表的結構,再在文字檔案中生成乙個create語句。然後,將表中的所有記錄轉換成一條ins...
mysql備份資料 mysql 備份資料
1 備份命令 格式 mysqldump h主機名 p埠 u使用者名稱 p密碼 dbname tbname 檔名.sql 如果tbname不填,就是單個資料據的所有表 例如 mysqldump h 192.168.1.100 p 3306 uroot ppassword database cmdb d...
mysql資料備份
mysql教程資料庫教程的備份 匯入 匯出 資料匯入 資料匯出 資料庫和資料表的匯入匯出我們用的是mysqldump 來操作,資料的匯入匯出我們用load data infile 與 load data outfile操作 匯出資料庫方法 引數 mysqldump u使用者名稱 p密碼 資料庫 儲存...