mysql中某个字段的值导出到本地文件的方法。
1. mysqldump
在命令行中mysqldump database_name -uroot -p [table_name] > file_name

-d只导出数据结构,不导出数据

-t只导出数据不导出数据结构

2. SELECT 字段 FROM 表名 INTO OUTFILE 文件名

进入MySQL,然后 SELECT ...... INTO OUTFILE 'file_name';

mysql> SELECT name from 2009tianjin INTO OUTFILE './lll.sql';
ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv option so it cannot execute this statementmysql> SELECT @@global.secure_file_priv;
+---------------------------+
| @@global.secure_file_priv |
+---------------------------+
| /var/lib/mysql-files/ |
+---------------------------+
1 row in set (0.00 sec)
mysql> SELECT name from 2009tianjin INTO OUTFILE '/var/lib/mysql-files/lll.sql' ;
Query OK, 89 rows affected (0.06 sec)

然后在/var/lib/mysql-files目录下的lll.sql就是你导出来的数据,在Ubuntu下,你还cd不到这个目录,错误是这样的:

[email protected]:~$ cd /var/lib/mysql-files/
bash: cd: /var/lib/mysql-files/: 权限不够
[email protected]:~$ sudo cd /var/lib/mysql-files
sudo: cd:找不到命令
3. cd命令的使用和创建root账号

cd是shell自带的程序,而不是系统可执行程序命令,对于这种情况,可以使用sudo打开一个shell使用cd命令,或者使用su切换到root用户后再在shell中使用cd命令。

sudo 是一种程序,用于提升用户的权限,在linux中输入sudo就是调用这个程序提升权限;shell是一个命令解析器,sudo cd是错误的,因为cd是shell内置的,不是系统里面的,sudo可以运行系统带的命令,但无法用系统中一个软件中的命令。

这是bug!!!!

所以你可以这么干,申请一个root账号:

[email protected]:~$ sudo passwd root
输入新的 UNIX 密码:
重新输入新的 UNIX 密码:
passwd:已成功更新密码
[email protected]:~$ su root
密码:
[email protected]:/home/zz# cd /var/lib/mysql-files
[email protected]:/var/lib/mysql-files# ls
lll.sql
[email protected]:/var/lib/mysql-files# mv ./lll.sql /home/zz

本文数据库(mysql)相关术语:navicat for mysql mysql workbench mysql数据库 mysql 存储过程 mysql安装图解 mysql教程 mysql 管理工具

主题: SQLMySQL数据结构数据UbuntuLinuxUT数据库
分页:12
转载请注明
本文标题:将mysql中某个字段的值导出到本地文件的方法 mysql mysql数据库 mysql函数 mysqldump
本站链接:http://www.codesec.net/view/534972.html
分享请点击:


1.凡CodeSecTeam转载的文章,均出自其它媒体或其他官网介绍,目的在于传递更多的信息,并不代表本站赞同其观点和其真实性负责;
2.转载的文章仅代表原创作者观点,与本站无关。其原创性以及文中陈述文字和内容未经本站证实,本站对该文以及其中全部或者部分内容、文字的真实性、完整性、及时性,不作出任何保证或承若;
3.如本站转载稿涉及版权等问题,请作者及时联系本站,我们会及时处理。
登录后可拥有收藏文章、关注作者等权限...
技术大类 技术大类 | 数据库(mysql) | 评论(0) | 阅读(29)