mysq将表数据导入文件并将文件从远程服务下载到本地

1,将mysql中某个表的数据导入到文件:

  首先,将要执行的sql写在一个后缀为“.sql”的文件(比如:sql20170720.sql,内容为:select * from db_deb.t_low where  create_time between "2017-06-19 00:00:00" and "2017-07-20 23:59:59" ;)。

  然后执行:mysql -h100.11.111.20 -Pabvf.--default-character-set=utf8 -A<sql20170720.sql>sxf_result01.txt

其中mysql -h100.11.111.11 -P4049 -uu -pp --default-character-set=utf8 -A表示数据库的链接(包含mysql的服务器地址,用户名,密码以及编码类型)

<sql20170720.sql>sxf_result01.txt表示要执行的sql文件,和最后将导出是数据保存到sxf_result01.txt中(此文件会自动在当前目录下生成,执行上边命令之后便可以在当前目录下看到)

  然而,当文件生成后,那该如何将在这个服务上的sxf_result01.txt文件下载到本地呢。

如果当前服务器上安装有又下载文件的软件那么直接使用sz即可将文件下载到本地。但是如果没有,那这就变得比较麻烦了。现在就来说一下本人遇到的一个问题,有a,b,c三个服务器,只有a上安装了可以下载文件的软件就是可以使用sz命令进行文件下载,但是a并不能直接连接到c,而是要通过b才能跳转到c(这是服务器设置的网关与网段的问题),所以现在就需要通过b将c中的文件下载到b服务,再通过a将b服务中的文件下载下来,最后才能通过a使用sz命令将文件下载到本地。

具体命令流程:1,在服务c中执行mysql -h100.11.111.20 -Pabvf.--default-character-set=utf8 -A<sql20170720.sql>sxf_result01.txt命令后,在c服务上便有了sxf_result01.txt;

2,在c服务上执行exit退出命令便进入了b服务,便能在b服务上执行“sftp 用户名@c服务地址”(sftp 用户名@地址:表示通过sftp连接c服务,b,c之间就可以进行文件传输了),再执行“get  sxf_result01.txt”(表示从c中将文件下载到b上),此时b服务器上就有了sxf_result01.txt文件了。同样的操作,将b中的文件下载到a上,a上便也有了此文件,再在a上执行“sz sxf_result01.txt ”,选择本地保存的路径,便可以将文件下载到本地了。

注意:如果文件比较大建议先压缩之后在进行传输(压缩命令:zip 文件名.ZIP  要压缩的文件。一般一百多兆的文件可以压缩到只有几兆),如果服务器使用的人比较多,最好对你的文件传输进行限速,不然被众矢之的了也是活该的。

时间: 2024-11-05 17:26:35

mysq将表数据导入文件并将文件从远程服务下载到本地的相关文章

Excel表数据导入Sql Server数据库中

Excel表数据导入Sql Server数据库的方法很多,这里只是介绍了其中一种: 1.首先,我们要先在test数据库中新建一个my_test表,该表具有三个字段tid int类型, tname nvarchar类型, tt nvarchar类型(注意:my_test表中的数据类型必须与Excel中相应字段的类型一致) 2. 我们用SELECT * FROM  OPENROWSET( 'Microsoft.Jet.OLEDB.4.0 ', 'Excel  5.0;DatabASE=[Excel表

Java版将EXCEL表数据导入到数据库中

1.采用第三方控件JXL实现 try { //实例化一个工作簿对象 Workbook workBook=Workbook.getWorkbook(new File("F://qzlx.xls")); //获取该工作表中的第一个工作表 Sheet sheet=workBook.getSheet(0); //获取该工作表的行数,以供下面循环使用 int rowSize=sheet.getRows(); for(int i=0;i<rowSize;i++) { //编号 String

Excel表数据导入数据库表中

***Excel表数据导入到数据库表中 通过数据库表的模板做成‘Excel’表的数据导入到数据库相应的表中(注意:主表 和 从表的关系,要先导‘主表’在导入从表) 过程:通过数据库的导入工具—先导入为一张临时表,在插入到正式表中.语句如下: --YK_TYPK插入数据 insert into YK_TYPK --插入'YK_TYPK(通用品库)'数据 select * from Sheet1$_TYPK_caoyao ---------------------------------------

EXCEL表数据导入到ORACLE数据库中

将EXCEL表导入ORACLE数据库中 一.建立表 1.建立表 2.查询表 select * from yy; 二.导入程序 在excel中找到需要导入的数据 2.将excel中的数据另存为文本文件(有制表符分割的) 3.在pl*sql中选择tools-->text importer,在出现的窗口中选择"Data from Textfile",然后再选择"Open data file", 在弹出的文件选择框中选中保存有数据的文本文件,此时将会看到data fr

Oracle数据导入、导出dmp文件

数据导出,命令exp,将远程数据库中的数据导入到本地,比如你在windows下可以将Linux中的数据库中数据导出到Windows本地. 1 将数据库TEST完全导出,用户名system 密码manager 导出到D:\daochu.dmp中,将Test数据库中所有数据导出到一个dmp文件中.前提是登录用户即system有导出权限.   exp system/manager@TEST file=d:\daochu.dmp full=y2 将数据库中system用户与sys用户的表导出,指定导出某

oracle表结构表数据导入导出

--------------------------------------imp/exp--------------------------------------------------------------------------- //导入表数据以及表结构 imp 用户名/密码@数据库名称 fromuser(文件的指定用户,即从那个用户导入数据)=用户名 touser(目标用户,即导入到当前登录的那个用户)=用户名 file=要导入的dmp文件位置 ignore=y(忽略错误创建) /

利用Sql实现将指定表数据导入到另一个数据库示例

因为工作中经常需要将数据从一个数据库导入到另一个数据库中,所以将这个功能写成一个存储过程,以方便调用.现在粘贴出来供大家参考: 注意:1,以下示例中用到了syscolumns,sysobjects等系统视图,在sql2005及以后的版本中,大家也可以使用sys.columns与sys.objects来代替,只要修改对应的字段即可.2,以下示例还用到了set identity_insert设置,有对该设置不太清楚的朋友可以点击链接查看其用法.3,结合sys.tables表与游标,大家可以循环调用以

把Excel表数据导入数据库

导入格式 //导入Excel(导入资产信息) private void button2_Click(object sender, EventArgs e) { OpenFileDialog openfilediaglog = new OpenFileDialog(); openfilediaglog.Filter = "xls文件|*.xls"; if (openfilediaglog.ShowDialog() == DialogResult.OK) { string str = Im

将excel表数据导入sqlserver2008R2 报错

错误信息: 正在复制到 [dbo].[Sheet1sss$] (错误)消息错误 0xc020901c: 数据流任务 1: 输出“Excel 源输出”(9) 上的 输出列“FDESC”(93) 出错.返回的列状态是:“文本被截断,或者一个或多个字符在目标代码页中没有匹配项.”. (SQL Server 导入和导出向导) 错误 0xc020902a: 数据流任务 1: “输出列“FDESC”(93)”由于发生截断而失败,而且针对“输出列“FDESC”(93)”的截断行处理设置指定截断时出错.在指定组