導入導出對於mysql來講就是數據備份了,下面我來介紹在超大數據量時如何利用mysql命令對數據庫進行備份與還原操作,希望些方法對各位有所幫助。
面對大數據量,大文件的sql操作,我們需要借助mysql強大的命令操作:
1. 數據庫導入命令
代碼如下 復制代碼 mysql -h localhost -u root -p說明:需要使用命令連接上數據庫並選擇相應數據庫才能使用。
2. 數據庫備份命令
MySQL的導出命令mysqldump,基本用法是:
代碼如下 復制代碼 mysqldump [OPTIONS] database [tables]說明:不能先連接數據庫,是直接連接數據庫導出
簡單實例:
代碼如下 復制代碼 mysqldump -h localhost -u root -p dbname > backup.sql
MySQL的mysqldump命令,基本用法是:
mysqldump [OPTIONS] database [tables]說明:
1. 通過執行mysqldump –help,你能得到你mysqldump的版本支持的使用幫助信息。
2.如果端口為默認的3306時,可省略 -P {端口號} 這一項。
3.命令行格式中 { } 中的內容都是變量
主機名 : {hostname}
端 口:{port} (一般默認3306,可缺省)
用戶名:{user} {username} (如root)
密 碼:{password}
數據庫名 :{database}
表 名:{table} {table1} {table2}
文件名:{backup.sql}
.常用操作:
備份MySQL整個數據庫:
代碼如下 復制代碼 mysqldump -h主機名 -P端口 -u用戶名 -p密碼 (–database) 數據庫名 > 文件名.sql說明:參數及值可以分開如-P3306可以寫成-P 3306,密碼可以先不填寫,以確保安全。
MySQL數據庫壓縮備份:
代碼如下 復制代碼 mysqldump -h{hostname} -u{username} -p{password} {database} | gzip > {backup.sql.gz}備份MySQL數據庫某個(些)表:
mysqldump -h主機名 -P端口 -u用戶名 -p密碼 (–tables | –quick) 數據庫名 表名1 (表名2 …) > 文件名.sql (括號中的可缺省)。
#實例:
同時備份多個MySQL數據庫:
代碼如下 復制代碼 mysqldump -h{hostname} -P{port} -u{username} -p{password} –databases {database1} {database2} {database3} > multibackfile.sql還原MySQL數據庫的命令:
代碼如下 復制代碼 mysql -h{hostname} -u{username} -p{password} {database} < {backup.sql}還原壓縮的MySQL數據庫:
代碼如下 復制代碼 gunzip < {backup.sql.gz} | mysql –u{username} –p{password} {database}將數據庫轉移到新服務器:
代碼如下 復制代碼mysqldump –u{username} –p{password} {database} | mysql –host={hostname} –C {database}