前言:
目前各位老铁们对“linuxmysql数据库导出命令”都比较看重,咱们都想要知道一些“linuxmysql数据库导出命令”的相关文章。那么小编同时在网摘上网罗了一些有关“linuxmysql数据库导出命令””的相关文章,希望咱们能喜欢,朋友们快快来了解一下吧!在日常的开发中,我们经常需要从数据库中导出数据。对于那种有图形化操作的,我们导出数据是非常方便的。比如SQLyog、Navicat这些工具可以直接将查询的结果导出。在这里我就不作介绍了,下面我们主要来说说在命令行模式下怎么将查询结果导出到文件。
本文中的操作环境:mysql5.6+CentOS6.6
下面给介绍一种简单的方式:
在命令行模式下执行:sql语句+into outfile +'/文件路径/文件名' + 编码方式(可选)
例如:
select * from test into outfile '/home/test.csv'; 下面我们看下执行结果:
你会发现 ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv option so it cannot execute this statement 这种错误了。出现这种情况,应该是mysql设置的权限,我们可以通过执行 show variables like '%secure%'; 查看当前的--secure-file-priv 值是什么。
这个时候,我们可以通过mysql安装路径下的my.ini配置文件,将secure_file_priv 的值改为/home/,但这种方式需求重启mysql服务,生产环境不允许我们这样操作。于是我们就将导出的文件目录指定到/var/lib/mysql-files/下,再来看执行效果:
下面我去目标路径下查看是否真的已经生成了文件:
可以看出已经生成了文件。
至此,我们的导出工作结束。
ps:如果目标路径下已经存在相同的文件名,则导出失败。导出的文件格式可以是.csv/.xls/.txt的。导出的文件内容如果乱码可以在语句后面加上CHARACTER SET utf8(gbk)等。
标签: #linuxmysql数据库导出命令 #shell导出mysql查询结果到csv文件 #cmd重启mysql服务 #mysqldos导出数据库表 #mysql命令行导出数据库