mysql导出所有用户权限脚本

#!/bin/bash
#Function export user privileges

exp_grants()
{
  mysql -B -u'root' -p'123456' -N $@ -e "SELECT CONCAT(
    'SHOW GRANTS FOR ''', user, '''@''', host, ''';'
    ) AS query FROM mysql.user" | \
  mysql -u'root' -p'123456' $@ | \
  sed 's/\(GRANT .*\)/\1;/;s/^\(Grants for .*\)/-- \1 /;/--/{x;p;x;}'
}
exp_grants > ./results.sql

其中用到了sed的替换和模式空间,保持空间

你可能感兴趣的:(--,MySQL,BAK&REC)