讲师中心 微信公众号
AI工具推荐 视频效率加速

如何快速导出MySQL所有用户的授权语句以便迁移服务器?

云涛同学_3666

云涛同学_3666

发布时间:2026-07-26 11:21:22

|

951人浏览过

|

来源于php中文网

原创

应使用 SHOW GRANTS 逐个导出权限,而非直接导出 mysql.user 表;因真实权限分散在多张系统表且结构随版本变化,硬导易丢权限、锁账号或致登录失败;SHOW GRANTS 才能生成人眼可读、机器可执行的完整授权语句。

如何快速导出mysql所有用户的授权语句以便迁移服务器?

直接用 SHOW GRANTS 逐个生成,别碰 mysql.user

导出权限不是 dump 一张表的事。mysql.user 只存密码哈希和账号状态,真正权限分散在 mysql.dbmysql.tables_priv 等至少 5 张表里,结构随版本变化(比如 5.7 的 password 字段在 8.0 已被 authentication_string 替代),硬导会丢权限、锁账号、甚至导致登录失败。SHOW GRANTS FOR 'u'@'h' 才是唯一能还原“人眼可读、机器可执行”的完整授权逻辑的方式。

批量导出所有非系统用户的 SHOW GRANTS 语句

终端一行命令搞定(Linux/macOS):

mysql -Nse "SELECT CONCAT('SHOW GRANTS FOR ''', user, '''@''', host, ''' ;') FROM mysql.user WHERE user NOT IN ('mysql.infoschema','mysql.session','mysql.sys','root') AND user NOT LIKE 'performance_schema%'" | mysql -N | sed 's/$/;/g'
  • -N 关闭列名输出,-s 去除多余空格,避免解析失败
  • 过滤掉内置用户(mysql.session 等)——否则 SHOW GRANTS 会报错中断
  • sed 's/$/;/g' 给每行末尾补分号,方便后续直接 source 执行
  • 输出结果就是一串可直接在目标库运行的 GRANT ... TO 'u'@'h'; 语句

MySQL 8.0+ 必须额外处理角色和认证插件

如果源库用了角色(CREATE ROLE + GRANT role_name TO 'u'@'h'),SHOW GRANTS 输出里会有 SET DEFAULT ROLE,但不会展开角色本身的权限。漏掉角色定义,导入后权限不生效。

MySQL
MySQL

编写正确的MySQL查询,避免字符集、索引和锁方面的常见陷阱。

下载
  • 先导出角色权限:SHOW GRANTS FOR ROLE 'role_name';
  • 再导出角色绑定关系:SELECT * FROM mysql.role_edges WHERE TO_HOST = '%';(注意 host 匹配)
  • 检查用户认证插件:SELECT user, host, plugin FROM mysql.user; —— 若目标环境客户端老旧(如 PHP 7.2),需在新库执行 ALTER USER 'u'@'h' IDENTIFIED WITH mysql_native_password BY 'pwd'; 降级插件

导入前清空目标库旧权限比盲目追加更安全

直接执行导出的 GRANT 语句大概率报错:ERROR 1396 (HY000): Operation CREATE USER failed(用户已存在),或权限叠加引发越权。

  • 推荐做法:先对每个要迁移的账号执行 DROP USER IF EXISTS 'u'@'h';(MySQL 8.0.13+ 支持)
  • 若版本太低,改用 REVOKE ALL PRIVILEGES ON *.* FROM 'u'@'h'; REVOKE GRANT OPTION ON *.* FROM 'u'@'h';
  • 导入后必须执行 FLUSH PRIVILEGES;,内存权限缓存不刷新,新语句等于没执行
  • 特别注意:REVOKE 不重置密码、不解除锁定、不修改过期状态——这些字段得单独查 mysql.user 补全

实际迁移时最容易卡在「以为导出了就完事」——SHOW GRANTS 输出的是授权快照,但用户是否存在、密码是否兼容、角色是否定义、host 白名单是否适配目标网络,这四件事缺一不可。

热门AI工具

更多
豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

切问学术

切问学术是一款AI论文写作工具,复旦大学NLP团队推出的AI学术智能体。

LibLibAI
LibLibAI Hot

一款AI视频创作工具,主要用于国内领先的AI创意平台,以海量模型、低门槛操作与“创作-分享-商业化”生态,让小白与专业创作者都能高效实现图文乃至视频创意表达,适合需要提升相关任务效率的用户。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

讯飞智作

讯飞智作是一款AI视频创作工具,AI文本配音工具,数字人课程、营销视频制作。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

立刻MV
立刻MV Hot

立刻MV是一款AI文本写作工具,AI 音乐视频(MV)创作工具。

Loomy
Loomy Hot

一款AI工具,主要用于科大讯飞发布的桌面级 AI 助理,比 OpenClaw 更易用、更安全!,适合需要提升相关任务效率的用户。

VibeKnow
VibeKnow Hot

一款AI视频创作工具,主要用于全球首个AI知识视频创作平台,文档、文章、网页,一键生成视频,适合需要提升相关任务效率的用户。

相关专题

更多
服务器是什么
服务器是什么

服务器是一种计算机硬件设备或软件程序,它具有强大的计算和存储能力,用请求、存储数据和提供服务。它在互联网中着关重要的作用,为用户提供各种服务和资源。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

417

2023.08.15

连接apple id服务器时出错
连接apple id服务器时出错

连接apple id服务器时出错的原因包括网络连接问题、服务器问题、Apple ID账户问题、设备问题、防火墙或安全软件问题、时间和日期设置问题、Apple服务器维护等。本专题为大家提供apple id相关的文章、下载、课程内容,供大家免费下载体验。

820

2023.09.08

搭建互联网服务器
搭建互联网服务器

搭建互联网服务器需要:1、选择合适的硬件和操作系统,第一步是选择合适的硬件和操作系统;2、安装和配置操作系统,是搭建互联网服务器的关键步骤;3、安装和配置服务器软件,是搭建互联网服务器的下一步,常见的服务器软件包括Apache、Nginx、Tomcat等;4、配置防火墙和安全性,是搭建互联网服务器的重要步骤;5、域名解析和配置,是搭建互联网服务器的最后一步。

2372

2023.09.19

如何查看服务器状态
如何查看服务器状态

查看服务器状态的方法有使用命令行工具、图形界面工具、监控工具、日志文件和远程管理工具等。本专题为大家提供服务器状态相关的文章、下载、课程内容,供大家免费下载体验。

816

2023.10.09

服务器域名转接慢怎么解决
服务器域名转接慢怎么解决

服务器域名转接慢的解决办法有DNS优化、服务器优化、CDN加速、前端优化和网络优化等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

689

2023.10.17

服务器评测软件
服务器评测软件

服务器评测软件有PassMark Software、CPU-Z、GPU-Z、CrystalDiskMark、IOmeter、JMeter、LoadRunner、Apache Bench等等。详细介绍:1、PassMark Software是一款综合性的服务器性能测试软件,可以评估服务器在各种负载条件下的性能;2、CPU-Z是一款可以提供服务器CPU详细信息的软件等等。

374

2023.10.17

如何开启TFTP服务器
如何开启TFTP服务器

开启TFTP服务器的步骤包括选择TFTP服务器软件、下载和安装软件、配置TFTP服务器以及启动和测试服务器等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2136

2023.10.18

服务器负载不兼容怎么解决
服务器负载不兼容怎么解决

解决方法:1、增加服务器资源;2、负载均衡;3、优化应用程序;4、增加缓存机制;5、分布式架构;6、限流和熔断;7、自动化扩容。想知道更详细服务器负载不兼容的解决方法,可以访问本专题下面的文章。

3912

2023.10.20

Conan私有仓库搭建教程
Conan私有仓库搭建教程

本专题系统的讲解Conan私有仓库的搭建流程,涵盖仓库服务部署、存储目录配置、用户认证、权限划分和远程地址添加,并介绍内部C++依赖包的上传、下载及版本维护方法。

0

2026.09.22

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL vs MySQL
PostgreSQL vs MySQL

共1课时 | 169人学习

使用phpenv集成环境安装极致CMS
使用phpenv集成环境安装极致CMS

共2课时 | 273人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn