1. 程式人生 > >MySQL導出用戶權限

MySQL導出用戶權限

com col username servers for tmp mys grant 權限

在MySQL 5.5/5.6版本中,使用SHOW GRANTS命令可以導出用戶的創建腳本和授權腳本。

hostname=127.0.0.1
port=3358
username=root
password=[email protected]
mysql_exe="/export/servers/mysql/bin/mysql"
echo "select concat(‘show grants for ‘‘‘,user,‘‘‘@‘‘‘,host, ‘‘‘;‘) from mysql.user where user <>‘root‘" | ${mysql_exe} --host=$hostname --user=$username --password=$password --port=$port -N | ${mysql_exe} 
--host=$hostname --user=$username --password=$password --port=$port -N | sed "s/$/;/" > /tmp/create-users.sql

在MySQL 5.7版本中,需要使用SHOW CRETAE USER命令導出用戶創建腳本,然後使用SHOW GRANT命令導出用戶授權腳本。

hostname=127.0.0.1
port=3358
username=root
password=[email protected]
mysql_exe="/export/servers/mysql/bin/mysql"
echo "select concat(‘show create user ‘‘‘,user,‘‘‘@‘‘‘,host, ‘‘‘;‘,‘show grants for ‘‘‘,user,‘‘‘@‘‘‘,host, ‘‘‘;‘) from mysql.user where user <>‘root‘
" | ${mysql_exe} --host=$hostname --user=$username --password=$password --port=$port -N | ${mysql_exe} --host=$hostname --user=$username --password=$password --port=$port -N | sed "s/$/;/" > /tmp/create-users.sql

MySQL導出用戶權限