• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase
您的位置:首页 > 数据库 >Mysql > MySQL中导出用户权限设置的脚本分享

MySQL中导出用户权限设置的脚本分享

作者: 字体:[增加 减小] 来源:互联网 时间:2017-05-11

通过本文主要向大家介绍了mysql 用户权限,mysql查看用户权限,mysql用户权限设置,mysql 修改用户权限,mysql 撤消用户权限等相关知识,希望本文的分享对您有所帮助

在对MySQL数据库进行迁移的时候,有时候也需要迁移源数据库内的用户与权限。对于这个迁移我们可以从mysql.user表来获取用户的相关权限来生成相应的SQL语句,然后在目标服务器上来执行生成的SQL语句即可。本文提供了生成提取用户权限的脚本并给出演示。

1、生成用户权限的脚本

[root@HKBO ~]# more exp_grant.sh 
#!/bin/bash 
#Function export user privileges 
 
pwd=123456 
expgrants() 
{ 
  mysql -B -u'root' -p${pwd} -N $@ -e "SELECT CONCAT( 
    'SHOW GRANTS FOR ''', user, '''@''', host, ''';' 
    ) AS query FROM mysql.user" | \ 
  mysql -u'root' -p${pwd} $@ | \ 
  sed 's/\(GRANT .*\)/\1;/;s/^\(Grants for .*\)/-- \1 /;/--/{x;p;x;}' 
} 
expgrants > ./grants.sql 
</div>

2、生成权限SQL脚本

[root@HKBO ~]# ./exp_grant.sh  
 
[root@HKBO ~]# head grants.sql 
-- Grants for root@127.0.0.1  
GRANT ALL PRIVILEGES ON *.* TO 'root'@'127.0.0.1' IDENTIFIED BY PASSWORD '*EB3EA446C759C9DA93F84FCB56430DBEF051A9DD' WITH GRANT OPTION; 
GRANT ALL PRIVILEGES ON `CNBO0815`.* TO 'root'@'127.0.0.1' WITH GRANT OPTION; 
 
-- Grants for root@172.16.10.%  
GRANT ALL PRIVILEGES ON *.* TO 'root'@'172.16.10.%' IDENTIFIED BY PASSWORD '*6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9'; 
 
-- Grants for CNBO@192.168.1.%  
GRANT USAGE ON *.* TO 'CNBO'@'192.168.1.%' IDENTIFIED BY PASSWORD '*ABD91BAD4A3448428563952E281015B237310EA8'; 
         ........................... 
 
</div>

3、在目标服务器上执行脚本

将生成的脚本在目标服务器上执行即可。 mysql -uname -ppwd <grants.sql

需要注意:

a、目标服务上为非空服务器,已经存在一些账户及权限应考虑会覆盖的问题。
b、如果仅仅需要迁移非root用户,可以在原脚本中添加过滤条件,即 where user<>'root' 。

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • mysql SKIP-NAME-RESOLVE 错误的使用时机造成用户权限
  • MySQL创建用户并授权及撤销用户权限
  • MySQL中导出用户权限设置的脚本分享
  • MySQL创建用户与授权及撤销用户权限方法
  • MySQL用户密码中的特殊字符叹号(!)的妙用
  • mysql 新增、删除用户和权限分配

相关文章

  • 2017-05-11分析MySQL中优化distinct的技巧
  • 2018-12-05IN&EXISTS与NOT IN&NOT EXISTS 的优化原则小结
  • 2018-12-05实例详解mysql中innodb_flush_method方法
  • 2018-12-05sql server中的decimal或者numeric的精度问题
  • 2018-12-05mssql SA帐号的改名和删除
  • 2017-05-11MySQL查询优化之索引的应用详解
  • 2017-05-11MySQL中安装样本数据库Sakila过程分享
  • 2018-12-05MySQL关于使用变量实现各种排序的示例代码分析
  • 2018-12-05如何用MySQLAdministrator备份mysql数据库
  • 2017-05-11mysql如何让自增id归0解决方案

文章分类

  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase

最近更新的内容

    • 解析mysql创建本地用户及赋予数据库权限
    • 生产库自动化MySQL5.6安装部署详细教程_MySQL
    • MySQL中的运算符使用实例展示
    • 在MySQL数据库中把int类型转化varchar类型引发的慢查询问题
    • MySQL数据表字段内容的批量修改、清空、复制等更新命令
    • 【MySQL 02】数据库总结
    • 如何通过SSH连接Mysql数据库?
    • 总结MySQL建表、查询优化的一些实用小技巧
    • 分页存储过程(三)在sqlserver中打造更加准确的分页结果
    • 关于mysql优化之IN换INNER JOIN的实例分享

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有