当前位置: 首页 > wzjs >正文

工商注册网站模板西安seo外包公司

工商注册网站模板,西安seo外包公司,国家职业资格证书官网,短视频制作公司一、需求说明 需要将A数据库里面非系统的数据库账号和权限迁移到另外一台B数据库上,同时不能影响B数据库现有的用户和权限。 二、处理思路 我们不能盲目的将A数据库整个mysql数据库导出到B数据库进行覆盖。 我们需要做下面2个步骤: 将A数…

 

一、需求说明

需要将A数据库里面非系统的数据库账号和权限迁移到另外一台B数据库上,同时不能影响B数据库现有的用户和权限。

二、处理思路

我们不能盲目的将A数据库整个mysql数据库导出到B数据库进行覆盖。

我们需要做下面2个步骤:
将A数据库上非系统数据库账号的信息,导出成insert语句,在B数据库上执行
将A数据库上非系统数据库账号相关的权限,导出成grant语句,在B数据库上执行

二、具体操作

1.生成用户创建语句

导出mysql.user表,排除系统内置账号,添加条件,不需要删除drop和create创建表的语句,

我们只需要插入、

# 导出mysql user表  (排除系统账号)mysqldump -uroot -p --where=" user NOT IN ('root','mysql.infoschema','mysql.session','mysql.sys') " mysql user --no-create-info > /file/mysql_user_create.sql

 这里生成的mysql_user_create.sql文件,就是账号创建的SQL语句。

2.生成用户权限授权的语句

a.先获取mysql库中用户的列表信息 (排除系统账号)

# 获取mysql库中用户账号名称列表 输出到txt文件 (排除系统账号)mysql -B -N -uroot -p -e "SELECT CONCAT('\'', user,'\'@\'', host, '\'') FROM user WHERE user NOT IN ('root','mysql.infoschema','mysql.session','mysql.sys')" mysql > /file/mysql_users.txt

b.获取用户权限信息

根据每行的账号名称,查询账号对应的授权信息,输出到文件

# 根据每一行的账号名称,查询账号对应的授权信息while read line; do mysql -B -N -uroot -p -e "SHOW GRANTS FOR $line"; done < /file/mysql_users.txt > /file/mysql_user_prv.sql

c.每行结尾添加逗号作为结束符

# 每行结尾添加逗号作为结束符sed -i 's/$/;/' /tmp/mysql_all_users.sql

d.在最后一行增加 "flush privileges;" 来刷新权限

# 在最后一行增加 "flush privileges;" 来刷新权限echo "flush privileges;" >> /file/mysql_user_prv.sql

 这里生成的mysql_user_prv.sql文件,就是账号授权的SQL语句。

3.在B数据库上导入用户及权限

将上面处理过的sql脚本文件mysql_user_create.sql、mysql_user_prv.sql在目标mysql实例上执行

# 导入用户mysql -u root -p < mysql_user_create.sql# 导入用户权限mysql -u root -p < mysql_user_prv.sql

三、完整脚本

export_mysql_user_prv.sh

#!/bin/bash
# Export Mysql users and prv# mysql username
export username=root
# mysql password
export password=123456Abmkdir -p /file/# 导出mysql user表  (排除系统账号)mysqldump -u${username} -p${password} --where=" user NOT IN ('root','mysql.infoschema','mysql.session','mysql.sys') " mysql user --no-create-info > /file/mysql_user_create.sql# 获取mysql库中用户的列表信息 (排除系统账号)getuserlist.shmysql -B -N -u${username} -p${password} -e "SELECT CONCAT('\'', user,'\'@\'', host, '\'') FROM user WHERE user NOT IN ('root','mysql.infoschema','mysql.session','mysql.sys')" mysql > /file/mysql_users.txt# 获取用户权限信息while read line; do mysql -B -N -u${username} -p${password} -e "SHOW GRANTS FOR $line"; done < /file/mysql_users.txt > /file/mysql_user_prv.sql# 每行结尾添加逗号作为结束符sed -i 's/$/;/' /file/mysql_user_prv.sql# 在最后一行增加 "flush privileges;" 来刷新权限echo "flush privileges;" >> /file/mysql_user_prv.sql


 

 

http://www.dtcms.com/wzjs/535626.html

相关文章:

  • 做网站去哪里好重庆seo主管
  • 专业网站设计方案公司网站地图生成软件
  • 建设网站多久广东卫视你会怎么做网站
  • 自己做网站有什么意义怎么用ps做简单网站
  • html电影网站源码信息展示网站
  • 太原网站建设加q.479185700特价流量网站
  • apache 做网站目前还有阳性患者吗最新消息
  • 有专业做网站优化的吗苏州专业高端网站建设企业
  • 黄冈网站建设的方案模板兔自用WordPress
  • flash在线制作网站目前国内有哪些网站做家具回收
  • 淮北网站建设费用网站跳出率太高
  • 什么类型的产品可以做网站出口网站推广策划案格式及范文
  • 简单的企业网站网站建设连接到百度
  • 中英文双版网站怎么做吉林省舒兰市建设银行网站
  • 如何做网站的教程视频做视频网站要什么软件下载
  • 商水建设局网站怎样做网络推广链接
  • 未来 网站开发 知乎网站建设会遇到哪些问题
  • 长春网站建设4435江都网站制作
  • 昆明网站建设公司猫咪科技最火的网页游戏排行榜
  • 网站排名忽然不见了网站自动更新
  • 手机钓鱼网站免费制作帝国cms下载类网站怎么做
  • 易建筑友科技有限公司网站微信小程序平台登录入口
  • 淮安淮阴网站建设我为什么不建议年轻人做运营
  • 青海城乡与建设厅网站电子商务网站建设与管理课设
  • 电商网站卷烟订货流程郑州做网站易云巢
  • 网页设计制作个人网站思途旅游网站建设
  • 网络营销包括哪些内容seo公司seo教程
  • 宁波怎么做网站排名优化网站标识
  • 南通企业网站昆明网络推广怎么做
  • 网站开发 一般用什么语言电商设计培训学校