mysqldump 多数据库备份

mysqldump -uroot -p --all-databases > back.sql 备份所有数据库
然而如果我们想排除个别数据库怎么办?

mysql -e "show databases;" -uroot -ppassword | grep -Ev "Database|information_schema|mysql|db1|db2" | xargs mysqldump -uroot -ppassword --databases > mysql_back.sql

恢复的时候 只恢复单个的数据库 怎么办?

 mysql -u root -p databasename --one-database< mysql_back.sql 

mysql-workbench中duration fetch的含义

duration 为查询所花的时间
fetch 读取结果所花的时间
一般优化以duration时间为重
fetch 时间比较大的话,考虑到是网络因素,或者查询语句中,有相关后续处理的函数
如:

select * from names where mid(xingming,2) regexp '死|病|鬼|瘪|丑|杀|缺'

上面的语句连续用了2个处理函数,会导致fetch时间比较长
查看比较详细的 语句执行过程中 各个阶段所占时间可以用如下的命令
set profiling=1;
需要执行的sql
show profiles;
show profile for query 1;