侯体宗的博客
  • 首页
  • Hyperf版
  • beego仿版
  • 人生(杂谈)
  • 技术
  • 关于我
  • 更多分类
    • 文件下载
    • 文字修仙
    • 中国象棋ai
    • 群聊
    • 九宫格抽奖
    • 拼图
    • 消消乐
    • 相册

用SQL语句解决mysql导入大数据文件的问题

数据库  /  管理员 发布于 6年前   156

对于经常使用MYSQL的人来说,phpmyadmin是一个必备的工具。这个工具非常强大,几乎可以完成所有的数据库操作,但是它也有一个弱点,对于往远程服务器上导入较大的数据文件的时候会速度奇慢,甚至出现长期没有响应的情况。

为什么会出现这样的情况呢?当我们选择一个sql数据文件并提交的时候,服务器首先要先把文件上传到服务器,然后才会执行导入代码把数据导入到数据库。我们知道phpmyadmin是通过web方式上传的数据文件,而web方式上传是很不稳定的,尤其是网速慢的时候,这就是为什么我们会有那么多次在电脑前面苦苦等待而最终却没有结果的原因。

通过上面的分析,我们知道这个问题是出在web上传而非导入程序,所以如果能避免通过web上传这个问题就好办了。我们可能会想到那功能强大的ftp上传工具,可是phpmyadmin无法选择远程路服务器上的文件,这是很郁闷的。

这里我们要放弃phpmysqladmin,通过mysql语句来导入数据库。很多人会纳闷怎么来执行SQL语句,这是一个关键的问题,这需要你的空间支持SSH(Secure Shell Protocol),并且你还得会一些linux命令。

首先通过SSH登录到服务器(我用putty登录工具),通过一些简单的linux命令找到我们的sql文件,然后运行下面的代码:

mysql db_name < data_file.sql

执行完命令之后如果没有任何提示,则说明我们的数据已经导入成功了(注意文件格式是date_file.sql, sql.gz在中文下会出错) 。

―――――――C2008.12.9 update―――――――-

有些时候你可能会遇到错误信息,说你的权限不够,那我们就需要加一些参数了。

mysql -hlocalhost -uusername -p db_name < data_file.sql

这样回车之后,就会有输入密码的提示,然后输入你的数据库密码就可以导入了。

参数-h是指定导入的服务器,-u是数据库的用户名,-p是登录数据库的密码,这三个参数后面不用加空格。

―――――――C2008.12.9 update―――――――-

这是一个很好的办法,但是也不是所有的人都可以用这个方法的,因为前提是你的空间必须支持SSH登录,而支持SSH登录的空间还是比较少的,这真是挺让人遗憾的。

还有一个办法就是把phpmyadmin里面的import那个功能模块提取出来,稍微改动一下也可以达到相同的效果。当然如果你是一个PHP高手,也可以自己写一个导入的程序,可以直接选择一个服务器的路径,期待ing。。。


  • 上一条:
    mysql执行时间为负数的原因分析
    下一条:
    MySQL错误Specified key was too long; max key length is 1000 bytes的解决办法
  • 昵称:

    邮箱:

    0条评论 (评论内容有缓存机制,请悉知!)
    最新最热
    • 分类目录
    • 人生(杂谈)
    • 技术
    • linux
    • Java
    • php
    • 框架(架构)
    • 前端
    • ThinkPHP
    • 数据库
    • 微信(小程序)
    • Laravel
    • Redis
    • Docker
    • Go
    • swoole
    • Windows
    • Python
    • 苹果(mac/ios)
    • 相关文章
    • 分库分表的目的、优缺点及具体实现方式介绍(0个评论)
    • DevDB - 在 VS 代码中直接访问数据库(0个评论)
    • 在ubuntu系统中实现mysql数据存储目录迁移流程步骤(0个评论)
    • 在mysql中使用存储过程批量新增测试数据流程步骤(0个评论)
    • php+mysql数据库批量根据条件快速更新、连表更新sql实现(0个评论)
    • 近期文章
    • 在go语言中使用api.geonames.org接口实现根据国际邮政编码获取地址信息功能(1个评论)
    • 在go语言中使用github.com/signintech/gopdf实现生成pdf分页文件功能(0个评论)
    • gmail发邮件报错:534 5.7.9 Application-specific password required...解决方案(0个评论)
    • 欧盟关于强迫劳动的规定的官方举报渠道及官方举报网站(0个评论)
    • 在go语言中使用github.com/signintech/gopdf实现生成pdf文件功能(0个评论)
    • Laravel从Accel获得5700万美元A轮融资(0个评论)
    • 在go + gin中gorm实现指定搜索/区间搜索分页列表功能接口实例(0个评论)
    • 在go语言中实现IP/CIDR的ip和netmask互转及IP段形式互转及ip是否存在IP/CIDR(0个评论)
    • PHP 8.4 Alpha 1现已发布!(0个评论)
    • Laravel 11.15版本发布 - Eloquent Builder中添加的泛型(0个评论)
    • 近期评论
    • 122 在

      学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..
    • 123 在

      Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..
    • 原梓番博客 在

      在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..
    • 博主 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..
    • 1111 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
    • 2017-06
    • 2017-08
    • 2017-09
    • 2017-10
    • 2017-11
    • 2018-01
    • 2018-05
    • 2018-10
    • 2018-11
    • 2020-02
    • 2020-03
    • 2020-04
    • 2020-05
    • 2020-06
    • 2020-07
    • 2020-08
    • 2020-09
    • 2021-02
    • 2021-04
    • 2021-07
    • 2021-08
    • 2021-11
    • 2021-12
    • 2022-02
    • 2022-03
    • 2022-05
    • 2022-06
    • 2022-07
    • 2022-08
    • 2022-09
    • 2022-10
    • 2022-11
    • 2022-12
    • 2023-01
    • 2023-03
    • 2023-04
    • 2023-05
    • 2023-07
    • 2023-08
    • 2023-10
    • 2023-11
    • 2023-12
    • 2024-01
    • 2024-03
    Top

    Copyright·© 2019 侯体宗版权所有· 粤ICP备20027696号 PHP交流群

    侯体宗的博客