MySQL中你可以使用SELECT...INTO OUTFILE语句来简单的导出数据到文本文件上。

使用 SELECT ... INTO OUTFILE 语句导出数据

以下实例中我们将数据表 cnblogs_tbl 数据导出到 /tmp/tutorials.txt 文件中:

mysql> SELECT * FROMcnblogs_tbl-> INTO OUTFILE '/tmp/tutorials.txt';

你可以通过命令选项来设置数据输出的指定格式,以下实例为导出 CSV 格式:

mysql> SELECT * FROM passwd INTO OUTFILE '/tmp/tutorials.txt'

-> FIELDS TERMINATED BY ',' ENCLOSED BY '"'

-> LINES TERMINATED BY '\r\n';

在下面的例子中,生成一个文件,各值用逗号隔开。这种格式可以被许多程序使用。

SELECT a,b,a+b INTO OUTFILE '/tmp/result.text'FIELDS TERMINATEDBY ',' OPTIONALLY ENCLOSED BY '"'LINES TERMINATEDBY '\n'

FROM test_table;

SELECT ... INTO OUTFILE 语句有以下属性:

LOAD DATA INFILE是SELECT ... INTO OUTFILE的逆操作,SELECT句法。为了将一个数据库的数据写入一个文件,使用SELECT ... INTO OUTFILE,为了将文件读回数据库,使用LOAD DATA INFILE。

SELECT...INTO OUTFILE 'file_name'形式的SELECT可以把被选择的行写入一个文件中。该文件被创建到服务器主机上,因此您必须拥有FILE权限,才能使用此语法。

输出不能是一个已存在的文件。防止文件数据被篡改。

你需要有一个登陆服务器的账号来检索文件。否则 SELECT ... INTO OUTFILE 不会起任何作用。

在UNIX中,该文件被创建后是可读的,权限由MySQL服务器所拥有。这意味着,虽然你就可以读取该文件,但可能无法将其删除。

导出表作为原始数据

mysqldump是mysql用于转存储数据库的实用程序。它主要产生一个SQL脚本,其中包含从头重新创建数据库所必需的命令CREATE TABLE INSERT等。

使用mysqldump导出数据需要使用 --tab 选项来指定导出文件指定的目录,该目标必须是可写的。

以下实例将数据表 cnblogs_tbl 导出到 /tmp 目录中:

$ mysqldump -u root -p --no-create-info \

--tab=/tmp cnblogs cnblogs_tbl

password ******

导出SQL格式的数据

导出SQL格式的数据到指定文件,如下所示:

$ mysqldump -u root -p cnblogs cnblogs_tbl > dump.txt

password ******

以上命令创建的文件内容如下:

--MySQL dump 8.23--

--Host: localhost Database: cnblogs-----------------------------------------------------------Server version 3.23.58

--

--Table structure for table `cnblogs_tbl`--

CREATE TABLEcnblogs_tbl (

cnblogs_idint(11) NOT NULLauto_increment,

cnblogs_titlevarchar(100) NOT NULL default '',

cnblogs_authorvarchar(40) NOT NULL default '',

submission_date datedefault NULL,PRIMARY KEY(cnblogs_id),UNIQUE KEYAUTHOR_INDEX (cnblogs_author)

) TYPE=MyISAM;--

--Dumping data for table `cnblogs_tbl`--

INSERT INTOcnblogs_tblVALUES (1,'Learn PHP','John Poul','2007-05-24');INSERT INTOcnblogs_tblVALUES (2,'Learn MySQL','Abdul S','2007-05-24');INSERT INTOcnblogs_tblVALUES (3,'JAVA Tutorial','Sanjay','2007-05-06');

如果你需要导出整个数据库的数据,可以使用以下命令:

$ mysqldump -u root -p cnblogs > database_dump.txt

password ******

如果需要备份所有数据库,可以使用以下命令:

$ mysqldump -u root -p --all-databases > database_dump.txt

password ******

--all-databases 选项在 MySQL 3.23.12 及以后版本加入。

该方法可用于实现数据库的备份策略。

将数据表及数据库拷贝至其他主机

如果你需要将数据拷贝至其他的 MySQL 服务器上, 你可以在 mysqldump 命令中指定数据库名及数据表。

在源主机上执行以下命令,将数据备份至 dump.txt 文件中:

$ mysqldump -u root -p database_name table_name > dump.txt

password *****

如果完整备份数据库,则无需使用特定的表名称。

如果你需要将备份的数据库导入到MySQL服务器中,可以使用以下命令,使用以下命令你需要确认数据库已经创建:

$ mysql -u root -p database_name < dump.txt

password *****

你也可以使用以下命令将导出的数据直接导入到远程的服务器上,但请确保两台服务器是相通的,是可以相互访问的:

$ mysqldump -u root -p database_name \

| mysql -h other-host.com database_name

以上命令中使用了管道来将导出的数据导入到指定的远程主机上。

mysql导出一行数据类型_MySQL 导出数据相关推荐

  1. mysql数据库表格数据类型_MYSQL数据库数据表字段类型含义解释

    MySQL数据表中的数据类型,它可以被分为3类:数字类型.日期和时间类型.字符串(字符)类型. 由MySQL支持的列类型列在下面.下列代码字母用于描述中: M :指出最大的显示尺寸.最大的合法的显示尺 ...

  2. mysql导出d盘_mysql 导出导入数据库

    一.导出数据库 1.进入MySQL目录下的bin文件夹 运行cmd :在窗口输入命令 d: 进入d盘:输入 cd Program Files\MySQL\MySQL Server 5.7\bin 命令 ...

  3. mysql导出文件名乱码_Mysql导出导入乱码问题解决

    MySQL从4.1版本开始才提出字符集的概念,所以对于MySQL4.0及其以下的版本,他们的字符集都是Latin1的,所以有时候需要对mysql的字符集进行一下转换,MySQL版本的升级.降级,特别是 ...

  4. mysql 中文的数据类型_mysql数据类型整理

    电脑的基本数据容量单位. 电脑的一个字节等于8位,也就是1byte=8bit. 字节是计算机信息技术用于计量存储容量的一种计量单位,也表示一些计算机编程语言中的数据类型和语言字符. bit中文名称是位 ...

  5. mysql查询修改数据类型_MySQL增删改查及数据类型

    1.配置文件的使用 配置文件需要放在 安装目录的根目录,bin同一级 文件名称:my.ini 内容和使用 cfg格式 即 section+option [mysqld] 分区服务器端配置 修改后需要重 ...

  6. mysql 导出csv命令_MySQL 导出数据到csv文件的命令

    1.MySQL导出本地数据库数据到本地文件mysql -A service_db -h your_host -utest -ptestmysqlgt; select * from t_apps whe ...

  7. mysql导出csv 命令_MySQL导出数据到csv文件的命令

    1.MySQL导出本地数据库数据到本地文件mysql -A service_db -h your_host -utest -ptestmysqlgt; select * from t_apps whe ...

  8. mysql 导出所有表_Mysql导出(多张表)表结构及表数据 mysqldump用法

    命令行下具体用法如下:  mysqldump -u用戶名 -p密码 -d 數據库名 表名 脚本名; 1.导出數據库為dbname的表结构(其中用戶名為root,密码為dbpasswd,生成的脚本名為d ...

  9. mysql 导出指定分隔符_mysql 导出行数据到txt文件,指定字符分割

    select id,name, concat('tel:',phone) from user order by time INTO outfile 'user.txt' FIELDS terminat ...

  10. c 添加mysql表单的一行数据类型_MySQL数据库基础

    安装mysql [root@ultraera ~]# yum install mysql mysql-server mysql-devel 2.启动mysql,并设置开机自启动 [root@ultra ...

最新文章

  1. 七个最流行的Python神经网络库
  2. Codeforces 432E Square Tiling(结构体+贪婪)
  3. 搜索功能:洞悉产品的绝佳入口
  4. 信息学奥赛一本通(C++)在线评测系统——基础(一)C++语言——1094:与7无关的数
  5. 从“学徒”(Apprentice III)看领导力(9-17集)
  6. You are running Composer with SSL/TLS protection disabled.
  7. java 十六进制转十进制_JAVA知识-分析JAVA中的重点和难点
  8. iOS 添加导航栏两侧按钮
  9. openpyxl 绘制饼形图_好享学丨快速上手Pythonmatplotlib 箱线图绘制,学术人必备
  10. 网站漏洞扫描工具_如何实现免费网站漏洞扫描?推荐一款神器给你
  11. 分治法在求解凸包问题中的应用(JAVA)--快包算法
  12. html真实雾效果图,HTML5 Canvas图片上云雾弥漫驱散特效
  13. Oracle导入大数据量(百万以上)dmp文件,报错ora-12592 :包错误
  14. Linux 基金会成立持续交付基金会
  15. 最大对称字符串的长度
  16. vue获取豆瓣图片资源,数据接口正常,图片无法显示,按右键能正常显示
  17. 泰格至尊版软件加密锁注册机
  18. 怎么样绘制简易地图,如何制作一个电子地图?
  19. word回车后间距太大_word 里字体变大后再回车,两行间距太大怎么办
  20. 光纤交换机配置zone

热门文章

  1. [转载] 七龙珠第一部——第077话 皮拉夫大作战
  2. spring AOP @Aspect,@pointcut的理解
  3. 2018年个人的一些简单预测
  4. JIRA中设置[描述]字段的默认值
  5. CentOS 7 忘记root密码的解决之道
  6. Vue.js-----轻量高效的MVVM框架(二、Vue.js的简单入门)
  7. [STL源码剖析]RB-tree的插入操作
  8. 每日小记2012.5.1
  9. java获取取得Timestamp类型的当前系统时间
  10. PowerTip of the Day-Removing Empty Things