MySQL中用户权限迁移

MySQL中用户权限迁移

近期需要对两台mysql进行合并,涉及到用户权限问题,特将需要合并的mysql中的用户权限进行一次迁移,并记录如下

一、导出用户权限

1、获取mysql库中应用用户的列表信息

1
mysql -B -N -uroot -p'你的密码' -S /tmp/mysql3306.sock -e "SELECT CONCAT('\'', user,'\'@\'', host, '\'') FROM user WHERE user NOT IN('replication','root','','mysql.session','mysql.sys')" mysql > /tmp/mysql_all_users.txt

2、获取用户权限信息

1
while read line; do mysql -B -N -uroot -p'你的密码' -S /tmp/mysql3306.sock -e "SHOW GRANTS FOR $line"; done < /tmp/mysql_all_users.txt > /tmp/mysql_all_users_sql.sql

3、修改导出的 mysql_all_users_sql.sql

    在每行的结尾增加“;”,做为结束符

1
sed -i 's/$/;/' /tmp/mysql_all_users_sql.sql

 在最后一行增加 “flush privileges;” 更新权限,使其生效

1
echo "flush privileges;" >> /tmp/mysql_all_users_sql.sql

 

二、导入用户权限

1、copy 导出的mysql_all_users_sql.sql到新的mysql服务器上

1
2
scp /tmp/mysql_all_users_sql.sql user@192.168.1.123:/tmp/
回车,输入user的密码

2、导入到mysql库中

1
mysql -u root -p"你的密码" -S /tmp/mysql3306.sock < /tmp/mysql_all_users_sql.sql

3、使用导进来的用户测试登录和验证权限

 

至此,mysql中用户权限迁移完成。

 

posted @   MR__Wang  阅读(1338)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端
历史上的今天:
2020-08-12 python+rabbitMQ实现生产者和消费者模式
2020-08-12 RabbitMQ Connection Channel 详解
点击右上角即可分享
微信分享提示