** 问题是这样的,使用mysqldump备份线上数据库之后,然后通过mysql 命令行恢复到线下数据库,发现视图都成了表。 **
为什么会这样呢?这就得聊聊mysql备份恢复的机制了
其实查看mysqldump备份产生的sql语句,会发现视图首先会恢复成表,之后再删除表,新建视图。

如下图,可以看到在15572行先创建了v_t_borrow_details表,然后在21322行创建了v_t_borrow_details视图

这样是为了避免依赖关系,比如有2个 VIEW: v_a, v_b
v_a 引用 v_b
如果先建 v_a ,那么它引用的 v_b 还没有创建,是建不成功的,而先把所有的 view 都弄成表先建一次,表是没有依赖的,都会创建成功,然后再逐个删除 view 和创建 view,这时候引用的东东都是以表或 view 的形式存在了,不会因为依赖的对象出问题。
而之所以视图会变成表了,那是因为在恢复过程中出错导致了恢复中断,后面的语句都skipping了。

-----------------------------------
著作权归作者所有:来自51CTO博客作者李永峰Billy的原创作品,请联系作者获取转载授权,否则将追究法律责任
使用mysql恢复数据时视图变成表
https://blog.51cto.com/billy98/2059406

使用mysql恢复数据时视图变成表 -九五小庞的更多相关文章

  1. mysql 恢复数据时中文乱码

    mysql恢复数据时中文乱码,解决办法. 用source命令导入mysql数据库怎么设置中文编码 1.导出数据时指定编码在导出mysql sql执行文件的时候,指定一下编码格式: mysqldump ...

  2. mysql数据库delete数据时不支持表别名!!!

    mysql数据库delete数据时不支持表别名!!! mysql delete时候 提示语法错误!如下sql: 去掉 表别名的时候: 正确的写法例如: DELETE FROM COMMENTS_REP ...

  3. mysql 查询数据时按照A-Z顺序排序返回结果集

    mysql 查询数据时按照A-Z顺序排序返回结果集 $sql = "SELECT * , ELT( INTERVAL( CONV( HEX( left( name, 1 ) ) , 16, ...

  4. mysql查询更新时的锁表机制分析

    为了给高并发情况下的mysql进行更好的优化,有必要了解一下mysql查询更新时的锁表机制. 一.概述 MySQL有三种锁的级别:页级.表级.行级.MyISAM和MEMORY存储引擎采用的是表级锁(t ...

  5. mysql查询更新时的锁表机制分析(只介绍了MYISAM)

    为了给高并发情况下的mysql进行更好的优化,有必要了解一下mysql查询更新时的锁表机制. 一.概述 MySQL有三种锁的级别:页级.表级.行级.MyISAM和MEMORY存储引擎采用的是表级锁(t ...

  6. mysql插入数据时,中文乱码

    MySQL 插入数据时,中文乱码问题的解决(转) 当向 MySQL 数据库插入一条带有中文的数据形如 insert into employee values(null,'张三','female','1 ...

  7. --mysql 导出数据时, 数字类型的列如果位数过长,变为科学计数法问题

    --mysql 导出数据时, 数字类型的列如果位数过长,变为科学计数法问题在字段前加上\t即可select concat('\t',a.IDCARD_NO) from xxx a

  8. (转)MySQL 插入数据时,中文乱码问题的解决

    MySQL 插入数据时,中文乱码问题的解决  原文:http://www.cnblogs.com/sunzn/archive/2013/03/14/2960248.html 当向 MySQL 数据库插 ...

  9. mysql数据库delete数据时不支持表别名

    今天在帮同事查看一条删除的SQL语句执行出错的问题 SQL语句如下: 1 DELETE FROM LEAD_SYSTEM_MENU_ORG_REF as t WHERE t.resourceid='4 ...

  10. 转】mysql数据库delete数据时不支持表别名

    原博文出自于: http://www.cnblogs.com/xdp-gacl/p/4012853.html 感谢! 今天在帮同事查看一条删除的SQL语句执行出错的问题 SQL语句如下: 1 DELE ...

随机推荐

  1. WO Mic - 免费麦克风

    WO Mic可以将您的手机变成电脑麦克风.您无需支付一分钱购买任何设备.如果您选择无线传输,它也是便携的.数百万用户已经安装并每天都在使用它进行通话.录音.语音遥控等活动. 三大组件协同工作以实现这一 ...

  2. 【代码】Android|获取存储权限并创建、存储文件

    版本:Android 11及以上,gradle 7.0以上,Android SDK > 29 获取存储权限 获取存储权限参考:Android 11 外部存储权限适配指南及方案,这篇文章直接翻到最 ...

  3. k8s之serviceaccount,登录账号创建

    kubectl  --> 认证 --->授权 -->准入控制 认证:证书 身份识别 授权:rbac  权限检查 准入控制:  补充授权机制 多个插件实现 只在创建 删除 修改 或做代 ...

  4. 操作系统:设备I/O -- 如何表示设备类型与设备驱动?

    计算机的结构 计算机结构示意图: 主板上的各种芯片并非独立存在,而是以总线为基础连接在一起的,各自完成自己的工作,又能相互打配合,共同实现用户要求的功能. 如何管理设备 前面的学习中宏,实现了管理内存 ...

  5. MACD、RSI、Boll以及分型指标的实现与回测

    对指标的实现 分为两部分: 信号的计算 实现信号算法 检测历史信号 保存到数据库 信号使用 提供查询接口 我们将信号的计算与回测分离开,将计算后的信号结果保存到数据库中,供回测时调用,模式图如下: 指 ...

  6. codeup之求圆周率pi的近似值

    Description 用如下公式 求圆周率PI的近似值,直到发现某一项的绝对值小于10-6为止(该项不累加). 要求输出的结果总宽度占10位,其中小数部分为8位. 程序中使用浮点型数据时,请定义为双 ...

  7. .NET外挂系列:5. harmony 中补丁参数的有趣玩法(下)

    一:背景 1. 讲故事 开局一张表,故事全靠编,为了能够承上启下,先把参数列表放出来. 参数名 说明 __instance 访问非静态方法的实例(类似 this). __result 获取/修改返回值 ...

  8. docker 发布netcore webapi

    新建项目testapi 新建Dockerfile 文件 FROM mcr.microsoft.com/dotnet/core/aspnet:2.2-nanoserver-1809 AS base WO ...

  9. MySQL建表时,五种日期和时间类型选择

      MySQl中有多种表示日期和时间的数据类型.其中YEAR表示年份,DATE表示日期,TIME表示时间,DATETIME和TIMESTAMP表示日期和实践.它们的对比如下: 日期时间类型 占用空间 ...

  10. WAAP对提升网站访问速度有什么作用?

    本文分享自天翼云开发者社区<WAAP对提升网站访问速度有什么作用?>,作者:amber WAAP(Web Application and API Protection)对提升网站访问速度具 ...