一、備份命令php
格式:mysqldump -h主機名 -P端口 -u用戶名 -p密碼 --database 數據庫名 > 文件名.sql css
例如: mysqldump -h 192.168.1.100 -p 3306 -uroot -ppassword --database cmdb > dump.sqlhtml
二、備份壓縮mysql
導出的數據有可能比較大,很差備份到遠程,這時候就須要進行壓縮sql
格式:mysqldump -h主機名 -P端口 -u用戶名 -p密碼 --database 數據庫名 | gzip > 文件名.sql.gzshell
例如: mysqldump -h192.168.1.100 -p 3306 -uroot -ppassword --database cmdb | gzip > dump.sql.gz數據庫
三、備份同個庫多個表bash
格式:mysqldump -h主機名 -P端口 -u用戶名 -p密碼 --database 數據庫名 表1 表2 .... > 文件名.sql spa
例如 mysqldump -h192.168.1.100 -p3306 -uroot -ppassword cmdb t1 t2 > dump.sql
code
四、同時備份多個庫
格式:mysqldump -h主機名 -P端口 -u用戶名 -p密碼 --databases 數據庫名1 數據庫名2 數據庫名3 > 文件名.sql
例如:mysqldump -h192.168.1.100 -uroot -ppassword --databases cmdb bbs blog > dump.sql
五、備份實例上全部的數據庫
格式:mysqldump -h主機名 -P端口 -u用戶名 -p密碼 --all-databases > 文件名.sql
例如:mysqldump -h192.168.1.100 -p3306 -uroot -ppassword --all-databases > dump_all.sql
七、備份數據庫結構,不備份數據
格式:mysqldump -h主機名 -P端口 -u用戶名 -p密碼 --no-data 數據庫名1 數據庫名2 數據庫名3 > 文件名.sql
例如:mysqldump --no-data –databases db1 db2 cmdb >dump.sql
shell> mysql -uroot -p123456 db1 < dump.sql
或者,在mysql中,使用 source
命令:
mysql> source dump.sql
若是文件是不包含CREATE DATABASE
和 USE
語句的單數據庫轉儲 ,請首先建立數據庫(若有必要):
shell> mysqladmin create db1
而後在加載轉儲文件時指定數據庫名稱:
shell> mysql db1 < dump.sql
或者,在mysql中建立數據庫,將其選爲默認數據庫,而後加載轉儲文件:
mysql> CREATE DATABASE IF NOT EXISTS db1; mysql> USE db1; mysql>source dump.sql
Example
shell> mysql --defaults-file=~/.mysql_user < /backup/2016-12-08-04-mysql-all.sql