zoukankan      html  css  js  c++  java
  • mysql navcate longblob 查询结果导出倒入

    由于之前项目为了查询方便,且不受权限控制。所以把image储存在了数据库。但是也遇到了很多瓶颈问题。

    1,丢图从日志上查询获知,丢图95%以上是由于mysql的timeout时间失效引起的。(由于另一个pdf文件也此存储在mysql上面pdf频繁存储到数据库,占用连接。一个图片有时候可以有20-30m的大小,写一张图片耗费的时间还是比较长,所以引起丢图的现象)。

    2,图片预览特别不方面,必须借助navicat工具,而且查看特别费劲。

    3,数据恢复特别困难(如果没有备份的情况下,那就不用说)但是用navicat导出结构和数据以后,数据大了以后(10G)以后。导入不是内存溢出,就是导入失败(莫名的)

    4,导入导出部分数据困难。

    但是项目已经上了,要升级。也是一件很是痛苦的事情。但有时候不需要整张image表都导出。我只是看其中几条数据。然后恢复到另外一个电脑上。

    笨的办法就是利用navicat工具查询分析器,把需要的结果查询出来(单张表一定要查询*列),然后利用其导出功能把数据导出成.sql文件,如下图

    最后导出。在我的桌面上就多了一个abc.sql文件。

    这样就把一张大表的longblob字段的给导出了。但是这个文件也不小,100m-500m不等。这样导出的sql缺少一个表名。需要在每句insert 语句后面加上表名,但是编辑这样的文件也是一件极为痛苦的事情。

    通过bing查询得知,可以用mysql的load命令把这些内容导入指定的表名。

    把abc.sql文件复制到mysql要导入的数据库目录下。例如我要把abc.sql导入数据库aa库,那么在mysql的datadir目录中一定有个aa的目录。那么就把abc.sql复制到aa目录下。

    cmd进入mysql的bin目录,然后

    mysql -u root -p dbname;

    输入密码

    然后就可以用

    load data infile 'abc.sql' into table tablename;

    我的数据库版本是mysql v5.621

    其他版本没有试过。

  • 相关阅读:
    OO ALV-单击事件,双击事件,添加自定义按钮事件(EVENT)实例
    SWM0-Excel模板上载以及模板下载程序
    linux ubuntu安装Jupyter Notebook打开运行. ipynb文件
    主机ping不通ubuntu虚拟机的解决方法
    解决word中使用mathtype编辑的公式和正文不在一行的问题
    fis3实现前端网页实时刷新(自动刷新)
    解决代理服务器导致不能上网问题
    python常用函数总结
    使用python写机器学习算法遇到的问题
    windows---Apache环境搭建
  • 原文地址:https://www.cnblogs.com/Dtscal/p/5031038.html
Copyright © 2011-2022 走看看