导出数据
--set-gtid-purged=OFF 注意此参数添加后导出的脚本带binlog,否则主从同步会出问题
1、备份全部数据库的数据和表结构
mysqldump -uroot -ppassword -A >all.sql --set-gtid-purged=OFF
2、只备份表结构,不备份数据
mysqldump -uroot -ppassword -A -d > database.sql --set-gtid-purged=OFF
3、只备份数据库,不备份表结构
mysqldump -uroot -ppassword -A -t > data.sql --set-gtid-purged=OFF
4、备份单个数据库的数据和表结构(只备份数据或者表结构可以用-t或者-d)
mysqldump -uroot -password dbname > dbname.sql --set-gtid-purged=OFF
5、一次性备份多个数据库的数据和表结构(只备份数据或者表结构可以用-t或者-d)
mysqldump -uroot -ppassword db1 db2 > dbs.sql --set-gtid-purged=OFF
6、备份并压缩备份文件
mysqldump -uroot -ppassword -A |gzip all.sql.gz
7、备份所有数据库的数据和表结构并刷新数据(需要打开binlog日志,可以用于构建主从)
mysqldump --skip-lock-tables --single-transaction --flush-logs --hex-blob --master-data=2 -uroot -ppassword --all-databases | gzip all_dbs.sql.gz
8、导出数据库表中的函数
mysqldump -hhostname -uusername -ppassword -ntd -R --set-gtid-purged=OFF databasename > prorandfunc.sql # 导出数据库databasename中的函数
mysqldump -hhostname -uusername -ppassword -ntd -R --all_databases --set-gtid-purged=OFF > prorandfunc.sql # 导出所有数据库的函数
导入数据
1、直接通过命令重定向导入数据
mysql -uroot -ppassword < all.sql
2、在mysql终端source文件
mysql -uroot -ppassword
mysql> source all.sql
3、还原单个数据库(同样可以通过mysql终端source)
mysql -uroot -ppassword db1 < db.sql