1、备份命令
格式:mysqldump -h主机名 -P端口 -u用户名 -p密码 --database 数据库名 > 文件名.sql
例如: mysqldump -h 192.168.1.100 -p 3306 -uroot -ppassword --database cmdb > /data/backup/cmdb.sql
2、备份压缩
导出的数据有可能比较大,不好备份到远程,这时候就需要进行压缩
格式:mysqldump -h主机名 -P端口 -u用户名 -p密码 --database 数据库名 | gzip > 文件名.sql.gz
例如: mysqldump -h192.168.1.100 -p 3306 -uroot -ppassword --database cmdb | gzip > /data/backup/cmdb.sql.gz
3、备份同个库多个表
格式:mysqldump -h主机名 -P端口 -u用户名 -p密码 --database 数据库名 表1 表2 .... > 文件名.sql
例如 mysqldump -h192.168.1.100 -p3306 -uroot -ppassword cmdb t1 t2 > /data/backup/cmdb_t1_t2.sql
4、同时备份多个库
格式:mysqldump -h主机名 -P端口 -u用户名 -p密码 --databases 数据库名1 数据库名2 数据库名3 > 文件名.sql
例如:mysqldump -h192.168.1.100 -uroot -ppassword --databases cmdb bbs blog > /data/backup/mutil_db.sql
5、备份实例上所有的数据库
格式:mysqldump -h主机名 -P端口 -u用户名 -p密码 --all-databases > 文件名.sql
例如:mysqldump -h192.168.1.100 -p3306 -uroot -ppassword --all-databases > /data/backup/all_db.sql
6、备份数据出带删除数据库或者表的sql备份
格式:mysqldump -h主机名 -P端口 -u用户名 -p密码 --add-drop-table --add-drop-database 数据库名 > 文件名.sql
例如:mysqldump -uroot -ppassword --add-drop-table --add-drop-database cmdb > /data/backup/all_db.sql
7、备份数据库结构,不备份数据
格式:mysqldump -h主机名 -P端口 -u用户名 -p密码 --no-data 数据库名1 数据库名2 数据库名3 > 文件名.sql
例如:mysqldump --no-data –databases db1 db2 cmdb > /data/backup/structure.sql
=============================================================================================
mysqldump--导出工具
#导出单个数据库:结构 无数据
[root@localhost ~]#mysqldump -h127.0.0.1 -uroot -p --opt --no-data db_name >~/db_name.sql
#导出单个数据库:有数据 无结构
[root@localhost ~]#mysqldump -h127.0.0.1 -uroot -p --opt --no-create-info db_name >~/db_name.sql
#导出单个数据库:结构+数据
[root@localhost ~]#mysqldump -h127.0.0.1 -uroot -p --opt db_name >~/db_name.sql
#导出单个数据库:结构+数据+函数+存储过程
[root@localhost ~]#mysqldump -h127.0.0.1 -uroot -p --opt -R db_name >~/db_name.sql
#导出多个数据库:结构
[root@localhost ~]#mysqldump -h127.0.0.1 -uroot -p --opt --databases db_name1 db_name2 >~/db_name.sql
#导出单个表:结构 无数据
[root@localhost ~]#mysqldump -h127.0.0.1 -uroot -p --opt --no-data -d db_name table>~/table_name.sql
#导出单个表:结构 包含数据
[root@localhost ~]#mysqldump -h127.0.0.1 -uroot -p --opt dbname tablename>~/tablename.sql
mysql导入:
[root@localhost ~]#mysql -u root -p
[root@localhost ~]#use 要导入的数据库
[root@localhost ~]#source /home/1.sql
或者
[root@localhost ~]#mysql -u root -p< /home/1.sql
注:
##--opt==--add-drop-table + --add-locks + --create-options + --disables-keys + --extended-insert + --lock-tables + --quick + --set+charset
##默认使用--opt,--skip-opt禁用--opt参数