加载中…
个人资料
IT曹大哥
IT曹大哥
  • 博客等级:
  • 博客积分:0
  • 博客访问:78,861
  • 关注人气:6
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
相关博文
推荐博文
正文 字体大小:

Mysql备份与迁移用户权限脚本

(2011-03-11 11:17:12)
标签:

杂谈

分类: mysql
因为要批量布署公司的应用服务器,其中一个问题是繁多的Mysql用户权限复制,研究和查阅网上资料好久.因为mysql版本不一样,否定了直接备份mysql库的方式,最终找到一个省力的解决办法.

#!/bin/bash
#Function export user privileges
#这个函数的原型是参考某国外网站发布的一个技术贴子而写的.
expgrants()
{
mysql -B -N $@ -e "SELECT DISTINCT CONCAT(
'SHOW GRANTS FOR ''', user, '''@''', host, ''';'
) AS query FROM mysql.user" | \
mysql $@ | \
sed 's/\(GRANT .*\)/\1;/;s/^\(Grants for .*\)/-- \1 /;/--/{x;p;x;}'
}
expgrants > /tmp/grants.sql
echo -ne "\nflush privileges;\n" >> /tmp/grants.sql
#本地与对方主机都建立了密钥认证,不提示密码
scp /tmp/grants.sql user1@x.x.x.x:/tmp
ssh user1@x.x.x.x "mysql < /tmp/grants.sql"

0

阅读 评论 收藏 转载 喜欢 打印举报/Report
  • 评论加载中,请稍候...
发评论

    发评论

    以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

      

    新浪BLOG意见反馈留言板 欢迎批评指正

    新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

    新浪公司 版权所有