mysqldump -u 用户名 -p密码 html
mysqldump -h 127.0.0.1 -u root -P3003 --events -p mysql > /tmp/mysql.bak.sql ###由于mysqldump默认是不备份事件表的,只有加了--events 才会解决加上mysql
egrep -v "#|\*|--|^$" /tmp/mysql.bak.sql ################查看导出的表信息sql
mysql -h 127.0.0.1 -uroot -p'123456' -P3003 -e "use mysql;drop table db;" ##经过命令删除mysql下的db表。
mysql -h 127.0.0.1 -uroot -p'123456' -P3003 mysql </tmp/mysql_B.sql ##经过备份还原mysql库的表数据库
mysql -uroot -h10.10.0.37 -P3320 --default-character-set=utf8 -p hive_new < ./201806201512sql.sql 还能够指定字符集bash
###带参数大B的导出ide
mysqldump -h127.0.0.1 -uroot -poldboy -P3003 -B oldboy > /tmp/oldboy_B.sql ####这样就算删除了oldboy数据库 也能恢复。spa
####压缩方式倒出数据库.net
mysqldump -h127.0.0.1 -uroot -poldboy -P3003 -B oldboy|gzip > /tmp/oldboy_B.sql.gzip调试
mysqldump备份原理日志
利用mysqldunmp命令备份数据的过程,实际上就是把数据从mysql库里以逻辑的sql语句的形式直接输入或者生成备份文件的过程。
####mysql备份多个库
mysqldump -h 127.0.0.1 -uroot -poldboy -P3003 -B oldboy test_gbk test_utf8|gzip > /opt/3gku.sql.gz ##备份多个库
gunzip < /opt/3gku.sql.gz |mysql -h 127.0.0.1 -uroot -poldboy -P3003 ###恢复库
mysql -h127.0.0.1 -uroot -poldboy -P3003 -e "show databases;"|grep -Evi "database|infor|perfor"|sed 's#^#mysqldump -h 127.0.0.1 -uroot -poldboy -P3003 -B #g'|gzip > /tmp/haha.sql.gz ###能够查出来库以及在库前面加上参数
###分库备份 mysql -h127.0.0.1 -uroot -poldboy -P3003 -e "show databases;"|grep -Evi "database|infor|perfor"|sed -r 's#^([a-z].*$)#mysqldump -h 127.0.0.1 -uroot -poldboy -P3003 -B \1|gzip > /opt/\1.sql.gz#g'|bash
#!/bin/bash for dbname in `mysql -h127.0.0.1 -uroot -poldboy -P3003 -e "show databases;"|grep -Evi "database|infor|perfor"` do mysqldump -h 127.0.0.1 -uroot -poldboy -P3003 --events -B $dbname|gzip > /opt/${dbname}_bak.sql.gz done
###备份mysql表结构
mysqldump -h127.0.0.1 -uroot -poldboy -P3003 --compact -d oldboy > /opt/a.sql ###备份表结构 mysqldump -h127.0.0.1 -uroot -poldboy -P3003 --compact -t oldboy > /opt/a.sql ###备份数据
###mysql数据库全备,而且刷新bin-log
mysqldump -h127.0.0.1 -uroot -p -P3003 --events -A -B -F |gzip > /opt/b.sql.gz
-A 备份 全部库 -B 指定多个库,增长建库语句和use语句 --compact 去掉注释,适合调试输出,生产不用 -F 刷新binlog日志 --master-data增长binlog日志文件名级对应的位置点 -R备份存储过程等 -x锁表 -l --lock-tables 只读锁表 -d 只备份表结构 -t 只备份数据
--single-transaction 适合innodb事物数据库备份
myisam 备份命令
mysqldump -h127.0.0.1 -uroot -poldboy -A -B --master-data=2 -x --events |gzip > /opt/all.sql.gz
innodb 备份命令:推荐使用
mysqldump -h 127.0.0.1 -u root -poldboy -A -B --master-data=2 --events --single-transaction|gzip >/opt/all.sql.gz
mysql恢复方法
1.source /opt/mysql_bak_B.sql ##须要进入数据库里面操做而后指定指定数据路径 sysctem 查看目录
2.mysql -h 127.0.0.1 -uroot -poldboy -P3003 oldboy < /opt/mysql_bak.sql
mysql -h 127.0.0.1 -uroot -poldboy -P3003 < /opt/mysql_bak_B.sql
##查看连接数据库状况
mysql -h 127.0.0.1 -uroot -poldboy -P3003 -e "show full processlist;" 能够查到数据库连接状况以及操做命令来排查慢查询
mysql -h 127.0.0.1 -uroot -poldboy -P3003 -e "show global status;" 查看全局状态
mysql -h 127.0.0.1 -uroot -poldboy -P3003 -e "show global status;"|grep sel ###查看mysql计数
https://blog.csdn.net/jesseyoung/article/details/37106035 https://www.cnblogs.com/kevingrace/p/5907254.html